set AFLAGS_PIC ""
if [istarget "sparc*-*-*"] {
append AFLAGS_PIC " -K PIC -Av9"
+} elseif [istarget ia64-*-*] {
+ append AFLAGS_PIC " -x"
+}
+
+set ldflags "-pie -e _start -z text"
+if [istarget arm*-*-*] {
+ append ldflags " --defsym __aeabi_read_tp=0"
+} elseif [istarget m68*-*-*] {
+ append ldflags " --defsym __m68k_read_tp=0"
+} elseif [istarget microblaze-*-*] {
+ append ldflags " --defsym __tls_get_addr=0"
}
run_ld_link_tests [list \
[list \
- "Build pr22263-1" \
- "-pie -e _start -z text" \
+ "pr22263-1 -z text" \
+ $ldflags \
"" \
"$AFLAGS_PIC" \
{ pr22263-1a.c pr22263-1b.c } \
- {{readelf -r pr22263-1.rd}} \
+ {} \
"pr22263-1" \
"-fPIE -O2 $NOSANITIZE_CFLAGS" \
] \
]
+
+if [file exists tmpdir/pr22263-1] {
+ run_ld_link_tests [list \
+ [list \
+ "pr22263-1 tprel optimisation" \
+ $ldflags \
+ "tmpdir/pr22263-1a.o tmpdir/pr22263-1b.o" \
+ "" \
+ {} \
+ {{readelf -r pr22263-1.rd}} \
+ "pr22263-1" \
+ "" \
+ ] \
+ ] ia64-*-* m68*-*-* nios2-*-* s390-*-* sh*-*-*
+}