Renato Golin b451f4e376 Improve handling of stack accesses in Thumb-1
Thumb-1 only allows SP-based LDR and STR to be word-sized, and SP-base LDR,
STR, and ADD only allow offsets that are a multiple of 4. Make some changes
to better make use of these instructions:

* Use word loads for anyext byte and halfword loads from the stack.
* Enforce 4-byte alignment on objects accessed in this way, to ensure that
  the offset is valid.
* Do the same for objects whose frame index is used, in order to avoid having
  to use more than one ADD to generate the frame index.
* Correct how many bits of offset we think AddrModeT1_s has.

Patch by John Brawn.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@230496 91177308-0d34-0410-b5e6-96231b3b80d8
2015-02-25 14:41:06 +00:00
..
2013-05-20 08:01:34 +00:00
2014-04-03 17:35:22 +00:00
2014-01-29 11:50:56 +00:00
2014-05-12 22:13:07 +00:00
2014-09-02 22:45:13 +00:00
2014-02-16 07:31:05 +00:00
2014-08-26 12:47:26 +00:00
2014-11-14 22:45:23 +00:00
2015-01-14 22:27:36 +00:00
2014-01-29 11:50:56 +00:00
2014-01-29 11:50:56 +00:00
2014-01-29 11:50:56 +00:00
2014-04-25 17:51:25 +00:00
2014-11-17 14:08:57 +00:00
2014-04-03 17:35:22 +00:00
2014-04-03 17:35:22 +00:00
2014-12-04 19:34:50 +00:00
2014-09-02 22:46:18 +00:00
2014-11-03 17:38:00 +00:00
2014-08-20 10:40:20 +00:00
2014-04-03 17:35:22 +00:00
2014-04-03 17:35:22 +00:00
2015-01-19 15:16:06 +00:00
2014-04-03 17:35:22 +00:00
2014-04-23 01:09:29 +00:00
2014-01-24 17:20:08 +00:00
2014-09-23 23:18:01 +00:00
2013-09-04 21:23:23 +00:00
2014-12-22 13:29:46 +00:00
2013-07-18 13:17:26 +00:00
2014-12-09 21:25:00 +00:00
2014-12-09 21:25:00 +00:00