bug-binutils
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Bug gas/25295] Gas should have way to define symbol version without exp


From: hubicka at gcc dot gnu.org
Subject: [Bug gas/25295] Gas should have way to define symbol version without exporting its target
Date: Mon, 06 Apr 2020 13:09:01 +0000

https://sourceware.org/bugzilla/show_bug.cgi?id=25295

--- Comment #3 from Jan Hubicka <hubicka at gcc dot gnu.org> ---
self contained testcase is in comment #1.
Compiling it leads to following assembly:
        .file   "t.c"
        .text
        .p2align 4
        .globl  foo
        .type   foo, @function
foo:
.LFB0:
        .cfi_startproc
        ret
        .cfi_endproc
.LFE0:
        .size   foo, .-foo
        .symver foo, foo@VERS_1
        .ident  "GCC: (GNU) 10.0.1 20200404 (experimental)"
        .section        .note.GNU-stack,"",@progbits

which translates object file defining both foo and foo@VERS_1

0000000000000000 T foo
0000000000000000 T foo@VERS_1

that in turn require user to hide foo in the linker script.

This is bad since foo must be user defined name and we thus can not support
things like multiple symver aliases on one definition.

.symver does two things
 - define syntactic alias that says that whenever foo appears in source file we
really refer to foo@VERS_1
 - export foo and foo@VERS_1

I think we want new pseudo that does only the first (but it is not clear to me
why symver was implemented this was at first place).

-- 
You are receiving this mail because:
You are on the CC list for the bug.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]