llvm-project/llvm/test/CodeGen/ARM64
Tilmann Scheller 2c65bbddd8 [ARM64] When compiling for ELF in PIC mode, local symbols shouldn't go through the GOT
There's no need for local symbols to go through the GOT, in fact it seems GNU ld is not even emitting GOT entries for local symbols and will error out when trying to resolve a GOT relocation for a local symbol.

This bug triggers when bootstrapping clang on AArch64 Linux with -fPIC and the ARM64 backend. The AArch64 backend is not affected.

With this commit it's now possible to bootstrap clang on AArch64 Linux with the ARM64 backend (-fPIC, -O3).

llvm-svn: 207226
2014-04-25 13:43:18 +00:00
..
2011-03-09-CPSRSpill.ll
2011-03-17-AsmPrinterCrash.ll
2011-03-21-Unaligned-Frame-Index.ll
2011-04-21-CPSRBug.ll
2011-10-18-LdStOptBug.ll
2012-01-11-ComparisonDAGCrash.ll
2012-05-07-DAGCombineVectorExtract.ll
2012-05-07-MemcpyAlignBug.ll
2012-05-09-LOADgot-bug.ll
2012-05-22-LdStOptBug.ll
2012-06-06-FPToUI.ll ARM64: add constraints to various FastISel operations 2014-04-15 13:59:53 +00:00
2012-07-11-InstrEmitterBug.ll
2013-01-13-ffast-fcmp.ll
2013-01-23-frem-crash.ll
2013-01-23-sext-crash.ll
2013-02-12-shufv8i8.ll
2014-04-16-AnInfiniteLoopInDAGCombine.ll Fix an infinite loop bug in DAG Combine about keeping transfering between ANY_EXTEND and SIGN_EXTEND. 2014-04-22 09:57:06 +00:00
AdvSIMD-Scalar.ll
SafeDivRemIntrinsics-Opts.ll Reapply r206732. This time without optimization of branches. 2014-04-21 12:01:33 +00:00
SafeDivRemIntrinsics.ll Reapply r206732. This time without optimization of branches. 2014-04-21 12:01:33 +00:00
aapcs.ll [ARM64] Handle fp128 for parameter passing on stack 2014-04-25 12:07:03 +00:00
aarch64-large-frame.ll AArch64/ARM64: more testing from AArch64 to ARM64 2014-04-22 12:45:47 +00:00
aarch64-neon-2velem-high.ll AArch64/ARM64: port some NEON tests to ARM64 2014-04-16 15:28:02 +00:00
aarch64-neon-2velem.ll AArch64/ARM64: port some NEON tests to ARM64 2014-04-16 15:28:02 +00:00
aarch64-neon-3vdiff.ll AArch64/ARM64: port some NEON tests to ARM64 2014-04-16 15:28:02 +00:00
aarch64-neon-aba-abd.ll AArch64/ARM64: port some NEON tests to ARM64 2014-04-16 15:28:02 +00:00
aarch64-neon-across.ll AArch64/ARM64: port some NEON tests to ARM64 2014-04-16 15:28:02 +00:00
aarch64-neon-add-pairwise.ll AArch64/ARM64: port some NEON tests to ARM64 2014-04-16 15:28:02 +00:00
aarch64-neon-add-sub.ll AArch64/ARM64: port some NEON tests to ARM64 2014-04-16 15:28:02 +00:00
aarch64-neon-copy.ll AArch64/ARM64: spot a greater variety of concat_vector operations. 2014-04-18 09:31:27 +00:00
aarch64-neon-copyPhysReg-tuple.ll AArch64/ARM64: improve spotting of EXT instructions from VECTOR_SHUFFLE. 2014-04-18 12:50:58 +00:00
aarch64-neon-mul-div.ll AArch64/ARM64: port more AArch64 tests to ARM64. 2014-04-18 13:16:55 +00:00
aarch64-neon-scalar-by-elem-mul.ll AArch64/ARM64: mark fmul intrinsic as commutative. 2014-04-22 10:10:14 +00:00
aarch64-neon-simd-ldst-one.ll AArch64/ARM64: add more NEON tests. 2014-04-18 14:54:53 +00:00
aarch64-neon-simd-shift.ll AArch64/ARM64: add extra testing from AArch64 to ARM64 2014-04-22 12:45:32 +00:00
aarch64-neon-simd-vget.ll AArch64/ARM64: add extra testing from AArch64 to ARM64 2014-04-22 12:45:32 +00:00
aarch64-neon-v1i1-setcc.ll AArch64/ARM64: port more tests 2014-04-24 12:11:46 +00:00
aarch64-neon-vector-list-spill.ll AArch64/ARM64: add extra testing from AArch64 to ARM64 2014-04-22 12:45:32 +00:00
abi-varargs.ll
abi.ll [ARM64] Rename FP to the UAL-compliant 'X29'. 2014-04-09 14:43:50 +00:00
abi_align.ll [ARM64] Rename FP to the UAL-compliant 'X29'. 2014-04-09 14:43:50 +00:00
addp.ll [ARM64] Set default CPU to generic instead of cyclone. 2014-04-15 19:08:46 +00:00
addr-mode-folding.ll Fix some doc and comment typos 2014-04-09 14:47:27 +00:00
addr-type-promotion.ll ARM64: [su]xtw use W regs as inputs, not X regs. 2014-04-17 20:47:31 +00:00
addrmode.ll
alloc-no-stack-realign.ll
alloca-frame-pointer-offset.ll
andCmpBrToTBZ.ll
ands-bad-peephole.ll [ARM64] Fix the information we give to the peephole optimizer for comparison. 2014-04-23 20:43:38 +00:00
anyregcc-crash.ll
anyregcc.ll [Stackmaps] Update the stackmap format to use 64-bit relocations for the function address and properly align all entries. 2014-03-31 22:14:04 +00:00
arith-saturating.ll [ARM64] Set default CPU to generic instead of cyclone. 2014-04-15 19:08:46 +00:00
arith.ll ARM64: [su]xtw use W regs as inputs, not X regs. 2014-04-17 20:47:31 +00:00
arm64-dead-def-elimination-flag.ll Add a flag to disable the ARM64DeadRegisterDefinitionsPass 2014-04-14 21:05:02 +00:00
atomic-128.ll ARM64: switch to IR-based atomic operations. 2014-04-17 20:00:33 +00:00
atomic.ll ARM64: [su]xtw use W regs as inputs, not X regs. 2014-04-17 20:47:31 +00:00
basic-pic.ll ARM64: use GOT for weak symbols & PIC. 2014-04-02 14:39:11 +00:00
big-imm-offsets.ll
big-stack.ll
bitfield-extract.ll ARM64: fix assertion in ISelDAGToDAG 2014-04-25 10:48:47 +00:00
blockaddress.ll
build-vector.ll Fix some doc and comment typos 2014-04-09 14:47:27 +00:00
call-tailcalls.ll
cast-opt.ll
ccmp-heuristics.ll
ccmp.ll
clrsb.ll Add ARM64 CLS patterns 2014-04-11 22:27:58 +00:00
coalesce-ext.ll ARM64: [su]xtw use W regs as inputs, not X regs. 2014-04-17 20:47:31 +00:00
code-model-large-abs.ll
collect-loh-garbage-crash.ll
collect-loh-str.ll
collect-loh.ll ARM64: disable generation of .loh directives outside MachO. 2014-04-18 14:54:46 +00:00
compact-unwind-unhandled-cfi.S
complex-copy-noneon.ll [ARM64] Enable feature predicates for NEON / FP / CRYPTO. 2014-04-23 06:22:48 +00:00
complex-ret.ll
const-addr.ll ARM64: use 32-bit moves for constants where possible. 2014-04-16 11:52:51 +00:00
convert-v2f64-v2i32.ll
convert-v2i32-v2f64.ll
copy-tuple.ll
crc32.ll [ARM64] Support crc predicate on ARM64. 2014-04-25 09:25:42 +00:00
crypto.ll [ARM64] Enable feature predicates for NEON / FP / CRYPTO. 2014-04-23 06:22:48 +00:00
cse.ll
csel.ll ARM64: use 32-bit moves for constants where possible. 2014-04-16 11:52:51 +00:00
cvt.ll
dagcombiner-convergence.ll
dagcombiner-indexed-load.ll Add the ability to use GEPs for address sinking in CGP 2014-04-12 00:59:48 +00:00
dagcombiner-load-slicing.ll
dead-def-frame-index.ll Fix for codegen bug that could cause illegal cmn instruction generation 2014-04-14 21:05:05 +00:00
dead-register-def-bug.ll [ARM64] Teach the ARM64DeadRegisterDefinition pass to respect implicit-defs. 2014-04-03 20:51:08 +00:00
dup.ll ARM64: implement cunning optimisation from AArch64 2014-04-18 09:31:20 +00:00
early-ifcvt.ll
elf-calls.ll
elf-constpool.ll
elf-globals.ll [ARM64] Set default CPU to generic instead of cyclone. 2014-04-15 19:08:46 +00:00
ext.ll
extend-int-to-fp.ll
extend.ll ARM64: [su]xtw use W regs as inputs, not X regs. 2014-04-17 20:47:31 +00:00
extern-weak.ll ARM64: use GOT for weak symbols & PIC. 2014-04-02 14:39:11 +00:00
extload-knownzero.ll
extract.ll
extract_subvector.ll
fast-isel-addr-offset.ll
fast-isel-alloca.ll [ARM64] Rename FP to the UAL-compliant 'X29'. 2014-04-09 14:43:50 +00:00
fast-isel-br.ll [ARM64] Set default CPU to generic instead of cyclone. 2014-04-15 19:08:46 +00:00
fast-isel-call.ll [ARM64] Rename FP to the UAL-compliant 'X29'. 2014-04-09 14:43:50 +00:00
fast-isel-conversion.ll [ARM64] Print preferred aliases for SFBM/UBFM in InstPrinter 2014-04-25 10:25:29 +00:00
fast-isel-fcmp.ll
fast-isel-gv.ll
fast-isel-icmp.ll
fast-isel-indirectbr.ll
fast-isel-intrinsic.ll
fast-isel-materialize.ll
fast-isel-noconvert.ll
fast-isel-rem.ll
fast-isel-ret.ll
fast-isel-select.ll
fast-isel.ll
fastcc-tailcall.ll
fastisel-gep-promote-before-add.ll
fcmp-opt.ll ARM64: explicitly ask for Apple NEON syntax so test passes on Linux 2014-04-16 09:13:44 +00:00
fcopysign.ll
fixed-point-scalar-cvt-dagcombine.ll
fmadd.ll ARM64: fix fmsub patterns which assumed accum operand was first 2014-04-08 12:23:51 +00:00
fmax.ll
fminv.ll ARM64: shuffle patterns around for fmin/fmax & add tests. 2014-03-31 15:46:30 +00:00
fmuladd.ll
fold-address.ll
fold-lsl.ll [ARM64] Print preferred aliases for SFBM/UBFM in InstPrinter 2014-04-25 10:25:29 +00:00
fp-imm.ll [ARM64] Fix materialization of an fp128 zero immediate. There currently 2014-03-31 00:02:10 +00:00
fp.ll
fp128-folding.ll
fp128.ll AArch64/ARM64: make use of ANDS and BICS instructions for comparisons. 2014-04-22 12:45:42 +00:00
frame-index.ll
frameaddr.ll [ARM64] Rename LR to the UAL-compliant 'X30'. 2014-04-09 14:43:59 +00:00
global-address.ll
hello.ll [ARM64] Rename LR to the UAL-compliant 'X30'. 2014-04-09 14:43:59 +00:00
i16-subreg-extract.ll
icmp-opt.ll
illegal-float-ops.ll ARM64: fix lowering of fp128 fptosi/fptoui 2014-04-02 14:39:07 +00:00
indexed-memory.ll
inline-asm-error-I.ll
inline-asm-error-J.ll
inline-asm-error-K.ll
inline-asm-error-L.ll
inline-asm-error-M.ll
inline-asm-error-N.ll
inline-asm-zero-reg-error.ll
inline-asm.ll
join-reserved.ll
jumptable.ll
ld1.ll ARM64: add patterns for more lane-wise ld1/st1 operations. 2014-04-01 10:37:09 +00:00
ldp.ll
ldur.ll
ldxr-stxr.ll ARM64: add acquire/release versions of the existing atomic intrinsics. 2014-04-17 20:00:24 +00:00
leaf-compact-unwind.ll
leaf.ll
lit.local.cfg
long-shift.ll ARM64: use 32-bit moves for constants where possible. 2014-04-16 11:52:51 +00:00
memcpy-inline.ll
memset-inline.ll
memset-to-bzero.ll
misched-basic-A53.ll [ARM64] Ports the Cortex-A53 Machine Model description from AArch64. 2014-04-18 21:22:04 +00:00
movi.ll
mul.ll
neg.ll ARM64: add extra scalar neg pattern & tests. 2014-03-31 15:46:42 +00:00
neon-compare-instructions.ll
neon-v1i1-setcc.ll DAGLegalize: add last-ditch type-legalization for VSELECT. 2014-04-04 14:49:30 +00:00
patchpoint.ll ARM64: use 32-bit moves for constants where possible. 2014-04-16 11:52:51 +00:00
pic-local-symbol.ll [ARM64] When compiling for ELF in PIC mode, local symbols shouldn't go through the GOT 2014-04-25 13:43:18 +00:00
platform-reg.ll
popcnt.ll
prefetch.ll
promote-const.ll [ARM64] Set default CPU to generic instead of cyclone. 2014-04-15 19:08:46 +00:00
redzone.ll
reg-copy-noneon.ll [ARM64] Enable feature predicates for NEON / FP / CRYPTO. 2014-04-23 06:22:48 +00:00
register-offset-addressing.ll
register-pairing.ll
regress-f128csel-flags.ll
regress-interphase-shift.ll Revert r191049/r191059 as it can produce wrong code (see PR17975). 2014-04-15 18:34:24 +00:00
return-vector.ll
returnaddr.ll [ARM64] Rename LR to the UAL-compliant 'X30'. 2014-04-09 14:43:59 +00:00
rev.ll ARM64: remove buggy REV16 pattern. 2014-04-14 12:59:52 +00:00
rounding.ll [ARM64] Set default CPU to generic instead of cyclone. 2014-04-15 19:08:46 +00:00
scaled_iv.ll
scvt.ll
shifted-sext.ll [ARM64] Print preferred aliases for SFBM/UBFM in InstPrinter 2014-04-25 10:25:29 +00:00
simd-scalar-to-vector.ll [ARM64] Set default CPU to generic instead of cyclone. 2014-04-15 19:08:46 +00:00
simplest-elf.ll
sincos.ll ARM64: don't generate __sincos_stret calls unless on MachO 2014-04-03 07:06:13 +00:00
sitofp-combine-chains.ll
sli-sri-opt.ll
smaxv.ll
sminv.ll
spill-lr.ll
spill.ll ARM64: specify triple so that Linux tests pass 2014-04-16 12:03:56 +00:00
st1.ll ARM64: add patterns for more lane-wise ld1/st1 operations. 2014-04-01 10:37:09 +00:00
stack-no-frame.ll
stackmap.ll [Stackmaps] Update the stackmap format to use 64-bit relocations for the function address and properly align all entries. 2014-03-31 22:14:04 +00:00
stacksave.ll
stp.ll [ARM64] Set default CPU to generic instead of cyclone. 2014-04-15 19:08:46 +00:00
strict-align.ll AArch64/ARM64: implement BFI optimisation 2014-04-24 12:11:53 +00:00
stur.ll [ARM64] Set default CPU to generic instead of cyclone. 2014-04-15 19:08:46 +00:00
subsections.ll ARM64: don't emit .subsections_via_symbols on ELF. 2014-04-18 14:54:41 +00:00
subvector-extend.ll
swizzle-tbl-i16-layout.ll
tbl.ll
this-return.ll
tls-darwin.ll
tls-dynamic-together.ll
tls-dynamics.ll
tls-execs.ll
trap.ll
trn.ll
trunc-store.ll ARM64: [su]xtw use W regs as inputs, not X regs. 2014-04-17 20:47:31 +00:00
umaxv.ll
uminv.ll
umov.ll
unaligned_ldst.ll
uzp.ll
vaargs.ll
vabs.ll ARM64: add i64 scalar pattern for @llvm.arm64.abs 2014-03-31 15:46:17 +00:00
vadd.ll
vaddlv.ll
vaddv.ll [ARM64] Set default CPU to generic instead of cyclone. 2014-04-15 19:08:46 +00:00
variadic-aapcs.ll
vbitwise.ll
vclz.ll
vcmp.ll ARM64: add pattern for <1 x i64> custom not node. 2014-04-09 06:55:39 +00:00
vcnt.ll
vcombine.ll
vcvt.ll
vcvt_f.ll ARM64: convert fp16 narrowing ISel to pseudo-instruction 2014-04-02 14:38:54 +00:00
vcvt_f32_su32.ll
vcvt_n.ll
vcvt_su32_f32.ll
vcvtxd_f32_f64.ll
vecCmpBr.ll [ARM64] Set default CPU to generic instead of cyclone. 2014-04-15 19:08:46 +00:00
vecFold.ll
vector-ext.ll
vector-imm.ll
vector-insertion.ll Make test/CodeGen/ARM64/vector-insertion.ll explicitly select neon syntax 2014-04-17 21:32:41 +00:00
vector-ldst.ll
vext.ll
vfloatintrinsics.ll
vhadd.ll
vhsub.ll
virtual_base.ll
vmax.ll
vminmaxnm.ll
vmovn.ll
vmul.ll ARM64: scalarize v1i64 mul operation 2014-04-09 07:07:02 +00:00
volatile.ll
vpopcnt.ll [ARM64] Fix "Cannot select" for vector ctpop 2014-04-17 01:01:37 +00:00
vqadd.ll ARM64: add more scalar patterns for usqadd & suqadd. 2014-03-31 15:46:26 +00:00
vqsub.ll
vselect.ll Fix an infinite loop bug in DAG Combine about keeping transfering between ANY_EXTEND and SIGN_EXTEND. 2014-04-22 09:57:06 +00:00
vsetcc_fp.ll
vshift.ll ARM64: add extra NEG pattern. 2014-04-18 14:54:35 +00:00
vshr.ll [ARM64] Set default CPU to generic instead of cyclone. 2014-04-15 19:08:46 +00:00
vshuffle.ll [ARM64] Set default CPU to generic instead of cyclone. 2014-04-15 19:08:46 +00:00
vsqrt.ll ARM64: add more scalar patterns for reciprocal ops. 2014-03-31 15:46:22 +00:00
vsra.ll ARM64: add extra patterns for scalar shifts 2014-03-31 15:46:46 +00:00
vsub.ll
weak-reference.ll
xaluo.ll
zero-cycle-regmov.ll
zero-cycle-zeroing.ll
zext.ll
zextload-unscaled.ll
zip.ll