llvm-6502/test/CodeGen/Thumb2
Evan Cheng 586f69a118 - Teach LSR to avoid changing cmp iv stride if it will create an immediate that
cannot be folded into target cmp instruction.
- Avoid a phase ordering issue where early cmp optimization would prevent the
  later count-to-zero optimization.
- Add missing checks which could cause LSR to reuse stride that does not have
  users.
- Fix a bug in count-to-zero optimization code which failed to find the pre-inc
  iv's phi node.
- Remove, tighten, loosen some incorrect checks disable valid transformations.
- Quite a bit of code clean up.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86969 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-12 07:35:05 +00:00
..
2009-07-17-CrossRegClassCopy.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
2009-07-21-ISelBug.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
2009-07-23-CPIslandBug.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
2009-07-30-PEICrash.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
2009-08-01-WrongLDRBOpc.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
2009-08-02-CoalescerBug.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
2009-08-04-CoalescerAssert.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
2009-08-04-CoalescerBug.ll Remove neonfp attribute and instead set default based on CPU string. Add -arm-use-neon-fp to override the default. 2009-10-01 22:19:57 +00:00
2009-08-04-ScavengerAssert.ll Remove neonfp attribute and instead set default based on CPU string. Add -arm-use-neon-fp to override the default. 2009-10-01 22:19:57 +00:00
2009-08-04-SubregLoweringBug2.ll Remove neonfp attribute and instead set default based on CPU string. Add -arm-use-neon-fp to override the default. 2009-10-01 22:19:57 +00:00
2009-08-04-SubregLoweringBug3.ll Remove neonfp attribute and instead set default based on CPU string. Add -arm-use-neon-fp to override the default. 2009-10-01 22:19:57 +00:00
2009-08-04-SubregLoweringBug.ll Fix PR5367. QPR_8 is the super regclass of DPR_8 and SPR_8. 2009-11-03 05:52:54 +00:00
2009-08-06-SpDecBug.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
2009-08-07-CoalescerBug.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
2009-08-07-NeonFPBug.ll Remove neonfp attribute and instead set default based on CPU string. Add -arm-use-neon-fp to override the default. 2009-10-01 22:19:57 +00:00
2009-08-08-ScavengerAssert.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
2009-08-10-ISelBug.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
2009-09-28-ITBlockBug.ll - Add pseudo instructions tLDRpci_pic and t2LDRpci_pic which does a pc-relative 2009-11-06 23:52:48 +00:00
2009-10-15-ITBlockBranch.ll Branches must be the last instruction in a Thumb2 IT block. Approved by Evan Cheng. 2009-10-15 22:25:32 +00:00
2009-11-01-CopyReg2RegBug.ll Unbreak ARMBaseRegisterInfo::copyRegToReg. 2009-11-02 04:44:55 +00:00
carry.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
cross-rc-coalescing-1.ll Add a couple of ARM cross-rc coalescing tests. 2009-10-25 08:01:41 +00:00
cross-rc-coalescing-2.ll Use Unified Assembly Syntax for the ARM backend. 2009-11-09 00:11:35 +00:00
dg.exp We should run these tests as well. 2009-06-24 21:36:26 +00:00
frameless2.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
frameless.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
large-stack.ll Update test 2009-11-09 22:59:01 +00:00
ldr-str-imm12.ll Make use of imm12 version of Thumb2 ldr / str instructions more aggressively. 2009-11-01 21:12:51 +00:00
load-global.ll Fix a broken test. 2009-11-06 23:06:42 +00:00
lsr-deficiency.ll - Teach LSR to avoid changing cmp iv stride if it will create an immediate that 2009-11-12 07:35:05 +00:00
machine-licm.ll Refactor code. Fix a potential missing check. Teach isIdentical() about tLDRpci_pic. 2009-11-07 04:04:34 +00:00
mul_const.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
pic-load.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
thumb2-adc.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
thumb2-add2.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
thumb2-add3.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
thumb2-add4.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
thumb2-add5.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
thumb2-add6.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
thumb2-add.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
thumb2-and2.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
thumb2-and.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
thumb2-asr2.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
thumb2-asr.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
thumb2-bcc.ll Fix tests. 2009-11-01 18:13:29 +00:00
thumb2-bfc.ll Fix Thumb2 failures by converting them to FileCheck. 2009-10-27 06:31:02 +00:00
thumb2-bic.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
thumb2-branch.ll Force triple; darwin's ASM syntax differs from linux's. 2009-10-31 19:54:06 +00:00
thumb2-call.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
thumb2-cbnz.ll Add support for tail duplication to BranchFolding, and extend 2009-11-11 19:48:59 +00:00
thumb2-clz.ll Fix Thumb2 failures by converting them to FileCheck. 2009-10-27 06:31:02 +00:00
thumb2-cmn2.ll Fix Thumb2 failures by converting them to FileCheck. 2009-10-27 06:31:02 +00:00
thumb2-cmn.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
thumb2-cmp2.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
thumb2-cmp.ll Cast MO.getImm() to unsigned before comparing with an unsigned limit. 2009-09-09 06:05:16 +00:00
thumb2-eor2.ll Fix Thumb2 failures by converting them to FileCheck. 2009-10-27 06:31:02 +00:00
thumb2-eor.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
thumb2-ifcvt1.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
thumb2-ifcvt2.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
thumb2-ifcvt3.ll Add support for tail duplication to BranchFolding, and extend 2009-11-11 19:48:59 +00:00
thumb2-jtb.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
thumb2-ldm.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
thumb2-ldr_ext.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
thumb2-ldr_post.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
thumb2-ldr_pre.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
thumb2-ldr.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
thumb2-ldrb.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
thumb2-ldrd.ll Enable pre-regalloc load / store multiple pass for Thumb2. 2009-09-27 09:46:04 +00:00
thumb2-ldrh.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
thumb2-lsl2.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
thumb2-lsl.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
thumb2-lsr2.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
thumb2-lsr3.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
thumb2-lsr.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
thumb2-mla.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
thumb2-mls.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
thumb2-mov.ll Consolidate test files 2009-10-31 22:20:56 +00:00
thumb2-mul.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
thumb2-mulhi.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
thumb2-mvn2.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
thumb2-mvn.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
thumb2-neg.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
thumb2-orn2.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
thumb2-orn.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
thumb2-orr2.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
thumb2-orr.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
thumb2-pack.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
thumb2-rev16.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
thumb2-rev.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
thumb2-ror2.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
thumb2-ror.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
thumb2-rsb2.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
thumb2-rsb.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
thumb2-sbc.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
thumb2-select_xform.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
thumb2-select.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
thumb2-shifter.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
thumb2-smla.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
thumb2-smul.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
thumb2-spill-q.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
thumb2-str_post.ll Fix Thumb2 failures by converting them to FileCheck. 2009-10-27 06:31:02 +00:00
thumb2-str_pre.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
thumb2-str.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
thumb2-strb.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
thumb2-strh.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
thumb2-sub2.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
thumb2-sub4.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
thumb2-sub5.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
thumb2-sub.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
thumb2-sxt_rot.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
thumb2-tbb.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
thumb2-tbh.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
thumb2-teq2.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
thumb2-teq.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
thumb2-tst2.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
thumb2-tst.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
thumb2-uxt_rot.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
thumb2-uxtb.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
tls1.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00
tls2.ll Eliminate more uses of llvm-as and llvm-dis. 2009-09-09 00:09:15 +00:00