llvm-6502/test/CodeGen/ARM
Greg Fitzgerald 148c7f286c Fix inline assembly that switches between ARM and Thumb modes
This patch restores the ARM mode if the user's inline assembly
does not.  In the object streamer, it ensures that instructions
following the inline assembly are encoded correctly and that
correct mapping symbols are emitted.  For the asm streamer, it
emits a .arm or .thumb directive.

This patch does not ensure that the inline assembly contains
the ADR instruction to switch modes at runtime.

The problem we need to solve is code like this:

  int foo(int a, int b) {
    int r = a + b;
    asm volatile(
        ".align 2     \n"
        ".arm         \n"
        "add r0,r0,r0 \n"
    : : "r"(r));
    return r+1;
  }

If we compile this function in thumb mode then the inline assembly
will switch to arm mode. We need to make sure that we switch back to
thumb mode after emitting the inline assembly or we will incorrectly
encode the instructions that follow (i.e. the assembly instructions
for return r+1).

Based on patch by David Peixotto

Change-Id: Ib57f6d2d78a22afad5de8693fba6230ff56ba48b

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@199818 91177308-0d34-0410-b5e6-96231b3b80d8
2014-01-22 18:32:35 +00:00
..
2006-11-10-CycleInDAG.ll
2007-01-19-InfiniteLoop.ll
2007-03-07-CombinerCrash.ll
2007-03-13-InstrSched.ll
2007-03-21-JoinIntervalsCrash.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-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-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-17-CoalescerBug.ll
2008-11-18-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
2009-06-04-MissingLiveIn.ll
2009-06-15-RegScavengerAssert.ll
2009-06-19-RegScavengerAssert.ll
2009-06-22-CoalescerBug.ll
2009-06-30-RegScavengerAssert2.ll
2009-06-30-RegScavengerAssert3.ll
2009-06-30-RegScavengerAssert4.ll
2009-06-30-RegScavengerAssert5.ll
2009-06-30-RegScavengerAssert.ll
2009-07-01-CommuteBug.ll
2009-07-09-asm-p-constraint.ll
2009-07-18-RewriterBug.ll
2009-07-22-ScavengerAssert.ll
2009-07-22-SchedulerAssert.ll
2009-07-29-VFP3Registers.ll
2009-08-02-RegScavengerAssert-Neon.ll
2009-08-04-RegScavengerAssert-2.ll
2009-08-04-RegScavengerAssert.ll
2009-08-15-RegScavenger-EarlyClobber.ll
2009-08-15-RegScavengerAssert.ll
2009-08-21-PostRAKill2.ll
2009-08-21-PostRAKill3.ll
2009-08-21-PostRAKill.ll
2009-08-23-linkerprivate.ll
2009-08-26-ScalarToVector.ll
2009-08-27-ScalarToVector.ll
2009-08-29-ExtractEltf32.ll
2009-08-29-TooLongSplat.ll
2009-08-31-LSDA-Name.ll
2009-08-31-TwoRegShuffle.ll
2009-09-09-AllOnes.ll
2009-09-09-fpcmp-ole.ll
2009-09-10-postdec.ll
2009-09-13-InvalidSubreg.ll
2009-09-13-InvalidSuperReg.ll
2009-09-20-LiveIntervalsBug.ll
2009-09-21-LiveVariablesBug.ll
2009-09-22-LiveVariablesBug.ll
2009-09-23-LiveVariablesBug.ll
2009-09-24-spill-align.ll
2009-09-27-CoalescerBug.ll
2009-09-28-LdStOptiBug.ll
2009-10-02-NEONSubregsBug.ll
2009-10-16-Scope.ll
2009-10-21-InvalidFNeg.ll
2009-10-27-double-align.ll
2009-10-30.ll
2009-11-01-NeonMoves.ll
2009-11-02-NegativeLane.ll
2009-11-07-SubRegAsmPrinting.ll
2009-11-13-CoalescerCrash.ll
2009-11-13-ScavengerAssert2.ll
2009-11-13-ScavengerAssert.ll
2009-11-13-VRRewriterCrash.ll
2009-11-30-LiveVariablesBug.ll
2009-12-02-vtrn-undef.ll
2010-03-04-eabi-fp-spill.ll
2010-03-04-stm-undef-addr.ll
2010-03-18-ldm-rtrn.ll
2010-04-09-NeonSelect.ll
2010-04-13-v2f64SplitArg.ll
2010-04-14-SplitVector.ll
2010-04-15-ScavengerDebugValue.ll Debug Info: update testing cases to specify the debug info version number. 2013-11-22 21:49:45 +00:00
2010-05-14-IllegalType.ll
2010-05-17-FastAllocCrash.ll
2010-05-18-LocalAllocCrash.ll
2010-05-18-PostIndexBug.ll
2010-05-19-Shuffles.ll
2010-05-20-NEONSpillCrash.ll
2010-05-21-BuildVector.ll
2010-06-11-vmovdrr-bitcast.ll
2010-06-21-LdStMultipleBug.ll
2010-06-21-nondarwin-tc.ll
2010-06-25-Thumb2ITInvalidIterator.ll
2010-06-29-PartialRedefFastAlloc.ll
2010-06-29-SubregImpDefs.ll
2010-07-26-GlobalMerge.ll
2010-08-04-EHCrash.ll
2010-08-04-StackVariable.ll Debug Info: update testing cases to specify the debug info version number. 2013-11-22 21:49:45 +00:00
2010-09-21-OptCmpBug.ll
2010-10-25-ifcvt-ldm.ll
2010-11-15-SpillEarlyClobber.ll
2010-11-29-PrologueBug.ll
2010-12-07-PEIBug.ll
2010-12-08-tpsoft.ll
2010-12-15-elf-lcomm.ll
2010-12-17-LocalStackSlotCrash.ll
2011-01-19-MergedGlobalDbg.ll Debug Info: update testing cases to specify the debug info version number. 2013-11-22 21:49:45 +00:00
2011-02-04-AntidepMultidef.ll
2011-02-07-AntidepClobber.ll
2011-03-10-DAGCombineCrash.ll
2011-03-15-LdStMultipleBug.ll
2011-03-23-PeepholeBug.ll
2011-04-07-schediv.ll
2011-04-11-MachineLICMBug.ll
2011-04-12-AlignBug.ll
2011-04-12-FastRegAlloc.ll
2011-04-15-AndVFlagPeepholeBug.ll
2011-04-15-RegisterCmpPeephole.ll
2011-04-26-SchedTweak.ll
2011-04-27-IfCvtBug.ll
2011-05-04-MultipleLandingPadSuccs.ll
2011-06-09-TailCallByVal.ll
2011-06-16-TailCallByVal.ll
2011-06-29-MergeGlobalsAlign.ll
2011-07-10-GlobalMergeBug.ll
2011-08-02-MergedGlobalDbg.ll Debug Info: update testing cases to specify the debug info version number. 2013-11-22 21:49:45 +00:00
2011-08-12-vmovqqqq-pseudo.ll
2011-08-25-ldmia_ret.ll
2011-08-29-ldr_pre_imm.ll
2011-08-29-SchedCycle.ll
2011-09-09-OddVectorDivision.ll
2011-09-19-cpsr.ll
2011-09-28-CMovCombineBug.ll
2011-10-26-ExpandUnalignedLoadCrash.ll
2011-10-26-memset-inline.ll
2011-10-26-memset-with-neon.ll
2011-11-07-PromoteVectorLoadStore.ll
2011-11-09-BitcastVectorDouble.ll
2011-11-09-IllegalVectorFPIntConvert.ll
2011-11-14-EarlyClobber.ll
2011-11-28-DAGCombineBug.ll
2011-11-29-128bitArithmetics.ll ARM: force soft-float ABI for tests depending on it. 2013-12-18 09:58:06 +00:00
2011-11-30-MergeAlignment.ll
2011-12-14-machine-sink.ll
2011-12-19-sjlj-clobber.ll
2012-01-23-PostRA-LICM.ll
2012-01-24-RegSequenceLiveRange.ll
2012-01-26-CoalescerBug.ll
2012-01-26-CopyPropKills.ll
2012-02-01-CoalescerBug.ll
2012-03-05-FPSCR-bug.ll
2012-03-13-DAGCombineBug.ll
2012-03-26-FoldImmBug.ll
2012-04-02-TwoAddrInstrCrash.ll
2012-04-10-DAGCombine.ll
2012-04-24-SplitEHCriticalEdge.ll
2012-05-04-vmov.ll
2012-05-10-PreferVMOVtoVDUP32.ll
2012-05-29-TailDupBug.ll
2012-06-12-SchedMemLatency.ll
2012-08-04-DtripleSpillReload.ll
2012-08-08-legalize-unaligned.ll
2012-08-09-neon-extload.ll
2012-08-13-bfi.ll
2012-08-23-legalize-vmull.ll
2012-08-27-CopyPhysRegCrash.ll
2012-08-30-select.ll
2012-09-18-ARMv4ISelBug.ll
2012-09-25-InlineAsmScalarToVectorConv2.ll
2012-09-25-InlineAsmScalarToVectorConv.ll
2012-10-04-AAPCS-byval-align8.ll
2012-10-04-FixedFrame-vs-byval.ll
2012-10-04-LDRB_POST_IMM-Crash.ll
2012-10-18-PR14099-ByvalFrameAddress.ll
2012-11-14-subs_carry.ll
2013-01-21-PR14992.ll
2013-02-27-expand-vfma.ll
2013-04-05-Small-ByVal-Structs-PR15293.ll
2013-04-16-AAPCS-C4-vs-VFP.ll
2013-04-16-AAPCS-C5-vs-VFP.ll
2013-04-18-load-overlap-PR14824.ll
2013-04-21-AAPCS-VA-C.1.cp.ll
2013-05-02-AAPCS-ByVal-Structs-C4-C5-VFP2.ll
2013-05-02-AAPCS-ByVal-Structs-C4-C5-VFP.ll
2013-05-05-IfConvertBug.ll
2013-05-07-ByteLoadSameAddress.ll
2013-05-13-AAPCS-byval-padding2.ll
2013-05-13-AAPCS-byval-padding.ll
2013-05-13-DAGCombiner-undef-mask.ll
2013-05-31-char-shift-crash.ll
2013-06-03-ByVal-2Kbytes.ll
2013-07-29-vector-or-combine.ll
2013-10-11-select-stalls.ll
2013-11-08-inline-asm-neon-array.ll
2014-01-09-pseudo_expand_implicit_reg.ll PR 18466: Fix ARM Pseudo Expansion 2014-01-15 01:32:12 +00:00
a15-mla.ll
a15-partial-update.ll
a15-SD-dep.ll
a15.ll
addrmode.ll
addrspacecast.ll Addrspacecasts are no-ops on ARM. 2013-12-03 11:23:11 +00:00
aliases.ll
align.ll
alloc-no-stack-realign.ll
alloca.ll
argaddr.ll
arguments2.ll
arguments3.ll
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-abi-attr.ll Make the ARM ABI selectable via SubtargetFeature. 2014-01-02 13:40:08 +00:00
arm-and-tst-peephole.ll Enabling thumb2 mode used to force support for armv6t2. Replace this 2013-12-13 11:16:00 +00:00
arm-asm.ll
arm-frameaddr.ll
arm-modifier.ll
arm-negative-stride.ll
arm-returnaddr.ll
arm-ttype-target2.ll
armv4.ll
atomic-64bit.ll
atomic-cmp.ll
atomic-load-store.ll Fix broken CHECK lines. 2014-01-11 21:06:00 +00:00
atomic-op.ll
atomic-ops-v8.ll
atomicrmw_minmax.ll
available_externally.ll
avoid-cpsr-rmw.ll
bfc.ll
bfi.ll
bfx.ll
bic.ll
bicZext.ll
bits.ll
bswap-inline-asm.ll
build-attributes-encoding.s ARM IAS: improve .eabi_attribute handling 2014-01-07 02:28:42 +00:00
build-attributes.ll [ARM] Do not generate Tag_DIV_use=AllowDIVExt when hardware div is non-optional: it should have the default value of AllowDIVIfExists 2014-01-20 10:18:42 +00:00
bx_fold.ll
byval_load_align.ll
call_nolink.ll
call-noret-minsize.ll
call-noret.ll
call-tc.ll
call.ll
carry.ll
clz.ll
cmn.ll
coalesce-dbgvalue.ll Debug Info: update testing cases to specify the debug info version number. 2013-11-22 21:49:45 +00:00
coalesce-subregs.ll
code-placement.ll
commute-movcc.ll
compare-call.ll
constantfp.ll
constants.ll
copy-paired-reg.ll
crash-greedy-v6.ll
crash-greedy.ll
crash-O0.ll
crash-shufflevector.ll
crash.ll
cse-call.ll
cse-ldrlit.ll ARM MachO: sort out isTargetDarwin/isTargetIOS/... checks. 2014-01-06 14:28:05 +00:00
cse-libcalls.ll
ctor_order.ll
ctors_dtors.ll
ctz.ll
dagcombine-anyexttozeroext.ll
dagcombine-concatvector.ll
darwin-eabi.ll
darwin-section-order.ll
data-in-code-annotations.ll
DbgValueOtherTargets.test
debug-info-arg.ll Debug Info: update testing cases to specify the debug info version number. 2013-11-22 21:49:45 +00:00
debug-info-blocks.ll Debug Info: update testing cases to specify the debug info version number. 2013-11-22 21:49:45 +00:00
debug-info-branch-folding.ll Debug Info: update testing cases to specify the debug info version number. 2013-11-23 01:16:29 +00:00
debug-info-d16-reg.ll Debug Info: update testing cases to specify the debug info version number. 2013-11-22 21:49:45 +00:00
debug-info-qreg.ll Debug Info: update testing cases to specify the debug info version number. 2013-11-22 21:49:45 +00:00
debug-info-s16-reg.ll Debug Info: update testing cases to specify the debug info version number. 2013-11-22 21:49:45 +00:00
debug-info-sreg2.ll Debug Info: update testing cases to specify the debug info version number. 2013-11-22 21:49:45 +00:00
default-float-abi.ll ARM: set default float ABI based on triple. 2013-12-18 09:27:33 +00:00
deps-fix.ll
div.ll
divmod-eabi.ll Fix broken CHECK lines. 2014-01-11 21:06:00 +00:00
divmod.ll
domain-conv-vmovs.ll
dyn-stackalloc.ll
eh-dispcont.ll
eh-resume-darwin.ll
ehabi-filters.ll
ehabi-no-landingpad.ll
ehabi-unwind.ll
ehabi.ll
elf-lcomm-align.ll
emit-big-cst.ll
extload-knownzero.ll
extloadi1.ll
fabs-neon.ll
fabss.ll
fadds.ll
fast-isel-align.ll
fast-isel-binary.ll
fast-isel-br-const.ll
fast-isel-br-phi.ll
fast-isel-call-multi-reg-return.ll
fast-isel-call.ll Un-XFAILify some tests which are now passing. 2013-12-29 23:09:14 +00:00
fast-isel-cmp-imm.ll
fast-isel-conversion.ll
fast-isel-crash2.ll ARM MachO: sort out isTargetDarwin/isTargetIOS/... checks. 2014-01-06 14:28:05 +00:00
fast-isel-crash.ll
fast-isel-deadcode.ll
fast-isel-ext.ll
fast-isel-fold.ll
fast-isel-frameaddr.ll ARM MachO: sort out isTargetDarwin/isTargetIOS/... checks. 2014-01-06 14:28:05 +00:00
fast-isel-GEP-coalesce.ll
fast-isel-icmp.ll
fast-isel-indirectbr.ll
fast-isel-intrinsic.ll Un-XFAILify some tests which are now passing. 2013-12-29 23:09:14 +00:00
fast-isel-ldr-str-arm.ll
fast-isel-ldr-str-thumb-neg-index.ll
fast-isel-ldrh-strh-arm.ll
fast-isel-load-store-verify.ll
fast-isel-mvn.ll
fast-isel-pic.ll
fast-isel-pred.ll
fast-isel-redefinition.ll
fast-isel-ret.ll
fast-isel-select.ll
fast-isel-shifter.ll
fast-isel-static.ll ARM: constrain register-class in fast-isel 2013-12-11 16:04:57 +00:00
fast-isel-vararg.ll
fast-isel.ll
fast-tail-call.ll
fastisel-gep-promote-before-add.ll
fcopysign.ll
fdivs.ll
fixunsdfdi.ll
flag-crash.ll
floorf.ll
fmacs.ll
fmdrr-fmrrd.ll
fmscs.ll
fmuls.ll
fnegs.ll
fnmacs.ll
fnmscs.ll
fnmul.ll
fnmuls.ll
fold-const.ll
fold-stack-adjust.ll ARM: correctly determine final tBX_LR in Thumb1 functions 2014-01-14 22:53:28 +00:00
formal.ll
fp16.ll
fp_convert.ll
fp-arg-shuffle.ll
fp-fast.ll
fp.ll ARM: force soft-float ABI for tests depending on it. 2013-12-18 09:58:06 +00:00
fparith.ll
fpcmp_ueq.ll
fpcmp-opt.ll
fpcmp.ll
fpconsts.ll
fpconv.ll
fpmem.ll ARM: force soft-float ABI for tests depending on it. 2013-12-18 09:58:06 +00:00
fpow.ll
fpowi.ll
fptoint.ll
fsubs.ll
fusedMAC.ll
global-merge-addrspace.ll
global-merge.ll
globals.ll
gpr-paired-spill-thumbinst.ll
gpr-paired-spill.ll
gv-stubs-crash.ll
hardfloat_neon.ll
hello.ll
hidden-vis-2.ll
hidden-vis-3.ll
hidden-vis.ll
iabs.ll
ifconv-kills.ll
ifconv-regmask.ll
ifcvt1.ll
ifcvt2.ll
ifcvt3.ll
ifcvt4.ll
ifcvt5.ll
ifcvt6.ll
ifcvt7.ll
ifcvt8.ll
ifcvt9.ll
ifcvt10.ll
ifcvt11.ll
ifcvt12.ll
illegal-vector-bitcast.ll
imm.ll
indirect-reg-input.ll
indirectbr-2.ll
indirectbr-3.ll
indirectbr.ll ARM: add pseudo-instructions for lit-pool global materialisation 2013-12-02 10:35:41 +00:00
inlineasm2.ll
inlineasm3.ll ARM: force soft-float ABI for tests depending on it. 2013-12-18 09:58:06 +00:00
inlineasm4.ll
inlineasm-64bit.ll
inlineasm-imm-arm.ll
inlineasm-switch-mode-oneway-from-arm.ll Fix inline assembly that switches between ARM and Thumb modes 2014-01-22 18:32:35 +00:00
inlineasm-switch-mode-oneway-from-thumb.ll Fix inline assembly that switches between ARM and Thumb modes 2014-01-22 18:32:35 +00:00
inlineasm-switch-mode.ll Fix inline assembly that switches between ARM and Thumb modes 2014-01-22 18:32:35 +00:00
inlineasm.ll
insn-sched1.ll
int-to-fp.ll
integer_insertelement.ll
interrupt-attr.ll ARM MachO: sort out isTargetDarwin/isTargetIOS/... checks. 2014-01-06 14:28:05 +00:00
intrinsics-crypto.ll
intrinsics-v8.ll
intrinsics.ll
invoke-donothing-assert.ll
ispositive.ll
jumptable-label.ll
large-stack.ll
ldm.ll ARM MachO: sort out isTargetDarwin/isTargetIOS/... checks. 2014-01-06 14:28:05 +00:00
ldr_ext.ll
ldr_frame.ll
ldr_post.ll
ldr_pre.ll
ldr.ll
ldrd-memoper.ll
ldrd.ll
ldst-f32-2-i32.ll
ldstrex.ll
lit.local.cfg
load_i1_select.ll
load-address-masked.ll
load-global.ll
load.ll
log2_not_readnone.ll
long_shift.ll
long-setcc.ll
long.ll
longMAC.ll ARM: add constraint that RdLo != Rn != RdHi for v5 MLA insts. 2014-01-14 13:05:47 +00:00
lsr-code-insertion.ll
lsr-icmp-imm.ll
lsr-scale-addr-mode.ll
lsr-unfolded-offset.ll
machine-cse-cmp.ll
machine-licm.ll ARM: add pseudo-instructions for lit-pool global materialisation 2013-12-02 10:35:41 +00:00
mem.ll
memcpy-inline.ll
memfunc.ll ARM MachO: sort out isTargetDarwin/isTargetIOS/... checks. 2014-01-06 14:28:05 +00:00
memset-inline.ll
MergeConsecutiveStores.ll
minsize-litpools.ll ARM: decide whether to use movw/movt based on "minsize" attribute. 2013-12-02 14:46:26 +00:00
misched-copy-arm.ll
mls.ll
movt-movw-global.ll Darwin-ARM: use movw/movt for static relocations 2013-11-26 12:45:05 +00:00
movt.ll Enabling thumb2 mode used to force support for armv6t2. Replace this 2013-12-13 11:16:00 +00:00
mul_const.ll
mul.ll
mulhi.ll
mult-alt-generic-arm.ll
mvn.ll
neon_arith1.ll
neon_cmp.ll
neon_div.ll
neon_fpconv.ll
neon_ld1.ll ARM: force soft-float ABI for tests depending on it. 2013-12-18 09:58:06 +00:00
neon_ld2.ll ARM: force soft-float ABI for tests depending on it. 2013-12-18 09:58:06 +00:00
neon_minmax.ll
neon_shift.ll
neon_spill.ll
neon_vabs.ll
neon-fma.ll
neon-spfp.ll
no-fpu.ll
none-macho.ll ARM MachO: sort out isTargetDarwin/isTargetIOS/... checks. 2014-01-06 14:28:05 +00:00
nop_concat_vectors.ll
noreturn.ll
odr_comdat.ll
opt-shuff-tstore.ll
optselect-regclass.ll
pack.ll
peephole-bitcast.ll
phi.ll
pic.ll
popcnt.ll
pr3502.ll
pr13249.ll
PR15053.ll
prefetch-thumb.ll
prefetch.ll
private.ll
readcyclecounter.ll
reg_sequence.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_sret_vector.ll
ret_void.ll
returned-ext.ll
returned-trunc-tail-calls.ll
rev.ll
saxpy10-a9.ll New machine model for cortex-a9. Schedule for resources and latency. 2013-12-28 21:57:05 +00:00
sbfx.ll
section-name.ll
section.ll
select_xform.ll
select-imm.ll Enabling thumb2 mode used to force support for armv6t2. Replace this 2013-12-13 11:16:00 +00:00
select-undef.ll
select.ll
setcc-sentinals.ll
shifter_operand.ll
shuffle.ll
sincos.ll
sjlj-prepare-critical-edge.ll
smml.ll
smul.ll
spill-q.ll
ssp-data-layout.ll Unbreak ARM buildbots after r197653 by forcing the target triple on this test. 2013-12-19 18:14:42 +00:00
stack-frame.ll
stack-protector-bmovpcb_call.ll
stm.ll
str_post.ll
str_pre-2.ll
str_pre.ll
str_trunc.ll
struct_byval_arm_t1_t2.ll
struct_byval.ll
struct-byval-frame-index.ll
sub-cmp-peephole.ll Bug 18149: [AArch32] VSel instructions has no ARMCC field 2013-12-06 17:56:48 +00:00
sub.ll
subreg-remat.ll
swift-atomics.ll
swift-vldm.ll
sxt_rot.ll
t2-imm.ll Enabling thumb2 mode used to force support for armv6t2. Replace this 2013-12-13 11:16:00 +00:00
tail-dup.ll
tail-opts.ll
test-sharedidx.ll
this-return.ll
thread_pointer.ll
thumb1-varalloc.ll
thumb2-it-block.ll Enabling thumb2 mode used to force support for armv6t2. Replace this 2013-12-13 11:16:00 +00:00
thumb-litpool.ll ARM: add test for r199108. Oops. 2014-01-13 14:20:25 +00:00
tls1.ll Add support for parsing ARM symbol variants on ELF targets 2013-12-04 22:43:20 +00:00
tls2.ll Add support for parsing ARM symbol variants on ELF targets 2013-12-04 22:43:20 +00:00
tls3.ll
tls-models.ll Add support for parsing ARM symbol variants on ELF targets 2013-12-04 22:43:20 +00:00
trap.ll
trunc_ldr.ll
truncstore-dag-combine.ll
tst_teq.ll
twoaddrinstr.ll
uint64tof64.ll
umulo-32.ll
unaligned_load_store_vector.ll
unaligned_load_store.ll
undef-sext.ll
unord.ll
unsafe-fsub.ll
unwind-init.ll
uxt_rot.ll
uxtb.ll
v1-constant-fold.ll
va_arg.ll
vaba.ll
vabd.ll
vabs.ll
vadd.ll
vargs_align.ll
vargs.ll
vbits.ll
vbsl-constant.ll
vbsl.ll
vceq.ll
vcge.ll
vcgt.ll
vcnt.ll
vcombine.ll ARM: force soft-float ABI for tests depending on it. 2013-12-18 09:58:06 +00:00
vcvt_combine.ll
vcvt-cost.ll
vcvt-v8.ll
vcvt.ll
vdiv_combine.ll
vdup.ll Remove the useless pseudo instructions VDUPfdf and VDUPfqf, replacing them with patterns to match VDUPLN. 2014-01-20 17:14:48 +00:00
vector-DAGCombine.ll
vector-extend-narrow.ll
vext.ll
vfcmp.ll
vfloatintrinsics.ll
vfp.ll
vget_lane.ll
vhadd.ll
vhsub.ll
vicmp.ll
vld1.ll ARM: force soft-float ABI for tests depending on it. 2013-12-18 09:58:06 +00:00
vld2.ll
vld3.ll For ARM, fix assertuib failures for some ld/st 3/4 instruction with wirteback. 2014-01-16 09:16:13 +00:00
vld4.ll For ARM, fix assertuib failures for some ld/st 3/4 instruction with wirteback. 2014-01-16 09:16:13 +00:00
vlddup.ll ARM: force soft-float ABI for tests depending on it. 2013-12-18 09:58:06 +00:00
vldlane.ll ARM: force soft-float ABI for tests depending on it. 2013-12-18 09:58:06 +00:00
vldm-liveness.ll
vldm-sched-a9.ll
vminmax.ll
vminmaxnm.ll
vmla.ll
vmls.ll
vmov.ll
vmul.ll
vneg.ll
vpadal.ll
vpadd.ll
vpminmax.ll
vqadd.ll
vqdmul.ll
vqshl.ll
vqshrn.ll
vqsub.ll
vrec.ll
vrev.ll
vsel.ll [aarch32] fix bug 18268: Incorrect condition of vsel 2013-12-18 22:25:17 +00:00
vselect_imax.ll
vshift.ll
vshiftins.ll
vshl.ll
vshll.ll
vshrn.ll
vsra.ll
vst1.ll
vst2.ll
vst3.ll For ARM, fix assertuib failures for some ld/st 3/4 instruction with wirteback. 2014-01-16 09:16:13 +00:00
vst4.ll For ARM, fix assertuib failures for some ld/st 3/4 instruction with wirteback. 2014-01-16 09:16:13 +00:00
vstlane.ll
vsub.ll
vtbl.ll
vtrn.ll
vuzp.ll
vzip.ll
warn-stack.ll Add warning capabilities in LLVM. 2013-12-17 17:47:22 +00:00
weak2.ll
weak.ll
widen-vmovs.ll
zextload_demandedbits.ll