1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-23 11:13:28 +01:00
llvm-mirror/test/CodeGen/AArch64
Matthias Braun e45ebab2b3 AArch64: Fix emergency spillslot being out of reach for large callframes
Re-commit of r322200: The testcase shouldn't hit machineverifiers
anymore with r322917 in place.

Large callframes (calls with several hundreds or thousands or
parameters) could lead to situations in which the emergency spillslot is
out of range to be addressed relative to the stack pointer.
This commit forces the use of a frame pointer in the presence of large
callframes.

This commit does several things:
- Compute max callframe size at the end of instruction selection.
- Add mirFileLoaded target callback. Use it to compute the max callframe size
  after loading a .mir file when the size wasn't specified in the file.
- Let TargetFrameLowering::hasFP() return true if there exists a
  callframe > 255 bytes.
- Always place the emergency spillslot close to FP if we have a frame
  pointer.
- Note that `useFPForScavengingIndex()` would previously return false
  when a base pointer was available leading to the emergency spillslot
  getting allocated late (that's the whole effect of this callback).
  Which made no sense to me so I took this case out: Even though the
  emergency spillslot is technically not referenced by FP in this case
  we still want it allocated early.

Differential Revision: https://reviews.llvm.org/D40876

llvm-svn: 322919
2018-01-19 03:16:36 +00:00
..
GlobalISel [AArch64][GlobalISel] Add isel support for global values in the large code model. 2018-01-18 19:21:27 +00:00
128bit_load_store.ll
a57-csel.ll
aarch64_f16_be.ll
aarch64_tree_tests.ll
aarch64_win64cc_vararg.ll
aarch64-2014-08-11-MachineCombinerCrash.ll
aarch64-2014-12-02-combine-soften.ll
aarch64-a57-fp-load-balancing.ll
aarch64-address-type-promotion-assertion.ll
aarch64-address-type-promotion.ll
aarch64-addv.ll
aarch64-be-bv.ll
aarch64-codegen-prepare-atp.ll
aarch64-combine-fmul-fsub.mir [AArch64] Fix -mcpu option in aarch64-combine-fmul-fsub.mir (NFC) 2018-01-05 11:17:48 +00:00
aarch64-DAGCombine-findBetterNeighborChains-crash.ll
aarch64-dynamic-stack-layout.ll
aarch64-fix-cortex-a53-835769.ll
aarch64-fold-lslfast.ll
aarch64-gep-opt.ll
aarch64-loop-gep-opt.ll
aarch64-minmaxv.ll
aarch64-named-reg-w18.ll
aarch64-named-reg-x18.ll
aarch64-neon-v1i1-setcc.ll
aarch64-smax-constantfold.ll
aarch64-smull.ll
aarch64-stp-cluster.ll [CodeGen] Print RegClasses on MI in verbose mode 2018-01-18 17:59:06 +00:00
aarch64-tbz.ll
aarch64-tryBitfieldInsertOpFromOr-crash.ll
aarch64-vcvtfp2fxs-combine.ll
aarch64-wide-shuffle.ll
aarch-multipart.ll
adc.ll
addcarry-crash.ll
addsub_ext.ll
addsub-shifted.ll
addsub.ll
alloca.ll
analyze-branch.ll
analyzecmp.ll
and-mask-removal.ll
and-sink.ll
andandshift.ll
argument-blocks.ll
arm64-2011-03-09-CPSRSpill.ll
arm64-2011-03-17-AsmPrinterCrash.ll
arm64-2011-03-21-Unaligned-Frame-Index.ll
arm64-2011-04-21-CPSRBug.ll
arm64-2011-10-18-LdStOptBug.ll
arm64-2012-01-11-ComparisonDAGCrash.ll
arm64-2012-05-07-DAGCombineVectorExtract.ll
arm64-2012-05-07-MemcpyAlignBug.ll
arm64-2012-05-09-LOADgot-bug.ll
arm64-2012-05-22-LdStOptBug.ll
arm64-2012-06-06-FPToUI.ll
arm64-2012-07-11-InstrEmitterBug.ll
arm64-2013-01-13-ffast-fcmp.ll
arm64-2013-01-23-frem-crash.ll
arm64-2013-01-23-sext-crash.ll
arm64-2013-02-12-shufv8i8.ll
arm64-aapcs-be.ll
arm64-aapcs.ll
arm64-abi_align.ll
arm64-abi-varargs.ll
arm64-abi.ll
arm64-addp.ll
arm64-addr-mode-folding.ll
arm64-addr-type-promotion.ll
arm64-addrmode.ll
arm64-AdvSIMD-Scalar.ll
arm64-alloc-no-stack-realign.ll
arm64-alloca-frame-pointer-offset.ll
arm64-andCmpBrToTBZ.ll
arm64-ands-bad-peephole.ll
arm64-AnInfiniteLoopInDAGCombine.ll
arm64-anyregcc-crash.ll
arm64-anyregcc.ll
arm64-arith-saturating.ll
arm64-arith.ll
arm64-arm64-dead-def-elimination-flag.ll
arm64-atomic-128.ll
arm64-atomic.ll
arm64-basic-pic.ll
arm64-bcc.ll
arm64-big-endian-bitconverts.ll [AArch64] Fix incorrect LD1 of 16-bit FP vectors in big endian 2018-01-17 14:39:29 +00:00
arm64-big-endian-eh.ll
arm64-big-endian-varargs.ll
arm64-big-endian-vector-callee.ll
arm64-big-endian-vector-caller.ll
arm64-big-imm-offsets.ll
arm64-big-stack.ll
arm64-bitfield-extract.ll
arm64-blockaddress.ll
arm64-build-vector.ll [AArch64] Improve code generation of vector build 2018-01-04 21:43:12 +00:00
arm64-builtins-linux.ll
arm64-call-tailcalls.ll
arm64-cast-opt.ll
arm64-ccmp-heuristics.ll
arm64-ccmp.ll
arm64-clrsb.ll
arm64-coalesce-ext.ll
arm64-coalescing-MOVi32imm.ll
arm64-code-model-large-abs.ll
arm64-codegen-prepare-extload.ll
arm64-collect-loh-garbage-crash.ll
arm64-collect-loh-str.ll
arm64-collect-loh.ll
arm64-complex-copy-noneon.ll
arm64-complex-ret.ll
arm64-const-addr.ll
arm64-convert-v4f64.ll
arm64-copy-tuple.ll
arm64-crc32.ll
arm64-crypto.ll
arm64-cse.ll
arm64-csel.ll
arm64-csldst-mmo.ll [CodeGen] Print frame-setup/destroy flags in -debug output like we do in MIR 2018-01-09 16:11:51 +00:00
arm64-cvt.ll
arm64-dagcombiner-convergence.ll
arm64-dagcombiner-dead-indexed-load.ll
arm64-dagcombiner-load-slicing.ll
arm64-dead-def-frame-index.ll
arm64-dead-register-def-bug.ll
arm64-detect-vec-redux.ll
arm64-dup.ll
arm64-early-ifcvt.ll
arm64-elf-calls.ll
arm64-elf-constpool.ll
arm64-elf-globals.ll
arm64-EXT-undef-mask.ll
arm64-ext.ll
arm64-extend-int-to-fp.ll
arm64-extend.ll
arm64-extern-weak.ll
arm64-extload-knownzero.ll
arm64-extract_subvector.ll
arm64-extract.ll
arm64-fast-isel-addr-offset.ll
arm64-fast-isel-alloca.ll
arm64-fast-isel-br.ll
arm64-fast-isel-call.ll
arm64-fast-isel-conversion-fallback.ll
arm64-fast-isel-conversion.ll
arm64-fast-isel-fcmp.ll
arm64-fast-isel-gv.ll
arm64-fast-isel-icmp.ll
arm64-fast-isel-indirectbr.ll
arm64-fast-isel-intrinsic.ll
arm64-fast-isel-materialize.ll
arm64-fast-isel-noconvert.ll
arm64-fast-isel-rem.ll
arm64-fast-isel-ret.ll
arm64-fast-isel-store.ll
arm64-fast-isel.ll
arm64-fastcc-tailcall.ll
arm64-fastisel-gep-promote-before-add.ll
arm64-fcmp-opt.ll
arm64-fcopysign.ll
arm64-fixed-point-scalar-cvt-dagcombine.ll
arm64-fma-combine-with-fpfusion.ll
arm64-fma-combines.ll
arm64-fmadd.ll
arm64-fmax-safe.ll
arm64-fmax.ll
arm64-fminv.ll
arm64-fml-combines.ll
arm64-fmuladd.ll
arm64-fold-address.ll
arm64-fold-lsl.ll
arm64-fp128-folding.ll
arm64-fp128.ll
arm64-fp-contract-zero.ll
arm64-fp-imm.ll
arm64-fp.ll
arm64-frame-index.ll
arm64-global-address.ll
arm64-hello.ll AArch64: Omit callframe setup/destroy when not necessary 2018-01-19 02:45:38 +00:00
arm64-i16-subreg-extract.ll
arm64-icmp-opt.ll
arm64-illegal-float-ops.ll
arm64-indexed-memory.ll
arm64-indexed-vector-ldst-2.ll
arm64-indexed-vector-ldst.ll
arm64-inline-asm-error-I.ll
arm64-inline-asm-error-J.ll
arm64-inline-asm-error-K.ll
arm64-inline-asm-error-L.ll
arm64-inline-asm-error-M.ll
arm64-inline-asm-error-N.ll
arm64-inline-asm-zero-reg-error.ll
arm64-inline-asm.ll
arm64-join-reserved.ll
arm64-jumptable.ll
arm64-large-frame.ll
arm64-ld1.ll
arm64-ld-from-st.ll
arm64-ldp-aa.ll
arm64-ldp-cluster.ll
arm64-ldp.ll
arm64-ldst-unscaled-pre-post.mir
arm64-ldur.ll
arm64-ldxr-stxr.ll
arm64-leaf.ll
arm64-long-shift.ll
arm64-memcpy-inline.ll
arm64-memset-inline.ll
arm64-memset-to-bzero.ll
arm64-misaligned-memcpy-inline.ll
arm64-misched-basic-A53.ll
arm64-misched-basic-A57.ll
arm64-misched-forwarding-A53.ll [CodeGen] Print RegClasses on MI in verbose mode 2018-01-18 17:59:06 +00:00
arm64-misched-memdep-bug.ll [CodeGen] Print RegClasses on MI in verbose mode 2018-01-18 17:59:06 +00:00
arm64-misched-multimmo.ll
arm64-movi.ll
arm64-mul.ll
arm64-named-reg-alloc.ll
arm64-named-reg-notareg.ll
arm64-narrow-st-merge.ll
arm64-neg.ll
arm64-neon-2velem-high.ll
arm64-neon-2velem.ll
arm64-neon-3vdiff.ll
arm64-neon-aba-abd.ll
arm64-neon-across.ll
arm64-neon-add-pairwise.ll
arm64-neon-add-sub.ll
arm64-neon-compare-instructions.ll
arm64-neon-copy.ll
arm64-neon-copyPhysReg-tuple.ll
arm64-neon-mul-div.ll
arm64-neon-scalar-by-elem-mul.ll
arm64-neon-select_cc.ll
arm64-neon-simd-ldst-one.ll
arm64-neon-simd-shift.ll
arm64-neon-simd-vget.ll
arm64-neon-v1i1-setcc.ll
arm64-neon-v8.1a.ll
arm64-neon-vector-list-spill.ll
arm64-nvcast.ll
arm64-opt-remarks-lazy-bfi.ll
arm64-patchpoint-scratch-regs.ll
arm64-patchpoint-webkit_jscc.ll
arm64-patchpoint.ll
arm64-pic-local-symbol.ll
arm64-platform-reg.ll
arm64-popcnt.ll
arm64-prefetch.ll
arm64-promote-const.ll
arm64-redzone.ll
arm64-reg-copy-noneon.ll
arm64-register-offset-addressing.ll
arm64-register-pairing.ll
arm64-regress-f128csel-flags.ll
arm64-regress-interphase-shift.ll
arm64-regress-opt-cmp.mir
arm64-return-vector.ll
arm64-returnaddr.ll
arm64-rev.ll
arm64-rounding.ll
arm64-scaled_iv.ll
arm64-scvt.ll
arm64-setcc-int-to-fp-combine.ll
arm64-shifted-sext.ll
arm64-shrink-v1i64.ll
arm64-shrink-wrapping.ll AArch64: Omit callframe setup/destroy when not necessary 2018-01-19 02:45:38 +00:00
arm64-simd-scalar-to-vector.ll
arm64-simplest-elf.ll
arm64-sincos.ll
arm64-sitofp-combine-chains.ll
arm64-sli-sri-opt.ll
arm64-smaxv.ll
arm64-sminv.ll
arm64-spill-lr.ll
arm64-spill-remarks-treshold-hotness.ll
arm64-spill-remarks.ll
arm64-spill.ll
arm64-sqshl-uqshl-i64Contant.ll
arm64-st1.ll
arm64-stack-no-frame.ll
arm64-stackmap-nops.ll
arm64-stackmap.ll
arm64-stackpointer.ll
arm64-stacksave.ll
arm64-storebytesmerge.ll
arm64-stp-aa.ll
arm64-stp.ll
arm64-strict-align.ll
arm64-stur.ll
arm64-subsections.ll
arm64-subvector-extend.ll
arm64-summary-remarks.ll
arm64-swizzle-tbl-i16-layout.ll
arm64-tbl.ll
arm64-this-return.ll
arm64-tls-darwin.ll
arm64-tls-dynamic-together.ll
arm64-tls-dynamics.ll
arm64-tls-execs.ll
arm64-trap.ll
arm64-triv-disjoint-mem-access.ll
arm64-trn.ll
arm64-trunc-store.ll
arm64-umaxv.ll
arm64-uminv.ll
arm64-umov.ll
arm64-unaligned_ldst.ll
arm64-uzp.ll
arm64-vaargs.ll
arm64-vabs.ll
arm64-vadd.ll
arm64-vaddlv.ll
arm64-vaddv.ll
arm64-variadic-aapcs.ll
arm64-vbitwise.ll
arm64-vclz.ll
arm64-vcmp.ll
arm64-vcnt.ll
arm64-vcombine.ll
arm64-vcvt_f32_su32.ll
arm64-vcvt_f.ll
arm64-vcvt_n.ll
arm64-vcvt_su32_f32.ll
arm64-vcvt.ll
arm64-vcvtxd_f32_f64.ll
arm64-vecCmpBr.ll
arm64-vecFold.ll
arm64-vector-ext.ll
arm64-vector-imm.ll
arm64-vector-insertion.ll [AArch64] Improve code generation of vector build 2018-01-04 21:43:12 +00:00
arm64-vector-ldst.ll
arm64-vext_reverse.ll
arm64-vext.ll
arm64-vfloatintrinsics.ll
arm64-vhadd.ll
arm64-vhsub.ll
arm64-virtual_base.ll
arm64-vmax.ll
arm64-vminmaxnm.ll
arm64-vmovn.ll
arm64-vmul.ll
arm64-volatile.ll
arm64-vpopcnt.ll
arm64-vqadd.ll
arm64-vqsub.ll
arm64-vselect.ll
arm64-vsetcc_fp.ll
arm64-vshift.ll
arm64-vshr.ll
arm64-vshuffle.ll
arm64-vsqrt.ll
arm64-vsra.ll
arm64-vsub.ll
arm64-weak-reference.ll
arm64-xaluo.ll
arm64-zero-cycle-regmov.ll
arm64-zero-cycle-zeroing.ll
arm64-zeroreg.ll
arm64-zext.ll
arm64-zextload-unscaled.ll
arm64-zip.ll
asm-large-immediate.ll
asm-print-comments.ll
assertion-rc-mismatch.ll
atomic-ops-lse.ll [LegalizeDAG] Fix ATOMIC_CMP_SWAP_WITH_SUCCESS legalization. 2018-01-17 22:04:36 +00:00
atomic-ops-not-barriers.ll
atomic-ops.ll
basic-pic.ll
bics.ll
big-byval.ll AArch64: Omit callframe setup/destroy when not necessary 2018-01-19 02:45:38 +00:00
big-callframe.ll AArch64: Fix emergency spillslot being out of reach for large callframes 2018-01-19 03:16:36 +00:00
bitcast-v2i8.ll
bitcast.ll
bitfield-extract.ll
bitfield-insert-0.ll
bitfield-insert.ll
bitfield.ll
bitreverse.ll
blockaddress.ll
bool-loads.ll
br-cond-not-merge.ll
br-to-eh-lpad.ll
br-undef-cond.ll
branch-folder-merge-mmos.ll
branch-relax-alignment.ll
branch-relax-asm.ll
branch-relax-bcc.ll
branch-relax-cbz.ll
breg.ll
bswap-known-bits.ll
build-one-lane.ll [AArch64] Improve code generation of vector build 2018-01-04 21:43:12 +00:00
callee-save.ll
ccmp-successor-probs.mir
cfi_restore.mir
chkstk.ll
cmp-const-max.ll
cmp-frameindex.ll
cmpwithshort.ll
cmpxchg-idioms.ll
cmpxchg-O0.ll
code-model-large-abs.ll
combine-and-like.ll
combine-comparisons-by-cse.ll
compare-branch.ll
compiler-ident.ll
complex-copy-noneon.ll
complex-fp-to-int.ll
complex-int-to-fp.ll
concat_vector-scalar-combine.ll
concat_vector-truncate-combine.ll
concat_vector-truncated-scalar-combine.ll
cond-br-tuning.ll
cond-sel-value-prop.ll
cond-sel.ll
cpus.ll
csel-zero-float.ll
cxx-tlscc.ll
dag-combine-invaraints.ll
dag-combine-mul-shl.ll
dag-combine-select.ll
dag-numsignbits.ll
directcond.ll
div_minsize.ll
divrem.ll
dllexport.ll [CodeGen] Hoist common AsmPrinter code out of X86, ARM, and AArch64 2018-01-17 23:55:23 +00:00
dllimport.ll
dont-take-over-the-world.ll
dp1.ll
dp2.ll
dp-3source.ll
dwarf-cfi.ll
eliminate-trunc.ll
emutls_generic.ll
emutls.ll
eon.ll
extern-weak.ll
extract.ll
f16-convert.ll
f16-imm.ll
f16-instructions.ll
fadd-combines.ll
falkor-hwpf-fix.ll
falkor-hwpf-fix.mir
falkor-hwpf.ll
fast-isel-address-extends.ll
fast-isel-addressing-modes.ll
fast-isel-assume.ll
fast-isel-atomic.ll
fast-isel-branch_weights.ll
fast-isel-branch-cond-mask.ll
fast-isel-branch-cond-split.ll
fast-isel-call-return.ll
fast-isel-cbz.ll
fast-isel-cmp-branch.ll
fast-isel-cmp-vec.ll
fast-isel-cmpxchg.ll
fast-isel-folded-shift.ll
fast-isel-folding.ll
fast-isel-gep.ll
fast-isel-int-ext2.ll
fast-isel-int-ext3.ll
fast-isel-int-ext4.ll
fast-isel-int-ext5.ll
fast-isel-int-ext.ll
fast-isel-intrinsic.ll
fast-isel-logic-op.ll
fast-isel-memcpy.ll
fast-isel-mul.ll
fast-isel-runtime-libcall.ll
fast-isel-sdiv.ll
fast-isel-select.ll
fast-isel-shift.ll
fast-isel-sp-adjust.ll
fast-isel-sqrt.ll
fast-isel-switch-phi.ll
fast-isel-tail-call.ll
fast-isel-tbz.ll
fast-isel-trunc.ll
fast-isel-vector-arithmetic.ll
fast-isel-vret.ll
fastcc-reserved.ll
fastcc.ll
fcmp.ll
fcopysign.ll
fcsel-zero.ll
fcvt_combine.ll
fcvt-fixed.ll
fcvt-int.ll
fdiv_combine.ll
fdiv-combine.ll
fence-singlethread.ll
flags-multiuse.ll
floatdp_1source.ll
floatdp_2source.ll
fold-constants.ll
fp16-v4-instructions.ll
fp16-v8-instructions.ll
fp16-v16-instructions.ll
fp16-vector-bitcast.ll
fp16-vector-load-store.ll
fp16-vector-nvcast.ll
fp16-vector-shuffle.ll
fp128-folding.ll
fp-cond-sel.ll
fp-dp3.ll
fpconv-vector-op-scalarize.ll
fpimm.ll
fptouint-i8-zext.ll
frameaddr.ll
free-zext.ll
func-argpassing.ll
func-calls.ll AArch64: Omit callframe setup/destroy when not necessary 2018-01-19 02:45:38 +00:00
funcptr_cast.ll
function-subtarget-features.ll
gep-nullptr.ll
ghc-cc.ll
global-alignment.ll
global-merge-1.ll
global-merge-2.ll
global-merge-3.ll
global-merge-4.ll
global-merge-group-by-use.ll
global-merge-ignore-single-use-minsize.ll
global-merge-ignore-single-use.ll
global-merge.ll
got-abuse.ll
half.ll
hints.ll
i1-contents.ll
i128-align.ll
i128-fast-isel-fallback.ll
ifcvt-select.ll
illegal-float-ops.ll
implicit-sret.ll
init-array.ll
inline-asm-constraints-badI.ll
inline-asm-constraints-badK2.ll
inline-asm-constraints-badK.ll
inline-asm-constraints-badL.ll
inline-asm-globaladdress.ll
inlineasm-ldr-pseudo.ll
inlineasm-X-allocation.ll
inlineasm-X-constraint.ll
intrinsics-memory-barrier.ll
jump-table.ll
large_shift.ll
large-consts.ll
ldp-stp-scaled-unscaled-pairs.ll
ldst-opt-aa.mir
ldst-opt-zr-clobber.mir
ldst-opt.ll
ldst-opt.mir [MIR] Repurposing '$' sigil used by external symbols. Replacing with '&'. 2018-01-10 00:56:48 +00:00
ldst-paired-aliasing.ll Revert "[DAG] Elide overlapping stores" 2018-01-15 10:57:24 +00:00
ldst-regoffset.ll
ldst-unscaledimm.ll
ldst-unsignedimm.ll
ldst-zero.ll
legalize-bug-bogus-cpu.ll
lit.local.cfg
literal_pools_float.ll
live-interval-analysis.mir
load-combine-big-endian.ll
load-combine.ll
local_vars.ll
logical_shifted_reg.ll
logical-imm.ll
loh.mir
loop-micro-op-buffer-size-t99.ll
loopvectorize_pr33804_double.ll
lower-range-metadata-func-call.ll
machine_cse_impdef_killflags.ll
machine_cse.ll
machine-combiner-madd.ll
machine-combiner.ll
machine-combiner.mir
machine-copy-prop.ll
machine-copy-remove.ll
machine-copy-remove.mir
machine-dead-copy.mir
machine-outliner-remarks.ll
machine-outliner.ll
machine-outliner.mir [MachineOutliner] Move hasAddressTaken check to MachineOutliner.cpp 2018-01-13 00:42:28 +00:00
machine-scheduler.mir
machine-sink-kill-flags.ll
machine-sink-zr.mir
machine-zero-copy-remove.mir
macho-global-symbols.ll
madd-combiner.ll
madd-lohi.ll
mature-mc-support.ll
max-jump-table.ll
memcpy-f128.ll
merge-store-dependency.ll
merge-store.ll
mergestores_noimplicitfloat.ll
min-jump-table.ll
minmax-of-minmax.ll [ValueTracking] recognize min/max-of-min/max with notted ops (PR35875) 2018-01-11 15:13:47 +00:00
minmax.ll
misched-fusion-aes.ll
misched-fusion-lit.ll
misched-fusion.ll
misched-stp.ll
movimm-wzr.mir
movw-consts.ll
movw-shift-encoding.ll
mul_pow2.ll
mul-lohi.ll
neg-imm.ll
neon-bitcast.ll
neon-bitwise-instructions.ll
neon-compare-instructions.ll
neon-diagnostics.ll
neon-extract.ll
neon-fma-FMF.ll
neon-fma.ll
neon-fpround_f128.ll
neon-idiv.ll
neon-inline-asm-16-bit-fp.ll
neon-mla-mls.ll
neon-mov.ll
neon-or-combine.ll
neon-perm.ll
neon-scalar-by-elem-fma.ll
neon-scalar-copy.ll
neon-shift-left-long.ll
neon-truncStore-extLoad.ll
nest-register.ll
no-fp-asm-clobbers-crash.ll
no-quad-ldp-stp.ll
nonlazybind.ll
nontemporal.ll AArch64: Omit callframe setup/destroy when not necessary 2018-01-19 02:45:38 +00:00
nzcv-save.ll
optimize-cond-branch.ll
optimize-imm.ll
or-combine.ll
paired-load.ll
PBQP-chain.ll
PBQP-coalesce-benefit.ll
PBQP-csr.ll
PBQP.ll
phi-dbg.ll
pic-eh-stubs.ll
pie.ll
postra-mi-sched.ll
pr27816.ll
pr33172.ll
preferred-alignment.ll
preferred-function-alignment.ll
prefixdata.ll
preserve_mostcc.ll
print-mrs-system-register.ll
prologue-epilogue-remarks.mir
ragreedy-csr.ll
rbit.ll
readcyclecounter.ll
recp-fastmath.ll
redundant-copy-elim-empty-mbb.ll
Redundantstore.ll
reg-scavenge-frame.mir
regcoal-physreg.mir
regress-bitcast-formals.ll
regress-f128csel-flags.ll
regress-fp128-livein.ll
regress-tail-livereg.ll
regress-tblgen-chains.ll
regress-w29-reserved-with-fp.ll
rem_crash.ll
remat-float0.ll
remat.ll
returnaddr.ll
rm_redundant_cmp.ll
rotate.ll
round-conv.ll
sched-past-vector-ldst.ll
scheduledag-constreg.mir
sdivpow2.ll
selectcc-to-shiftand.ll
selectiondag-order.ll
setcc-takes-i32.ll
setcc-type-mismatch.ll
shrink-wrap.ll
sibling-call.ll
simple-macho.ll
sincos-expansion.ll
sincospow-vector-expansion.ll
sitofp-fixed-legal.ll
special-reg.ll
spill-fold.ll
spill-undef.mir [MIR] Repurposing '$' sigil used by external symbols. Replacing with '&'. 2018-01-10 00:56:48 +00:00
sqrt-fastmath.ll
stack_guard_remat.ll
stack-guard-remat-bitcast.ll
stack-protector-target.ll
stackmap-frame-setup.ll
stackmap-liveness.ll
store_merge_pair_offset.ll
strqro.ll
subs-to-sub-opt.ll
swift-error.ll
swift-return.ll
swiftcc.ll
swifterror.ll AArch64: Omit callframe setup/destroy when not necessary 2018-01-19 02:45:38 +00:00
swiftself-scavenger.ll
swiftself.ll
tail-call.ll
tailcall_misched_graph.ll
tailcall-ccmismatch.ll
tailcall-explicit-sret.ll AArch64: Omit callframe setup/destroy when not necessary 2018-01-19 02:45:38 +00:00
tailcall-fastisel.ll
tailcall-implicit-sret.ll
tailcall-mem-intrinsics.ll
tailcall-string-rvo.ll
tailmerging_in_mbp.ll
tbi.ll
tbz-tbnz.ll
trunc-v1i64.ll
tst-br.ll
vcvt-oversize.ll
vector_merge_dep_check.ll
vector-fcopysign.ll
win64_vararg.ll
xbfiz.ll
xray-attribute-instrumentation.ll
xray-tail-call-sled.ll
zero-reg.ll