llvm-6502/test/CodeGen/ARM
Eli Friedman 6b7bb42c36 Mark a few Thumb instructions commutable; just happened to spot this
while experimenting.  I'm reasonably sure this is correct, but please 
tell me if these instructions have some strange property which makes this
change unsafe.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73746 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-19 01:43:08 +00:00
..
2006-11-10-CycleInDAG.ll Remove llvm-upgrade. 2008-02-17 20:02:20 +00:00
2007-01-19-InfiniteLoop.ll Split the Add, Sub, and Mul instruction opcodes into separate 2009-06-04 22:49:04 +00:00
2007-01-31-RegInfoAssert.ll
2007-02-02-JoinIntervalsCrash.ll
2007-03-06-AddR7.ll
2007-03-07-CombinerCrash.ll
2007-03-13-InstrSched.ll Expand GEPs in ScalarEvolution expressions. SCEV expressions can now 2009-04-16 03:18:22 +00:00
2007-03-21-JoinIntervalsCrash.ll
2007-03-26-RegScavengerAssert.ll
2007-03-27-RegScavengerAssert.ll
2007-03-30-RegScavengerAssert.ll
2007-04-02-RegScavengerAssert.ll
2007-04-03-PEIBug.ll
2007-04-03-UndefinedSymbol.ll
2007-04-30-CombinerCrash.ll
2007-05-03-BadPostIndexedLd.ll
2007-05-05-InvalidPushPop.ll
2007-05-07-jumptoentry.ll
2007-05-07-tailmerge-1.ll Testcases for PR1628. 2007-09-05 11:53:04 +00:00
2007-05-09-tailmerge-2.ll Testcases for PR1628. 2007-09-05 11:53:04 +00:00
2007-05-14-InlineAsmCstCrash.ll
2007-05-14-RegScavengerAssert.ll
2007-05-22-tailmerge-3.ll Testcases for PR1628. 2007-09-05 11:53:04 +00:00
2007-05-23-BadPreIndexedStore.ll
2007-05-31-RegScavengerInfiniteLoop.ll
2007-08-15-ReuseBug.ll This check is unnecessary, and getting rid of it removes a use of -disable-correct-folding. 2008-08-05 17:52:54 +00:00
2008-02-04-LocalRegAllocBug.ll It's PR1925, not PR1609. 2008-02-06 22:07:17 +00:00
2008-02-29-RegAllocLocal.ll DCE'ed this testcase. 2008-02-29 19:28:11 +00:00
2008-03-05-SxtInRegBug.ll Constant fold SIGN_EXTEND_INREG with ashr not lshr. 2008-03-06 08:20:51 +00:00
2008-03-07-RegScavengerAssert.ll Fixed a register scavenger bug. If a def is re-defining part of a super register, there must be an implicit def of the super-register on the MI. 2008-03-07 20:12:54 +00:00
2008-04-04-ScavengerAssert.ll New test. 2008-04-10 23:49:09 +00:00
2008-04-10-ScavengerAssert.ll New test. 2008-04-10 23:49:09 +00:00
2008-04-11-PHIofImpDef.ll If a PHI node has a single implicit_def source, replace it with an implicit_def instead of a copy. 2008-04-11 17:54:45 +00:00
2008-05-19-LiveIntervalsBug.ll Don't spill dead def. 2008-05-20 08:10:37 +00:00
2008-05-19-ScavengerAssert.ll More local spiller complexity! 2008-05-20 08:13:21 +00:00
2008-07-17-Fdiv.ll Softfloat support for FDIV. Patch by 2008-07-18 21:18:48 +00:00
2008-07-24-CodeGenPrepCrash.ll Teach ARM isLegalAddressingMode to handle unknown type without crashing. This fixes pr2589. 2008-07-25 00:55:17 +00:00
2008-08-07-AsmPrintBug.ll Clean up some ARM GV asm printing out; minor fixes to match what gcc does. 2008-12-06 02:00:55 +00:00
2008-09-14-CoaleserBug.ll Correctly update kill infos after extending a live range and merge 2 val#'s; fix 56165 - do not mark val# copy field if the copy does not define the val#. 2008-09-15 06:28:41 +00:00
2008-09-17-CoalescerBug.ll Unallocatable registers do not have live intervals. 2008-09-17 18:36:25 +00:00
2008-11-18-ScavengerAssert.ll Register scavenger should process early clobber defs first. A dead early clobber def should not interfere with a normal def which happens one slot later. 2008-11-18 22:28:38 +00:00
2008-11-19-ScavengerAssert.ll Changing allocation ordering from r3 ... r0 back to r0 ... r3. The order change no longer make sense after the coalescing changes we have made since then. 2009-06-05 19:08:58 +00:00
2009-02-16-SpillerBug.ll A couple of places where reused use operands should be marked kill. This is exposed by recent availability fallthrough changes. 2009-02-17 06:41:03 +00:00
2009-02-22-SoftenFloatVaArg.ll move a target-specific test into its directory so it isn't run if you 2009-04-10 23:58:38 +00:00
2009-02-27-SpillerBug.ll Split the Add, Sub, and Mul instruction opcodes into separate 2009-06-04 22:49:04 +00:00
2009-03-07-SpillerBug.ll Split the Add, Sub, and Mul instruction opcodes into separate 2009-06-04 22:49:04 +00:00
2009-03-09-AddrModeBug.ll ARM isLegalAddressImmediate should check if type is a simple type now that optimizer can create values of funky scalar types. 2009-03-09 19:15:00 +00:00
2009-04-06-AsmModifier.ll Use the output of the asm so the optimizer won't 2009-04-14 01:51:40 +00:00
2009-04-08-AggregateAddr.ll Add testcase for PR3795. 2009-04-08 18:00:55 +00:00
2009-04-08-FloatUndef.ll Split the Add, Sub, and Mul instruction opcodes into separate 2009-06-04 22:49:04 +00:00
2009-04-08-FREM.ll Soft float support for FREM. 2009-04-08 16:20:57 +00:00
2009-04-09-RegScavengerAsm.ll Fix pr3954. The register scavenger asserts for inline assembly with 2009-04-09 17:16:43 +00:00
2009-05-05-DAGCombineBug.ll Do not use register as base ptr of pre- and post- inc/dec load / store nodes. 2009-05-06 18:25:01 +00:00
2009-05-07-RegAllocLocal.ll Fix pr4100. Do not remove no-op copies when they are dead. The register 2009-05-07 23:47:03 +00:00
2009-05-11-CodePlacementCrash.ll Fix pr4195: When iterating through predecessor blocks, break out of the loop 2009-05-12 03:48:10 +00:00
2009-05-18-InlineAsmMem.ll Fix pr4091: Add support for "m" constraint in ARM inline assembly. 2009-05-19 05:53:42 +00:00
2009-06-04-MissingLiveIn.ll A value defined by an implicit_def can be liven to a use BB. This is unfortunate. But register allocator still has to add it to the live-in set of the use BB. 2009-06-04 20:25:48 +00:00
2009-06-12-RegScavengerAssert.ll If killed register is defined by implicit_def, do not clear it since it's live range may overlap another def of same register. 2009-06-12 21:34:26 +00:00
2009-06-15-RegScavengerAssert.ll If a val# is defined by an implicit_def and it is being removed, all of the copies off the val# were removed. This causes problem later since the scavenger will see uses of registers without defs. The proper solution is to change the copies into implicit_def's instead. 2009-06-16 07:12:58 +00:00
2009-06-18-ThumbCommuteMul.ll Mark a few Thumb instructions commutable; just happened to spot this 2009-06-19 01:43:08 +00:00
addrmode.ll
aliases.ll Convert tests using "grep -c ... | grep ..." to use the count script. 2007-08-15 13:49:33 +00:00
align.ll Remove llvm-upgrade. 2008-02-17 20:02:20 +00:00
alloca.ll Remove llvm-upgrade. 2008-02-17 20:02:20 +00:00
argaddr.ll Remove llvm-upgrade. 2008-02-17 20:02:20 +00:00
arguments2.ll Use CallConvLower.h and TableGen descriptions of the calling conventions 2009-04-17 19:07:39 +00:00
arguments3.ll Use CallConvLower.h and TableGen descriptions of the calling conventions 2009-04-17 19:07:39 +00:00
arguments4.ll Use CallConvLower.h and TableGen descriptions of the calling conventions 2009-04-17 19:07:39 +00:00
arguments5.ll Use CallConvLower.h and TableGen descriptions of the calling conventions 2009-04-17 19:07:39 +00:00
arguments6.ll Use CallConvLower.h and TableGen descriptions of the calling conventions 2009-04-17 19:07:39 +00:00
arguments7.ll Use CallConvLower.h and TableGen descriptions of the calling conventions 2009-04-17 19:07:39 +00:00
arguments8.ll Use CallConvLower.h and TableGen descriptions of the calling conventions 2009-04-17 19:07:39 +00:00
arguments_f64_backfill.ll Add testcase for register scanveger assertion fix in r72755 2009-06-08 22:54:15 +00:00
arguments-nosplit-double.ll Fix pr4058 and pr4059. Do not split i64 or double arguments between r3 and 2009-05-19 10:02:36 +00:00
arguments-nosplit-i64.ll Fix pr4058 and pr4059. Do not split i64 or double arguments between r3 and 2009-05-19 10:02:36 +00:00
arguments.ll Convert tests using "| wc -l | grep ..." to use the count script. 2007-08-15 13:36:28 +00:00
arm-asm.ll Remove llvm-upgrade. 2008-02-17 20:02:20 +00:00
arm-negative-stride.ll Add nounwind to a few tests. 2009-05-18 15:16:49 +00:00
bits.ll Convert tests using "| wc -l | grep ..." to use the count script. 2007-08-15 13:36:28 +00:00
branch.ll Remove llvm-upgrade. 2008-02-17 20:02:20 +00:00
bx_fold.ll
call_nolink.ll
call.ll Remove llvm-upgrade. 2008-02-17 20:02:20 +00:00
clz.ll Remove llvm-upgrade. 2008-02-17 20:02:20 +00:00
compare-call.ll Remove llvm-upgrade. 2008-02-17 20:02:20 +00:00
constants.ll Do not emit comments unless -asm-verbose. 2009-03-24 00:17:40 +00:00
cse-libcalls.ll Split the Add, Sub, and Mul instruction opcodes into separate 2009-06-04 22:49:04 +00:00
ctors_dtors.ll Remove llvm-upgrade. 2008-02-17 20:02:20 +00:00
dg.exp sabre brings to my attention that the 'tr' suffix is also obsolete 2008-05-20 21:00:03 +00:00
div.ll Remove llvm-upgrade. 2008-02-17 20:02:20 +00:00
dyn-stackalloc.ll
extloadi1.ll Remove llvm-upgrade. 2008-02-17 20:02:20 +00:00
fcopysign.ll Convert tests using "| wc -l | grep ..." to use the count script. 2007-08-15 13:36:28 +00:00
fixunsdfdi.ll Split the Add, Sub, and Mul instruction opcodes into separate 2009-06-04 22:49:04 +00:00
fmdrr-fmrrd.ll commit testcase I forgot to svn add. 2007-11-27 22:43:37 +00:00
fnmul.ll Split the Add, Sub, and Mul instruction opcodes into separate 2009-06-04 22:49:04 +00:00
formal.ll Use CallConvLower.h and TableGen descriptions of the calling conventions 2009-04-17 19:07:39 +00:00
fp.ll Remove llvm-upgrade. 2008-02-17 20:02:20 +00:00
fparith.ll Split the Add, Sub, and Mul instruction opcodes into separate 2009-06-04 22:49:04 +00:00
fpcmp_ueq.ll
fpcmp.ll Remove llvm-upgrade. 2008-02-17 20:02:20 +00:00
fpconv.ll More soft fp fixes. 2008-04-01 02:18:22 +00:00
fpmem.ll Split the Add, Sub, and Mul instruction opcodes into separate 2009-06-04 22:49:04 +00:00
fpow.ll Implement function notes as function attributes. 2008-09-26 23:51:19 +00:00
fpowi.ll Implement FPOWI ExpandOp. 2007-08-15 22:13:27 +00:00
fptoint.ll Convert tests using "| wc -l | grep ..." to use the count script. 2007-08-15 13:36:28 +00:00
frame_thumb.ll
hello.ll Convert tests using "| wc -l | grep ..." to use the count script. 2007-08-15 13:36:28 +00:00
hidden-vis-2.ll Clean up some ARM GV asm printing out; minor fixes to match what gcc does. 2008-12-06 02:00:55 +00:00
hidden-vis-3.ll Clean up some ARM GV asm printing out; minor fixes to match what gcc does. 2008-12-06 02:00:55 +00:00
hidden-vis.ll Clean up some ARM GV asm printing out; minor fixes to match what gcc does. 2008-12-06 02:00:55 +00:00
iabs.ll
ifcvt1.ll -enable-arm-if-conversion is gone. 2007-09-20 18:03:23 +00:00
ifcvt2.ll -enable-arm-if-conversion is gone. 2007-09-20 18:03:23 +00:00
ifcvt3.ll -enable-arm-if-conversion is gone. 2007-09-20 18:03:23 +00:00
ifcvt4.ll -enable-arm-if-conversion is gone. 2007-09-20 18:03:23 +00:00
ifcvt5.ll -enable-arm-if-conversion is gone. 2007-09-20 18:03:23 +00:00
ifcvt6.ll -enable-arm-if-conversion is gone. 2007-09-20 18:03:23 +00:00
ifcvt7.ll -enable-arm-if-conversion is gone. 2007-09-20 18:03:23 +00:00
ifcvt8.ll -enable-arm-if-conversion is gone. 2007-09-20 18:03:23 +00:00
ifcvt9.ll ifcvt should ignore cfg where true and false successors are the same. 2009-06-15 21:24:34 +00:00
illegal-vector-bitcast.ll Split the Add, Sub, and Mul instruction opcodes into separate 2009-06-04 22:49:04 +00:00
imm.ll Remove llvm-upgrade. 2008-02-17 20:02:20 +00:00
inlineasm2.ll
inlineasm-imm-arm.ll Fix PR3862: Recognize some ARM-specific constraints for immediates in inline 2009-04-01 17:58:54 +00:00
inlineasm-imm-thumb.ll Fix PR3862: Recognize some ARM-specific constraints for immediates in inline 2009-04-01 17:58:54 +00:00
inlineasm.ll
insn-sched1.ll Remove llvm-upgrade. 2008-02-17 20:02:20 +00:00
ispositive.ll
large-stack.ll Convert tests using "| wc -l | grep ..." to use the count script. 2007-08-15 13:36:28 +00:00
ldm.ll Remove llvm-upgrade. 2008-02-17 20:02:20 +00:00
ldr_ext.ll Convert tests using "| wc -l | grep ..." to use the count script. 2007-08-15 13:36:28 +00:00
ldr_frame.ll Convert tests using "| wc -l | grep ..." to use the count script. 2007-08-15 13:36:28 +00:00
ldr_post.ll Remove llvm-upgrade. 2008-02-17 20:02:20 +00:00
ldr_pre.ll Remove llvm-upgrade. 2008-02-17 20:02:20 +00:00
ldr.ll Remove llvm-upgrade. 2008-02-17 20:02:20 +00:00
ldrd.ll Part 1. 2009-06-15 08:28:29 +00:00
load-global.ll Convert tests using "| wc -l | grep ..." to use the count script. 2007-08-15 13:36:28 +00:00
load.ll Remove llvm-upgrade. 2008-02-17 20:02:20 +00:00
long_shift.ll Convert tests using "| wc -l | grep ..." to use the count script. 2007-08-15 13:36:28 +00:00
long-setcc.ll Convert tests using "| wc -l | grep ..." to use the count script. 2007-08-15 13:36:28 +00:00
long.ll Do not emit comments unless -asm-verbose. 2009-03-24 00:17:40 +00:00
lsr-code-insertion.ll Mark some pattern-less instructions as neverHasSideEffects. 2009-06-12 20:46:18 +00:00
lsr-scale-addr-mode.ll Changing allocation ordering from r3 ... r0 back to r0 ... r3. The order change no longer make sense after the coalescing changes we have made since then. 2009-06-05 19:08:58 +00:00
mem.ll Remove llvm-upgrade. 2008-02-17 20:02:20 +00:00
memcpy-inline.ll Changing allocation ordering from r3 ... r0 back to r0 ... r3. The order change no longer make sense after the coalescing changes we have made since then. 2009-06-05 19:08:58 +00:00
memfunc.ll Remove llvm-upgrade. 2008-02-17 20:02:20 +00:00
mul.ll Convert tests using "| wc -l | grep ..." to use the count script. 2007-08-15 13:36:28 +00:00
mulhi.ll Remove llvm-upgrade. 2008-02-17 20:02:20 +00:00
mvn.ll Remove llvm-upgrade. 2008-02-17 20:02:20 +00:00
pack.ll Remove llvm-upgrade. 2008-02-17 20:02:20 +00:00
pr3502.ll If a use operand is marked isKill, don't forget to add kill to its live interval as well. 2009-02-22 08:35:56 +00:00
private.ll Add the private linkage. 2009-01-15 20:18:42 +00:00
remat.ll Turn on machine LICM in non-fast mode. 2009-02-05 08:46:33 +00:00
ret0.ll Remove llvm-upgrade. 2008-02-17 20:02:20 +00:00
ret_arg1.ll Remove llvm-upgrade. 2008-02-17 20:02:20 +00:00
ret_arg2.ll Remove llvm-upgrade. 2008-02-17 20:02:20 +00:00
ret_arg3.ll Remove llvm-upgrade. 2008-02-17 20:02:20 +00:00
ret_arg4.ll Remove llvm-upgrade. 2008-02-17 20:02:20 +00:00
ret_arg5.ll Remove llvm-upgrade. 2008-02-17 20:02:20 +00:00
ret_f32_arg2.ll Use CallConvLower.h and TableGen descriptions of the calling conventions 2009-04-17 19:07:39 +00:00
ret_f32_arg5.ll Use CallConvLower.h and TableGen descriptions of the calling conventions 2009-04-17 19:07:39 +00:00
ret_f64_arg2.ll Use CallConvLower.h and TableGen descriptions of the calling conventions 2009-04-17 19:07:39 +00:00
ret_f64_arg_reg_split.ll Use CallConvLower.h and TableGen descriptions of the calling conventions 2009-04-17 19:07:39 +00:00
ret_f64_arg_split.ll Use CallConvLower.h and TableGen descriptions of the calling conventions 2009-04-17 19:07:39 +00:00
ret_f64_arg_stack.ll Use CallConvLower.h and TableGen descriptions of the calling conventions 2009-04-17 19:07:39 +00:00
ret_i64_arg2.ll Use CallConvLower.h and TableGen descriptions of the calling conventions 2009-04-17 19:07:39 +00:00
ret_i64_arg3.ll Use CallConvLower.h and TableGen descriptions of the calling conventions 2009-04-17 19:07:39 +00:00
ret_i64_arg_split.ll Use CallConvLower.h and TableGen descriptions of the calling conventions 2009-04-17 19:07:39 +00:00
ret_i128_arg2.ll Rename file to have the correct suffix. 2009-04-17 20:40:20 +00:00
ret_void.ll Remove llvm-upgrade. 2008-02-17 20:02:20 +00:00
rev.ll Remove llvm-upgrade. 2008-02-17 20:02:20 +00:00
section.ll Print section flags ok on platforms, which use '@' as comment string. Fix test. 2008-08-07 09:55:06 +00:00
select_xform.ll add no-unwind, remove duplicate run line. 2009-03-12 05:56:37 +00:00
select.ll Convert tests using "| wc -l | grep ..." to use the count script. 2007-08-15 13:36:28 +00:00
shifter_operand.ll Remove llvm-upgrade. 2008-02-17 20:02:20 +00:00
smul.ll Remove llvm-upgrade. 2008-02-17 20:02:20 +00:00
stack-frame.ll Convert tests using "| wc -l | grep ..." to use the count script. 2007-08-15 13:36:28 +00:00
stm.ll Add a ARM specific pre-allocation pass that re-schedule loads / stores from 2009-06-13 09:12:55 +00:00
str_post.ll Remove llvm-upgrade. 2008-02-17 20:02:20 +00:00
str_pre-2.ll Re-apply 72756 with fixes. One of those was introduced by we changed MachineInstrBuilder::addReg() interface. 2009-06-04 01:15:28 +00:00
str_pre.ll Remove llvm-upgrade. 2008-02-17 20:02:20 +00:00
str_trunc.ll Remove llvm-upgrade. 2008-02-17 20:02:20 +00:00
sxt_rot.ll Convert tests using "| wc -l | grep ..." to use the count script. 2007-08-15 13:36:28 +00:00
thread_pointer.ll [ARM] Implement __builtin_thread_pointer. 2007-11-08 17:20:05 +00:00
thumb2-add.ll Initial support for some Thumb2 instructions. 2009-06-17 18:13:58 +00:00
thumb2-mov2.ll Initial support for some Thumb2 instructions. 2009-06-17 18:13:58 +00:00
thumb2-mov.ll Initial support for some Thumb2 instructions. 2009-06-17 18:13:58 +00:00
thumb2-shifter.ll Initial support for some Thumb2 instructions. 2009-06-17 18:13:58 +00:00
thumb-imm.ll
tls1.ll
tls2.ll
tls3.ll [ARM] Fix code generation for: 2007-11-05 18:33:37 +00:00
trunc_ldr.ll Convert tests using "| wc -l | grep ..." to use the count script. 2007-08-15 13:36:28 +00:00
truncstore-dag-combine.ll new testcase 2007-10-13 06:56:18 +00:00
tst_teq.ll
uint64tof64.ll Actually ARM / Mac OS X does have UINTTOFP_I64_F{64|32} libcalls. 2008-11-04 22:19:55 +00:00
unaligned_load_store.ll Convert tests using "grep -c ... | grep ..." to use the count script. 2007-08-15 13:49:33 +00:00
unord.ll Convert tests using "| wc -l | grep ..." to use the count script. 2007-08-15 13:36:28 +00:00
uxt_rot.ll Convert tests using "| wc -l | grep ..." to use the count script. 2007-08-15 13:36:28 +00:00
uxtb.ll Recognize triplets starting with armv5-, armv6- etc. And set the ARM arch version accordingly. 2009-03-08 04:02:49 +00:00
vargs2.ll Make the test target-neutral 2009-06-16 20:25:25 +00:00
vargs_align.ll Convert tests using "| wc -l | grep ..." to use the count script. 2007-08-15 13:36:28 +00:00
vargs.ll Remove llvm-upgrade. 2008-02-17 20:02:20 +00:00
vfp.ll Split the Add, Sub, and Mul instruction opcodes into separate 2009-06-04 22:49:04 +00:00
weak2.ll
weak.ll Remove llvm-upgrade. 2008-02-17 20:02:20 +00:00