diff options
author | H.J. Lu <hjl.tools@gmail.com> | 2024-08-24 08:33:46 -0700 |
---|---|---|
committer | H.J. Lu <hjl.tools@gmail.com> | 2024-08-28 05:48:55 -0700 |
commit | 86db7e7da8081bb8de5235ecefe03d2a9686ceda (patch) | |
tree | ece9a39500804841b2449ccc1d9ed53832ef44c6 /gold | |
parent | 93ea177e95d8e4a678c7e726254d12dce2d7c7de (diff) | |
download | fsf-binutils-gdb-86db7e7da8081bb8de5235ecefe03d2a9686ceda.zip fsf-binutils-gdb-86db7e7da8081bb8de5235ecefe03d2a9686ceda.tar.gz fsf-binutils-gdb-86db7e7da8081bb8de5235ecefe03d2a9686ceda.tar.bz2 |
gold: Use asm for GCC 9 and older in PR gold/31830 tests
Since GCC 9 and older fail to compile PR gold/31830 tests:
$ gcc -S testsuite/ver_test_pr31830_b.c -o /tmp/x.s
testsuite/ver_test_pr31830_b.c:3:1: warning: ‘__symver__’ attribute directive ignored [-Wattributes]
void __collector_foo_2_2(void) {}
^~~~
use asm statement, instead of symver attribute, for GCC 9 and older.
PR gold/31830
* testsuite/ver_test_pr31830_b.c (__collector_foo_2_2): Use asm
statement, instead of symver attribute, for GCC 9 and older.
symver attribute with __asm__.
* testsuite/ver_test_pr31830_lto.c (__collector_foo_2_2): Likewise.
Signed-off-by: H.J. Lu <hjl.tools@gmail.com>
Diffstat (limited to 'gold')
-rw-r--r-- | gold/testsuite/ver_test_pr31830_b.c | 4 | ||||
-rw-r--r-- | gold/testsuite/ver_test_pr31830_lto.c | 4 |
2 files changed, 8 insertions, 0 deletions
diff --git a/gold/testsuite/ver_test_pr31830_b.c b/gold/testsuite/ver_test_pr31830_b.c index aba07cc..4464d05 100644 --- a/gold/testsuite/ver_test_pr31830_b.c +++ b/gold/testsuite/ver_test_pr31830_b.c @@ -1,3 +1,7 @@ extern void __collector_foo_2_2(void); +#if defined(__GNUC__) && __GNUC__ >= 10 __attribute__((__symver__("foo@GLIBC_2.2.5"))) +#else +__asm__ (".symver __collector_foo_2_2, foo@GLIBC_2.2.5"); +#endif void __collector_foo_2_2(void) {} diff --git a/gold/testsuite/ver_test_pr31830_lto.c b/gold/testsuite/ver_test_pr31830_lto.c index 999dd63..862ac68 100644 --- a/gold/testsuite/ver_test_pr31830_lto.c +++ b/gold/testsuite/ver_test_pr31830_lto.c @@ -1,5 +1,9 @@ extern __inline __attribute__((__gnu_inline__)) void foo(void) {} extern void __collector_foo_2_2(void); +#if defined(__GNUC__) && __GNUC__ >= 10 __attribute__((__symver__("foo@GLIBC_2.2.5"))) +#else +__asm__ (".symver __collector_foo_2_2, foo@GLIBC_2.2.5"); +#endif void __collector_foo_2_2(void) {} void foo(void) {} |