llvm-6502/test/CodeGen/ARM
Bob Wilson 8bb9e48752 Add support for ARM Neon VREV instructions.
Patch by Anton Korzh, with some modifications from me.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77101 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-26 00:39:34 +00:00
..
2006-11-10-CycleInDAG.ll
2007-01-19-InfiniteLoop.ll
2007-03-07-CombinerCrash.ll
2007-03-13-InstrSched.ll For Darwin on ARMv6 and newer, make register r9 available for use as a 2009-06-22 21:01:46 +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-07-jumptoentry.ll
2007-05-07-tailmerge-1.ll
2007-05-09-tailmerge-2.ll
2007-05-14-InlineAsmCstCrash.ll
2007-05-14-RegScavengerAssert.ll
2007-05-22-tailmerge-3.ll
2007-05-23-BadPreIndexedStore.ll
2007-05-31-RegScavengerInfiniteLoop.ll
2007-08-15-ReuseBug.ll
2008-02-04-LocalRegAllocBug.ll
2008-02-29-RegAllocLocal.ll
2008-03-05-SxtInRegBug.ll
2008-03-07-RegScavengerAssert.ll
2008-04-04-ScavengerAssert.ll
2008-04-10-ScavengerAssert.ll
2008-04-11-PHIofImpDef.ll
2008-05-19-LiveIntervalsBug.ll
2008-05-19-ScavengerAssert.ll
2008-07-17-Fdiv.ll
2008-07-24-CodeGenPrepCrash.ll
2008-08-07-AsmPrintBug.ll
2008-09-14-CoalescerBug.ll It's coalescer, not coaleser. 2009-06-22 21:09:17 +00:00
2008-09-17-CoalescerBug.ll
2008-11-18-ScavengerAssert.ll
2008-11-19-ScavengerAssert.ll
2009-02-16-SpillerBug.ll
2009-02-22-SoftenFloatVaArg.ll
2009-02-27-SpillerBug.ll
2009-03-07-SpillerBug.ll
2009-03-09-AddrModeBug.ll
2009-04-06-AsmModifier.ll
2009-04-08-AggregateAddr.ll
2009-04-08-FloatUndef.ll
2009-04-08-FREM.ll
2009-04-09-RegScavengerAsm.ll
2009-05-05-DAGCombineBug.ll
2009-05-07-RegAllocLocal.ll
2009-05-11-CodePlacementCrash.ll
2009-05-18-InlineAsmMem.ll
2009-06-02-ISelCrash.ll Add support for ARM's Advanced SIMD (NEON) instruction set. 2009-06-22 23:27:02 +00:00
2009-06-04-MissingLiveIn.ll
2009-06-12-RegScavengerAssert.ll
2009-06-15-RegScavengerAssert.ll
2009-06-19-RegScavengerAssert.ll Fix PR4419: handle defs of partial uses. 2009-06-20 04:34:51 +00:00
2009-06-22-CoalescerBug.ll Fix another register coalescer crash: forgot to check if the instruction being updated has already been coalesced. 2009-06-22 20:49:32 +00:00
2009-06-30-RegScavengerAssert2.ll Temporarily restore the scavenger implicit_def checking code. MachineOperand isUndef mark is not being put on implicit_def of physical registers (created for parameter passing, etc.). 2009-06-30 09:19:42 +00:00
2009-06-30-RegScavengerAssert3.ll Handle IMPLICIT_DEF with isUndef operand marker, part 2. This patch moves the code to annotate machineoperands to LiveIntervalAnalysis. It also add markers for implicit_def that define physical registers. The rest, is just a lot of details. 2009-07-01 01:59:31 +00:00
2009-06-30-RegScavengerAssert4.ll Handle IMPLICIT_DEF with isUndef operand marker, part 2. This patch moves the code to annotate machineoperands to LiveIntervalAnalysis. It also add markers for implicit_def that define physical registers. The rest, is just a lot of details. 2009-07-01 01:59:31 +00:00
2009-06-30-RegScavengerAssert5.ll Remove special handling of implicit_def. Fix a couple more bugs in liveintervalanalysis and coalescer handling of implicit_def. 2009-07-01 08:19:36 +00:00
2009-06-30-RegScavengerAssert.ll Add a bit IsUndef to MachineOperand. This indicates the def / use register operand is defined by an implicit_def. That means it can def / use any register and passes (e.g. register scavenger) can feel free to ignore them. 2009-06-30 08:49:04 +00:00
2009-07-01-CommuteBug.ll CommuteChangesDestination() should check if to-be-commuted instruction defines any register. Also teaches the default commuteInstruction() to commute instruction without definitions (e.g. X86::test / ARM::tsp). 2009-07-01 08:29:08 +00:00
2009-07-09-asm-p-constraint.ll Handle 'a' modifier on inline assembly operands. 2009-07-09 23:54:51 +00:00
2009-07-18-RewriterBug.ll Forgot this test earlier. 2009-07-20 21:46:42 +00:00
2009-07-22-ScavengerAssert.ll Ignore undef uses. 2009-07-22 21:51:42 +00:00
2009-07-22-SchedulerAssert.ll Use getTargetConstant instead of getConstant since it's meant as an constant operand. 2009-07-22 22:03:29 +00:00
addrmode.ll
aliases.ll
align.ll
alloca.ll
argaddr.ll
arguments2.ll
arguments3.ll Use CallConvLower.h and TableGen descriptions of the calling conventions 2009-04-17 19:07:39 +00:00
arguments4.ll
arguments5.ll
arguments6.ll
arguments7.ll
arguments8.ll
arguments_f64_backfill.ll
arguments-nosplit-double.ll
arguments-nosplit-i64.ll
arguments.ll
arm-asm.ll
arm-frameaddr.ll hasFP should return true if frame address is taken. 2009-06-22 18:38:48 +00:00
arm-negative-stride.ll
bfc.ll Add bfc to armv6t2. 2009-07-06 22:23:46 +00:00
bic.ll ORN and BIC tests. 2009-06-26 16:20:06 +00:00
bits.ll
branch.ll
bx_fold.ll
call_nolink.ll
call.ll
carry.ll Select ADC, SBC, and RSC instead of the ADCS, SBCS, and RSCS when the carry bit def is not used. 2009-06-25 23:34:10 +00:00
clz.ll
compare-call.ll
constants.ll
cse-libcalls.ll
ctors_dtors.ll
dg.exp
div.ll
dyn-stackalloc.ll Move thumb and thumb2 tests into separate directories. 2009-06-24 06:36:07 +00:00
extloadi1.ll
fcopysign.ll
fixunsdfdi.ll
fmdrr-fmrrd.ll
fnmul.ll
formal.ll
fp.ll
fparith.ll
fpcmp_ueq.ll
fpcmp.ll
fpconv.ll Move thumb and thumb2 tests into separate directories. 2009-06-24 06:36:07 +00:00
fpmem.ll
fpow.ll Move thumb and thumb2 tests into separate directories. 2009-06-24 06:36:07 +00:00
fpowi.ll
fptoint.ll
hello.ll
hidden-vis-2.ll
hidden-vis-3.ll
hidden-vis.ll
iabs.ll Move thumb and thumb2 tests into separate directories. 2009-06-24 06:36:07 +00:00
ifcvt1.ll
ifcvt2.ll
ifcvt3.ll
ifcvt4.ll
ifcvt5.ll
ifcvt6.ll
ifcvt7.ll
ifcvt8.ll
ifcvt9.ll
illegal-vector-bitcast.ll Remove a bogus assertion. 2009-07-10 00:23:48 +00:00
imm.ll
inlineasm2.ll
inlineasm-imm-arm.ll
inlineasm.ll
insn-sched1.ll
ispositive.ll Move thumb and thumb2 tests into separate directories. 2009-06-24 06:36:07 +00:00
large-stack.ll Move thumb and thumb2 tests into separate directories. 2009-06-24 06:36:07 +00:00
ldm.ll
ldr_ext.ll Move thumb and thumb2 tests into separate directories. 2009-06-24 06:36:07 +00:00
ldr_frame.ll Move thumb and thumb2 tests into separate directories. 2009-06-24 06:36:07 +00:00
ldr_post.ll
ldr_pre.ll
ldr.ll Implement Thumb2 ldr. 2009-06-29 07:51:04 +00:00
ldrd.ll Enable arm pre-allocation load / store multiple optimization pass. 2009-06-19 23:17:27 +00:00
load-global.ll
load.ll
long_shift.ll Move thumb and thumb2 tests into separate directories. 2009-06-24 06:36:07 +00:00
long-setcc.ll Move thumb and thumb2 tests into separate directories. 2009-06-24 06:36:07 +00:00
long.ll Move thumb and thumb2 tests into separate directories. 2009-06-24 06:36:07 +00:00
lsr-code-insertion.ll Improved tracking of value number kills. VN kills are now represented 2009-07-09 03:57:02 +00:00
lsr-scale-addr-mode.ll
mem.ll
memcpy-inline.ll
memfunc.ll
mls.ll Added ARM::mls for armv6t2. 2009-07-06 22:05:45 +00:00
mul_const.ll Fix ARM isle code that optimize multiply by constants which are power-of-2 +/- 1. 2009-07-21 00:31:12 +00:00
mul.ll Move thumb and thumb2 tests into separate directories. 2009-06-24 06:36:07 +00:00
mulhi.ll
mvn.ll
neon_arith1.ll Add support for ARM's Advanced SIMD (NEON) instruction set. 2009-06-22 23:27:02 +00:00
neon_ld1.ll Add support for ARM's Advanced SIMD (NEON) instruction set. 2009-06-22 23:27:02 +00:00
neon_ld2.ll Add support for ARM's Advanced SIMD (NEON) instruction set. 2009-06-22 23:27:02 +00:00
pack.ll
pr3502.ll
private.ll
remat.ll
ret0.ll
ret_arg1.ll
ret_arg2.ll
ret_arg3.ll
ret_arg4.ll
ret_arg5.ll
ret_f32_arg2.ll
ret_f32_arg5.ll
ret_f64_arg2.ll
ret_f64_arg_reg_split.ll
ret_f64_arg_split.ll
ret_f64_arg_stack.ll
ret_i64_arg2.ll
ret_i64_arg3.ll
ret_i64_arg_split.ll
ret_i128_arg2.ll
ret_void.ll
rev.ll
section.ll
select_xform.ll
select.ll Move thumb and thumb2 tests into separate directories. 2009-06-24 06:36:07 +00:00
shifter_operand.ll
smul.ll
stack-frame.ll Move thumb and thumb2 tests into separate directories. 2009-06-24 06:36:07 +00:00
stm.ll Enable arm pre-allocation load / store multiple optimization pass. 2009-06-19 23:17:27 +00:00
str_post.ll
str_pre-2.ll
str_pre.ll
str_trunc.ll
stubs.ll fix an arm codegen bug (the same as PR4482 on ppc) where available_externally 2009-07-15 04:12:33 +00:00
sxt_rot.ll Add thumb2 sign / zero extend with rotate instructions. 2009-07-03 01:43:10 +00:00
thread_pointer.ll
tls1.ll
tls2.ll
tls3.ll
trunc_ldr.ll
truncstore-dag-combine.ll
tst_teq.ll Move thumb and thumb2 tests into separate directories. 2009-06-24 06:36:07 +00:00
uint64tof64.ll
unaligned_load_store.ll
unord.ll Move thumb and thumb2 tests into separate directories. 2009-06-24 06:36:07 +00:00
uxt_rot.ll
uxtb.ll
vaba.ll Add support for ARM's Advanced SIMD (NEON) instruction set. 2009-06-22 23:27:02 +00:00
vabal.ll Add support for ARM's Advanced SIMD (NEON) instruction set. 2009-06-22 23:27:02 +00:00
vabd.ll Add support for ARM's Advanced SIMD (NEON) instruction set. 2009-06-22 23:27:02 +00:00
vabdl.ll Add support for ARM's Advanced SIMD (NEON) instruction set. 2009-06-22 23:27:02 +00:00
vabs.ll Add support for ARM's Advanced SIMD (NEON) instruction set. 2009-06-22 23:27:02 +00:00
vacge.ll Add support for ARM's Advanced SIMD (NEON) instruction set. 2009-06-22 23:27:02 +00:00
vacgt.ll Add support for ARM's Advanced SIMD (NEON) instruction set. 2009-06-22 23:27:02 +00:00
vadd.ll Add support for ARM's Advanced SIMD (NEON) instruction set. 2009-06-22 23:27:02 +00:00
vaddhn.ll Add support for ARM's Advanced SIMD (NEON) instruction set. 2009-06-22 23:27:02 +00:00
vaddl.ll Add support for ARM's Advanced SIMD (NEON) instruction set. 2009-06-22 23:27:02 +00:00
vaddw.ll Add support for ARM's Advanced SIMD (NEON) instruction set. 2009-06-22 23:27:02 +00:00
vand.ll Add support for ARM's Advanced SIMD (NEON) instruction set. 2009-06-22 23:27:02 +00:00
vargs_align.ll
vargs.ll
vbic.ll Add support for ARM's Advanced SIMD (NEON) instruction set. 2009-06-22 23:27:02 +00:00
vbsl.ll Add support for ARM's Advanced SIMD (NEON) instruction set. 2009-06-22 23:27:02 +00:00
vceq.ll Change these tests to use [fi]cmp+sext instead of v[fi]cmp. No 2009-07-08 00:46:57 +00:00
vcge.ll Change these tests to use [fi]cmp+sext instead of v[fi]cmp. No 2009-07-08 00:46:57 +00:00
vcgt.ll Change these tests to use [fi]cmp+sext instead of v[fi]cmp. No 2009-07-08 00:46:57 +00:00
vcls.ll Add support for ARM's Advanced SIMD (NEON) instruction set. 2009-06-22 23:27:02 +00:00
vclz.ll Add support for ARM's Advanced SIMD (NEON) instruction set. 2009-06-22 23:27:02 +00:00
vcnt.ll Add support for ARM's Advanced SIMD (NEON) instruction set. 2009-06-22 23:27:02 +00:00
vcvt_n.ll Add support for ARM's Advanced SIMD (NEON) instruction set. 2009-06-22 23:27:02 +00:00
vcvt.ll Add support for ARM's Advanced SIMD (NEON) instruction set. 2009-06-22 23:27:02 +00:00
vdup_lane.ll Add support for ARM's Advanced SIMD (NEON) instruction set. 2009-06-22 23:27:02 +00:00
vdup.ll Add support for ARM's Advanced SIMD (NEON) instruction set. 2009-06-22 23:27:02 +00:00
veor.ll Add support for ARM's Advanced SIMD (NEON) instruction set. 2009-06-22 23:27:02 +00:00
vfcmp.ll Change these tests to use [fi]cmp+sext instead of v[fi]cmp. No 2009-07-08 00:46:57 +00:00
vfp.ll
vget_lane.ll Add support for ARM's Advanced SIMD (NEON) instruction set. 2009-06-22 23:27:02 +00:00
vhadd.ll Add support for ARM's Advanced SIMD (NEON) instruction set. 2009-06-22 23:27:02 +00:00
vhsub.ll Add support for ARM's Advanced SIMD (NEON) instruction set. 2009-06-22 23:27:02 +00:00
vicmp.ll Change these tests to use [fi]cmp+sext instead of v[fi]cmp. No 2009-07-08 00:46:57 +00:00
vld1.ll Implement NEON vld1 instructions. 2009-07-08 18:11:30 +00:00
vmax.ll Add support for ARM's Advanced SIMD (NEON) instruction set. 2009-06-22 23:27:02 +00:00
vmin.ll Add support for ARM's Advanced SIMD (NEON) instruction set. 2009-06-22 23:27:02 +00:00
vmla.ll Add support for ARM's Advanced SIMD (NEON) instruction set. 2009-06-22 23:27:02 +00:00
vmlal.ll Add support for ARM's Advanced SIMD (NEON) instruction set. 2009-06-22 23:27:02 +00:00
vmls.ll Add support for ARM's Advanced SIMD (NEON) instruction set. 2009-06-22 23:27:02 +00:00
vmlsl.ll Add support for ARM's Advanced SIMD (NEON) instruction set. 2009-06-22 23:27:02 +00:00
vmov.ll Add support for ARM's Advanced SIMD (NEON) instruction set. 2009-06-22 23:27:02 +00:00
vmovl.ll Add support for ARM's Advanced SIMD (NEON) instruction set. 2009-06-22 23:27:02 +00:00
vmovn.ll Add support for ARM's Advanced SIMD (NEON) instruction set. 2009-06-22 23:27:02 +00:00
vmul.ll Add support for ARM's Advanced SIMD (NEON) instruction set. 2009-06-22 23:27:02 +00:00
vmull.ll Add support for ARM's Advanced SIMD (NEON) instruction set. 2009-06-22 23:27:02 +00:00
vmvn.ll Add support for ARM's Advanced SIMD (NEON) instruction set. 2009-06-22 23:27:02 +00:00
vneg.ll Add support for ARM's Advanced SIMD (NEON) instruction set. 2009-06-22 23:27:02 +00:00
vorn.ll Add support for ARM's Advanced SIMD (NEON) instruction set. 2009-06-22 23:27:02 +00:00
vorr.ll Add support for ARM's Advanced SIMD (NEON) instruction set. 2009-06-22 23:27:02 +00:00
vpadal.ll Add support for ARM's Advanced SIMD (NEON) instruction set. 2009-06-22 23:27:02 +00:00
vpadd.ll Add support for ARM's Advanced SIMD (NEON) instruction set. 2009-06-22 23:27:02 +00:00
vpaddl.ll Add support for ARM's Advanced SIMD (NEON) instruction set. 2009-06-22 23:27:02 +00:00
vpmax.ll Add support for ARM's Advanced SIMD (NEON) instruction set. 2009-06-22 23:27:02 +00:00
vpmin.ll Add support for ARM's Advanced SIMD (NEON) instruction set. 2009-06-22 23:27:02 +00:00
vqabs.ll Add support for ARM's Advanced SIMD (NEON) instruction set. 2009-06-22 23:27:02 +00:00
vqadd.ll Add support for ARM's Advanced SIMD (NEON) instruction set. 2009-06-22 23:27:02 +00:00
vqdmlal.ll Add support for ARM's Advanced SIMD (NEON) instruction set. 2009-06-22 23:27:02 +00:00
vqdmlsl.ll Add support for ARM's Advanced SIMD (NEON) instruction set. 2009-06-22 23:27:02 +00:00
vqdmulh.ll Add support for ARM's Advanced SIMD (NEON) instruction set. 2009-06-22 23:27:02 +00:00
vqdmull.ll Add support for ARM's Advanced SIMD (NEON) instruction set. 2009-06-22 23:27:02 +00:00
vqmovn.ll Add support for ARM's Advanced SIMD (NEON) instruction set. 2009-06-22 23:27:02 +00:00
vqneg.ll Add support for ARM's Advanced SIMD (NEON) instruction set. 2009-06-22 23:27:02 +00:00
vqrshl.ll Add support for ARM's Advanced SIMD (NEON) instruction set. 2009-06-22 23:27:02 +00:00
vqrshrn.ll Add support for ARM's Advanced SIMD (NEON) instruction set. 2009-06-22 23:27:02 +00:00
vqshl.ll Add support for ARM's Advanced SIMD (NEON) instruction set. 2009-06-22 23:27:02 +00:00
vqshrn.ll Add support for ARM's Advanced SIMD (NEON) instruction set. 2009-06-22 23:27:02 +00:00
vqsub.ll Add support for ARM's Advanced SIMD (NEON) instruction set. 2009-06-22 23:27:02 +00:00
vraddhn.ll Add support for ARM's Advanced SIMD (NEON) instruction set. 2009-06-22 23:27:02 +00:00
vrecpe.ll Add support for ARM's Advanced SIMD (NEON) instruction set. 2009-06-22 23:27:02 +00:00
vrecps.ll Add support for ARM's Advanced SIMD (NEON) instruction set. 2009-06-22 23:27:02 +00:00
vrev.ll Add support for ARM Neon VREV instructions. 2009-07-26 00:39:34 +00:00
vrhadd.ll Add support for ARM's Advanced SIMD (NEON) instruction set. 2009-06-22 23:27:02 +00:00
vrshl.ll Add support for ARM's Advanced SIMD (NEON) instruction set. 2009-06-22 23:27:02 +00:00
vrshrn.ll Add support for ARM's Advanced SIMD (NEON) instruction set. 2009-06-22 23:27:02 +00:00
vrsqrte.ll Add support for ARM's Advanced SIMD (NEON) instruction set. 2009-06-22 23:27:02 +00:00
vrsqrts.ll Add support for ARM's Advanced SIMD (NEON) instruction set. 2009-06-22 23:27:02 +00:00
vrsubhn.ll Add support for ARM's Advanced SIMD (NEON) instruction set. 2009-06-22 23:27:02 +00:00
vset_lane.ll Add support for ARM's Advanced SIMD (NEON) instruction set. 2009-06-22 23:27:02 +00:00
vshift.ll Add support for ARM's Advanced SIMD (NEON) instruction set. 2009-06-22 23:27:02 +00:00
vshiftins.ll Add support for ARM's Advanced SIMD (NEON) instruction set. 2009-06-22 23:27:02 +00:00
vshl.ll Add support for ARM's Advanced SIMD (NEON) instruction set. 2009-06-22 23:27:02 +00:00
vshll.ll Add support for ARM's Advanced SIMD (NEON) instruction set. 2009-06-22 23:27:02 +00:00
vshrn.ll Add support for ARM's Advanced SIMD (NEON) instruction set. 2009-06-22 23:27:02 +00:00
vsra.ll Add support for ARM's Advanced SIMD (NEON) instruction set. 2009-06-22 23:27:02 +00:00
vst1.ll Implement NEON vst1 instruction. 2009-07-08 20:32:02 +00:00
vsub.ll Add support for ARM's Advanced SIMD (NEON) instruction set. 2009-06-22 23:27:02 +00:00
vsubhn.ll Add support for ARM's Advanced SIMD (NEON) instruction set. 2009-06-22 23:27:02 +00:00
vsubl.ll Add support for ARM's Advanced SIMD (NEON) instruction set. 2009-06-22 23:27:02 +00:00
vsubw.ll Add support for ARM's Advanced SIMD (NEON) instruction set. 2009-06-22 23:27:02 +00:00
vtst.ll Change these tests to use [fi]cmp+sext instead of v[fi]cmp. No 2009-07-08 00:46:57 +00:00
weak2.ll
weak.ll