1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-23 19:23:23 +01:00
llvm-mirror/test/CodeGen/Thumb
Renato Golin e3109d3bbd 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.

llvm-svn: 230496
2015-02-25 14:41:06 +00:00
..
2007-01-31-RegInfoAssert.ll
2007-02-02-JoinIntervalsCrash.ll
2007-05-05-InvalidPushPop.ll
2009-06-18-ThumbCommuteMul.ll ARM: yet another round of ARM test clean ups 2014-04-03 23:47:24 +00:00
2009-07-20-TwoAddrBug.ll
2009-07-27-PEIAssert.ll
2009-08-12-ConstIslandAssert.ll
2009-08-12-RegInfoAssert.ll
2009-08-20-ISelBug.ll Mass update to CodeGen tests to use CHECK-LABEL for labels corresponding to function definitions for more informative error messages. No functionality change and all updated tests passed locally. 2013-07-14 06:24:09 +00:00
2009-12-17-pre-regalloc-taildup.ll
2010-06-18-SibCallCrash.ll ARM: yet another round of ARM test clean ups 2014-04-03 23:47:24 +00:00
2010-07-01-FuncAlign.ll
2010-07-15-debugOrdering.ll IR: Move MDLocation into place 2015-01-14 22:27:36 +00:00
2011-05-11-DAGLegalizer.ll
2011-06-16-NoGPRs.ll
2011-EpilogueBug.ll
2012-04-26-M0ISelBug.ll Improve logic that decides if its profitable to commute when some of the virtual registers involved have uses/defs chains connecting them to physical register. Fix up the tests that this change improves. 2014-11-05 06:43:02 +00:00
2014-06-10-thumb1-ldst-opt-bug.ll [Thumb] Make load/store optimizer less conservative. 2014-09-24 16:35:50 +00:00
asmprinter-bug.ll
barrier.ll ARM: yet another round of ARM test clean ups 2014-04-03 23:47:24 +00:00
copy_thumb.ll Lower thumbv4t & thumbv5 lo->lo copies through a push-pop sequence 2014-08-20 23:38:50 +00:00
cortex-m0-unaligned-access.ll ARM: cortex-m0 doesn't support unaligned memory access. 2014-04-02 19:28:13 +00:00
DbgValueOtherTargets.test ARM: yet another round of ARM test clean ups 2014-04-03 23:47:24 +00:00
dyn-stackalloc.ll [Thumb] Make load/store optimizer less conservative. 2014-09-24 16:35:50 +00:00
fastcc.ll IR: Make metadata typeless in assembly 2014-12-15 19:07:53 +00:00
fpconv.ll ARM: yet another round of ARM test clean ups 2014-04-03 23:47:24 +00:00
fpow.ll ARM: yet another round of ARM test clean ups 2014-04-03 23:47:24 +00:00
frame_thumb.ll
iabs.ll Re-add support to llvm-objdump for Mach-O universal files and archives with -macho 2014-12-04 23:56:27 +00:00
inlineasm-imm-thumb.ll ARM: yet another round of ARM test clean ups 2014-04-03 23:47:24 +00:00
inlineasm-thumb.ll [ARM, inline-asm] Fix ARMTargetLowering::getRegForInlineAsmConstraint to return 2014-11-03 20:37:04 +00:00
ispositive.ll ARM: yet another round of ARM test clean ups 2014-04-03 23:47:24 +00:00
large-stack.ll [Thumb1] Re-write emitThumbRegPlusImmediate 2014-11-17 11:18:10 +00:00
ldm-merge-call.ll ARM: Fix and re-enable load/store optimizer for Thumb1. 2014-08-15 17:00:30 +00:00
ldm-merge-struct.ll ARM: Fix and re-enable load/store optimizer for Thumb1. 2014-08-15 17:00:30 +00:00
ldm-stm-base-materialization.ll Thumb1 load/store optimizer: Improve code to materialize new base register. 2014-08-21 17:11:03 +00:00
ldr_ext.ll ARM: yet another round of ARM test clean ups 2014-04-03 23:47:24 +00:00
ldr_frame.ll ARM: yet another round of ARM test clean ups 2014-04-03 23:47:24 +00:00
lit.local.cfg Reduce verbiage of lit.local.cfg files 2014-06-09 22:42:55 +00:00
long_shift.ll ARM: yet another round of ARM test clean ups 2014-04-03 23:47:24 +00:00
long-setcc.ll ARM: yet another round of ARM test clean ups 2014-04-03 23:47:24 +00:00
long.ll ARM: yet another round of ARM test clean ups 2014-04-03 23:47:24 +00:00
mature-mc-support.ll Add triples to try to fix the windows bots. 2014-02-13 16:49:47 +00:00
mul.ll ARM: yet another round of ARM test clean ups 2014-04-03 23:47:24 +00:00
pop.ll ARM / x86_64 varargs: Don't save regparms in prologue without va_start 2014-08-22 21:59:26 +00:00
PR17309.ll 17309 ARM backend incorrectly lowers COPY_STRUCT_BYVAL_I32 for thumb1 targets 2013-10-17 19:52:05 +00:00
push.ll Mass update to CodeGen tests to use CHECK-LABEL for labels corresponding to function definitions for more informative error messages. No functionality change and all updated tests passed locally. 2013-07-14 06:24:09 +00:00
rev.ll ARM: yet another round of ARM test clean ups 2014-04-03 23:47:24 +00:00
segmented-stacks-dynamic.ll Move the segmented stack switch to a function attribute 2014-04-10 22:58:43 +00:00
segmented-stacks.ll Segmented stacks: omit __morestack call when there's no frame. 2014-05-22 13:03:43 +00:00
select.ll Mass update to CodeGen tests to use CHECK-LABEL for labels corresponding to function definitions for more informative error messages. No functionality change and all updated tests passed locally. 2013-07-14 06:24:09 +00:00
sjljehprepare-lower-vector.ll CodeGen: Stop treating vectors as aggregates 2014-01-21 22:46:46 +00:00
stack_guard_remat.ll [ARM] In dynamic-no-pic mode, ARM's post-RA pseudo expansion was incorrectly 2014-08-02 05:40:40 +00:00
stack-access.ll Improve handling of stack accesses in Thumb-1 2015-02-25 14:41:06 +00:00
stack-coloring-without-frame-ptr.ll ARM: yet another round of ARM test clean ups 2014-04-03 23:47:24 +00:00
stack-frame.ll Make this test not match its own filename, when being run from a path that includes the string 'add'. 2014-04-15 22:29:32 +00:00
stm-merge.ll Improve handling of stack accesses in Thumb-1 2015-02-25 14:41:06 +00:00
thumb-imm.ll ARM: yet another round of ARM test clean ups 2014-04-03 23:47:24 +00:00
thumb-ldm.ll Thumb1 load/store optimizer: Improve code to materialize new base register. 2014-08-21 17:11:03 +00:00
thumb-memcpy-ldm-stm.ll [Thumb] Make load/store optimizer less conservative. 2014-09-24 16:35:50 +00:00
trap.ll ARM: yet another round of ARM test clean ups 2014-04-03 23:47:24 +00:00
triple.ll Correctly handle the degenerated triple "thumb". 2013-12-18 21:29:44 +00:00
tst_teq.ll ARM: yet another round of ARM test clean ups 2014-04-03 23:47:24 +00:00
unord.ll Fix broken CHECK lines. 2014-01-11 21:06:00 +00:00
vargs.ll Improve handling of stack accesses in Thumb-1 2015-02-25 14:41:06 +00:00