Re: question about gcc name mangling for gnu multiversion

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

 



On Mon, Oct 14, 2013 at 2:13 PM, Melanie B <mib.bugzilla@xxxxxxxxx> wrote:
> The gcc name mangling for gnu multiversions includes a _Znum_ prefix
> e.g. the test case in the gcc testsuite named mv1.C
>
>        .quad   _Z13_Z3foov.ifuncv
>         call    _Z13_Z3foov.ifuncv
>         .globl  _Z13_Z3foov.ifuncv
>         .type   _Z13_Z3foov.ifuncv, @gnu_indirect_function
>         .set    _Z13_Z3foov.ifuncv,_Z3foov.resolver
>  Is the _Z13 prefix needed? It seems like the .ifunc suffix would be adequate.
>
>  grep ifunc *.s | grep call
> mv12.s: call    _Z13_Z3foov.ifuncv
> mv12.s: call    _Z13_Z3foov.ifuncv
> mv1.s:  call    _Z13_Z3foov.ifuncv
> mv2.s:  call    _Z13_Z3foov.ifuncv
> mv5.s:  call    _Z13_Z3foov.ifuncv
> mv6.s:  call    _Z19_ZN3Foo3fooEv.ifuncP3Foo
>
> Do you expect the name mangling will be added to a standards document?

I don't know the details of this work, but I do know that a _Z13
prefix followed by 13 arbitrary bytes will be demangled sensibly by
the existing C++ demangler.

Ian




[Index of Archives]     [Linux C Programming]     [Linux Kernel]     [eCos]     [Fedora Development]     [Fedora Announce]     [Autoconf]     [The DWARVES Debugging Tools]     [Yosemite Campsites]     [Yosemite News]     [Linux GCC]

  Powered by Linux