From 0fa7d86440de0124efaf11ced82875d39a2296bc Mon Sep 17 00:00:00 2001 From: YunQiang Su Date: Mon, 3 Jul 2023 12:43:21 +0800 Subject: [PATCH] ld: fix plugin tests for MIPS PIC On MIPS, for PIC objects, symbols may reference 2 times: once from the caller, and once from GOT. Thus ld may complains 2 times about "undefined reference". So we add a new "#?" line to every effected testsuite. --- ld/testsuite/ld-plugin/plugin-14.d | 1 + ld/testsuite/ld-plugin/plugin-15.d | 1 + ld/testsuite/ld-plugin/plugin-16.d | 1 + ld/testsuite/ld-plugin/plugin-20.d | 1 + ld/testsuite/ld-plugin/plugin-21.d | 1 + ld/testsuite/ld-plugin/plugin-22.d | 1 + ld/testsuite/ld-plugin/plugin-23.d | 1 + ld/testsuite/ld-plugin/plugin-6.d | 1 + ld/testsuite/ld-plugin/plugin-7.d | 1 + ld/testsuite/ld-plugin/plugin-8.d | 1 + 10 files changed, 10 insertions(+) diff --git a/ld/testsuite/ld-plugin/plugin-14.d b/ld/testsuite/ld-plugin/plugin-14.d index bd8ef65a204..1209713d5ee 100644 --- a/ld/testsuite/ld-plugin/plugin-14.d +++ b/ld/testsuite/ld-plugin/plugin-14.d @@ -30,5 +30,6 @@ hook called: claim_file tmpdir/text.o \[@0/.* not claimed hook called: all symbols read. .*: tmpdir/main.o: in function `main': .*main.c.*: undefined reference to `\.?func' +#?.*main.c.*: undefined reference to `\.?func' hook called: cleanup. #... diff --git a/ld/testsuite/ld-plugin/plugin-15.d b/ld/testsuite/ld-plugin/plugin-15.d index 1647500e98f..a5304abeb0b 100644 --- a/ld/testsuite/ld-plugin/plugin-15.d +++ b/ld/testsuite/ld-plugin/plugin-15.d @@ -31,5 +31,6 @@ hook called: claim_file tmpdir/text.o \[@0/.* not claimed hook called: all symbols read. .*: tmpdir/main.o: in function `main': .*main.c.*: undefined reference to `\.?func' +#?.*main.c.*: undefined reference to `\.?func' hook called: cleanup. #... diff --git a/ld/testsuite/ld-plugin/plugin-16.d b/ld/testsuite/ld-plugin/plugin-16.d index f1ee03a4768..a166fcbdbb4 100644 --- a/ld/testsuite/ld-plugin/plugin-16.d +++ b/ld/testsuite/ld-plugin/plugin-16.d @@ -35,5 +35,6 @@ Sym: '_?func' Resolution: LDPR_PREVAILING_DEF Sym: '_?func2' Resolution: LDPR_PREVAILING_DEF_IRONLY .*: tmpdir/main.o: in function `main': .*main.c.*: undefined reference to `\.?func' +#?.*main.c.*: undefined reference to `\.?func' hook called: cleanup. #... diff --git a/ld/testsuite/ld-plugin/plugin-20.d b/ld/testsuite/ld-plugin/plugin-20.d index e3c724df636..109971add2d 100644 --- a/ld/testsuite/ld-plugin/plugin-20.d +++ b/ld/testsuite/ld-plugin/plugin-20.d @@ -4,4 +4,5 @@ Sym: '_?func' Resolution: LDPR_PREVAILING_DEF.* Sym: '_?func' Resolution: LDPR_PREVAILING_DEF.* .*: tmpdir/main.o: in function `main': .*main.c.*: undefined reference to `\.?func' +#?.*main.c.*: undefined reference to `\.?func' hook called: cleanup. diff --git a/ld/testsuite/ld-plugin/plugin-21.d b/ld/testsuite/ld-plugin/plugin-21.d index 0b85f7151e4..e9586d541af 100644 --- a/ld/testsuite/ld-plugin/plugin-21.d +++ b/ld/testsuite/ld-plugin/plugin-21.d @@ -4,4 +4,5 @@ Sym: '_?func' Resolution: LDPR_PREVAILING_DEF.* Sym: '_?func' Resolution: LDPR_PREVAILING_DEF.* .*: tmpdir/main.o: in function `main': .*main.c.*: undefined reference to `\.?func' +#?.*main.c.*: undefined reference to `\.?func' hook called: cleanup. diff --git a/ld/testsuite/ld-plugin/plugin-22.d b/ld/testsuite/ld-plugin/plugin-22.d index 381ac03c052..f87f2a5cb23 100644 --- a/ld/testsuite/ld-plugin/plugin-22.d +++ b/ld/testsuite/ld-plugin/plugin-22.d @@ -4,4 +4,5 @@ Sym: '_?func' Resolution: LDPR_PREVAILING_DEF.* Sym: '_?func' Resolution: LDPR_PREVAILING_DEF.* .*: tmpdir/main.o: in function `main': .*main.c.*: undefined reference to `\.?func' +#?.*main.c.*: undefined reference to `\.?func' hook called: cleanup. diff --git a/ld/testsuite/ld-plugin/plugin-23.d b/ld/testsuite/ld-plugin/plugin-23.d index 0b6c25c1d1e..d4fdb74bc67 100644 --- a/ld/testsuite/ld-plugin/plugin-23.d +++ b/ld/testsuite/ld-plugin/plugin-23.d @@ -4,4 +4,5 @@ Sym: '_?func' Resolution: LDPR_PREVAILING_DEF.* Sym: '_?func' Resolution: LDPR_PREVAILING_DEF.* .*: tmpdir/main.o: in function `main': .*main.c.*: undefined reference to `\.?func' +#?.*main.c.*: undefined reference to `\.?func' hook called: cleanup. diff --git a/ld/testsuite/ld-plugin/plugin-6.d b/ld/testsuite/ld-plugin/plugin-6.d index 41f44fbc37e..a969a27793a 100644 --- a/ld/testsuite/ld-plugin/plugin-6.d +++ b/ld/testsuite/ld-plugin/plugin-6.d @@ -30,5 +30,6 @@ hook called: claim_file tmpdir/text.o \[@0/.* not claimed hook called: all symbols read. .*: tmpdir/main.o: in function `main': .*main.c.*: undefined reference to `\.?func' +#?.*main.c.*: undefined reference to `\.?func' hook called: cleanup. #... diff --git a/ld/testsuite/ld-plugin/plugin-7.d b/ld/testsuite/ld-plugin/plugin-7.d index b202edc863e..2222302dc5b 100644 --- a/ld/testsuite/ld-plugin/plugin-7.d +++ b/ld/testsuite/ld-plugin/plugin-7.d @@ -31,5 +31,6 @@ hook called: claim_file tmpdir/text.o \[@0/.* not claimed hook called: all symbols read. .*: tmpdir/main.o: in function `main': .*main.c.*: undefined reference to `\.?func' +#?.*main.c.*: undefined reference to `\.?func' hook called: cleanup. #... diff --git a/ld/testsuite/ld-plugin/plugin-8.d b/ld/testsuite/ld-plugin/plugin-8.d index 0a38ddb1e4e..f29df64c368 100644 --- a/ld/testsuite/ld-plugin/plugin-8.d +++ b/ld/testsuite/ld-plugin/plugin-8.d @@ -35,5 +35,6 @@ Sym: '_?func' Resolution: LDPR_PREVAILING_DEF Sym: '_?func2' Resolution: LDPR_PREVAILING_DEF_IRONLY .*: tmpdir/main.o: in function `main': .*main.c.*: undefined reference to `\.?func' +#?.*main.c.*: undefined reference to `\.?func' hook called: cleanup. #... -- 2.30.2