diff options
Diffstat (limited to 'ld')
-rw-r--r-- | ld/testsuite/ld-aarch64/aarch64-elf.exp | 9 | ||||
-rw-r--r-- | ld/testsuite/ld-aarch64/copy-reloc-protected.d | 2 | ||||
-rw-r--r-- | ld/testsuite/ld-aarch64/protected.s | 8 |
3 files changed, 19 insertions, 0 deletions
diff --git a/ld/testsuite/ld-aarch64/aarch64-elf.exp b/ld/testsuite/ld-aarch64/aarch64-elf.exp index 64476f1..3116227 100644 --- a/ld/testsuite/ld-aarch64/aarch64-elf.exp +++ b/ld/testsuite/ld-aarch64/aarch64-elf.exp @@ -407,6 +407,8 @@ set aarch64elflinktests { {copy-reloc-exe-2.s} {{objdump -R copy-reloc-2.d}} "copy-reloc-2"} {"ld-aarch64/exe with copy relocation elimination" "-e0 tmpdir/copy-reloc-so.so" "" "" {copy-reloc-exe-eliminate.s} {{objdump -R copy-reloc-eliminate.d}} "copy-reloc-elimination"} + {"Build .so with protected data" "-shared" "" "" {protected.s} + {} "protected.so"} {"ld-aarch64/so with global func" "-shared" "" "" {func-in-so.s} {} "func-in-so.so"} {"ld-aarch64/func sym hash opt for exe" @@ -416,8 +418,15 @@ set aarch64elflinktests { {} "libbti-plt-so.so"} } +set aarch64elfcclinktests [list \ + [list "copy relocation on protected data" \ + "-no-pie tmpdir/copy-reloc-exe.o tmpdir/protected.so" "" \ + {} {{error_output copy-reloc-protected.d}} "copy-reloc-protected"] +] + if [check_shared_lib_support] { run_ld_link_tests $aarch64elflinktests + run_cc_link_tests $aarch64elfcclinktests } run_dump_test "bti-plt-3" diff --git a/ld/testsuite/ld-aarch64/copy-reloc-protected.d b/ld/testsuite/ld-aarch64/copy-reloc-protected.d new file mode 100644 index 0000000..99a356a --- /dev/null +++ b/ld/testsuite/ld-aarch64/copy-reloc-protected.d @@ -0,0 +1,2 @@ +.*: tmpdir/copy-reloc-exe.o: copy relocation against non-copyable protected symbol `global_a' +#... diff --git a/ld/testsuite/ld-aarch64/protected.s b/ld/testsuite/ld-aarch64/protected.s new file mode 100644 index 0000000..eb3fb40 --- /dev/null +++ b/ld/testsuite/ld-aarch64/protected.s @@ -0,0 +1,8 @@ +.global global_a +.protected global_a +.type global_a, %object +.size global_a, 4 + +.data +global_a: +.word 0xcafedead |