From ef0cc92e9cd7a589e441389167a8d4fb2fe46367 Mon Sep 17 00:00:00 2001 From: Alan Modra Date: Tue, 22 Oct 2019 07:42:58 +1030 Subject: [PATCH] Don't allow RELATIVE relocs in pr22269 testcase At least, not in the GOT. R_PPC64_RELATIVE is fine for powerpc64 in the .opd section. PR 22269 * testsuite/ld-elf/pr22269-1.rd: Look for GOT section NONE and RELATIVE relocs. * testsuite/ld-elf/shared.exp (pr22269-1): Give test a better name. Use -z nocombreloc. --- ld/ChangeLog | 8 ++++++++ ld/testsuite/ld-elf/pr22269-1.rd | 6 ++++-- ld/testsuite/ld-elf/shared.exp | 4 ++-- 3 files changed, 14 insertions(+), 4 deletions(-) diff --git a/ld/ChangeLog b/ld/ChangeLog index a5d6dd9d561..8f64296c079 100644 --- a/ld/ChangeLog +++ b/ld/ChangeLog @@ -1,3 +1,11 @@ +2019-10-22 Alan Modra + + PR 22269 + * testsuite/ld-elf/pr22269-1.rd: Look for GOT section NONE and + RELATIVE relocs. + * testsuite/ld-elf/shared.exp (pr22269-1): Give test a better + name. Use -z nocombreloc. + 2019-10-19 Alan Modra PR ld/25110 diff --git a/ld/testsuite/ld-elf/pr22269-1.rd b/ld/testsuite/ld-elf/pr22269-1.rd index 9df3c38581b..afad19cf81d 100644 --- a/ld/testsuite/ld-elf/pr22269-1.rd +++ b/ld/testsuite/ld-elf/pr22269-1.rd @@ -1,5 +1,7 @@ -# NONE relocs are not needed in a PIE. +# There should not be any NONE or RELATIVE relocs for foo #failif #... -[0-9a-f]+ +[0-9a-f]+ +R_.*_NONE.* +Relocation section '\.rela?\.got' .* + Offset +Info +Type .* +[0-9a-f]+ +[0-9a-f]+ +R_.*_(NONE|RELATIVE).* #pass diff --git a/ld/testsuite/ld-elf/shared.exp b/ld/testsuite/ld-elf/shared.exp index 820570084a2..02ec6f3a1b8 100644 --- a/ld/testsuite/ld-elf/shared.exp +++ b/ld/testsuite/ld-elf/shared.exp @@ -781,8 +781,8 @@ run_cc_link_tests $build_tests run_ld_link_tests [list \ [list \ - "Build pr22269-1" \ - "-pie -e _start --no-dynamic-linker -z text" \ + "pr22269-1 (static pie undefined weak)" \ + "-pie -e _start --no-dynamic-linker -z text -z nocombreloc " \ "" \ "$AFLAGS_PIC" \ { pr22269-1.c } \ -- 2.30.2