llvm-6502/test/CodeGen/ARM
Dan Gohman ae3a0be92e Split the Add, Sub, and Mul instruction opcodes into separate
integer and floating-point opcodes, introducing
FAdd, FSub, and FMul.

For now, the AsmParser, BitcodeReader, and IRBuilder all preserve
backwards compatability, and the Core LLVM APIs preserve backwards
compatibility for IR producers. Most front-ends won't need to change
immediately.

This implements the first step of the plan outlined here:
http://nondot.org/sabre/LLVMNotes/IntegerOverflow.txt


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72897 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-04 22:49:04 +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 -march=arm -enable-thumb => -march=thumb 2007-02-23 03:15:39 +00:00
2007-02-02-JoinIntervalsCrash.ll -march=arm -enable-thumb => -march=thumb 2007-02-23 03:15:39 +00:00
2007-03-06-AddR7.ll For PR1553: 2007-07-19 23:13:04 +00:00
2007-03-07-CombinerCrash.ll For PR1258: 2007-03-19 18:27:35 +00:00
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 Remove use of implementation keyword. 2007-03-28 02:38:26 +00:00
2007-03-26-RegScavengerAssert.ll For PR1553: 2007-07-19 23:13:04 +00:00
2007-03-27-RegScavengerAssert.ll Remove use of implementation keyword. 2007-03-28 02:38:26 +00:00
2007-03-30-RegScavengerAssert.ll Test case for PR1279 (part 2). 2007-03-30 20:15:22 +00:00
2007-04-02-RegScavengerAssert.ll New test case. 2007-04-02 18:47:13 +00:00
2007-04-03-PEIBug.ll For PR1319: 2007-04-16 17:36:08 +00:00
2007-04-03-UndefinedSymbol.ll For PR1319: 2007-04-16 17:36:08 +00:00
2007-04-30-CombinerCrash.ll Test a dag combiner crasher. 2007-05-01 00:40:38 +00:00
2007-05-03-BadPostIndexedLd.ll For PR1553: 2007-07-19 23:13:04 +00:00
2007-05-05-InvalidPushPop.ll Fix PR1390. 2007-05-05 23:44:41 +00:00
2007-05-07-jumptoentry.ll testcase for CodeGenPrepare bug fixed yesterday 2007-05-08 17:44:36 +00:00
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 testcase that crashes llc 2007-05-15 01:13:42 +00:00
2007-05-14-RegScavengerAssert.ll Test for PR1406. 2007-05-14 21:12:43 +00:00
2007-05-22-tailmerge-3.ll Testcases for PR1628. 2007-09-05 11:53:04 +00:00
2007-05-23-BadPreIndexedStore.ll Add a new test case. 2007-05-24 02:31:15 +00:00
2007-05-31-RegScavengerInfiniteLoop.ll Add a test for PR1424. 2007-05-31 18:36:07 +00:00
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 Previously, RecursivelyDeleteDeadInstructions provided an option 2009-05-02 18:29:22 +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
addrmode.ll For PR1319: 2007-04-16 15:15:52 +00:00
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-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 Fix test case. 2007-03-08 19:27:32 +00:00
call_nolink.ll For PR1319: 2007-04-16 17:36:08 +00:00
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 For PR1319: 2007-04-16 17:36:08 +00:00
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 For PR1319: 2007-04-16 17:36:08 +00:00
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 In Thumb mode, the frame register must be R7. 2007-04-27 17:58:03 +00:00
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 For PR1319: 2007-04-16 15:15:52 +00:00
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
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 New asm test case. 2007-04-04 00:15:17 +00:00
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 update syntax 2007-04-28 06:03:12 +00:00
insn-sched1.ll Remove llvm-upgrade. 2008-02-17 20:02:20 +00:00
ispositive.ll For PR1370: 2007-04-30 05:11:58 +00:00
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
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 Re-enable machine sinking pass now that the coalescer bugs and the AnalyzeBrnach bug are fixed. 2009-02-09 08:45:39 +00:00
lsr-scale-addr-mode.ll Add nounwind to a few tests. 2009-05-18 15:16:49 +00:00
mem.ll Remove llvm-upgrade. 2008-02-17 20:02:20 +00:00
memcpy-inline.ll Fix PR3457: Ignore control successors when looking for closest scheduled successor. A control successor doesn't read result(s) produced by the scheduling unit being evaluated. 2009-02-10 08:30:11 +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
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
thumb-imm.ll For PR1319: Upgrade to use new test harness 2007-04-15 19:11:47 +00:00
tls1.ll fix the test tls1. 2007-04-27 21:23:17 +00:00
tls2.ll add TLS tests. 2007-04-27 21:08:48 +00:00
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 For PR1319: Upgrade to use new test harness 2007-04-15 19:11:47 +00:00
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 Remove llvm-upgrade. 2008-02-17 20:02:20 +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 remember to emit weak reference in one more case. 2007-04-25 14:50:40 +00:00
weak.ll Remove llvm-upgrade. 2008-02-17 20:02:20 +00:00