[PATCH] BZ #19590: Fixed build of shared objects that use libmvec.so functions
H.J. Lu
hjl.tools@gmail.com
Wed Feb 10 16:09:00 GMT 2016
On Wed, Feb 10, 2016 at 8:07 AM, Andrew Senkevich
<andrew.n.senkevich@gmail.com> wrote:
> 2016-02-10 16:15 GMT+03:00 H.J. Lu <hjl.tools@gmail.com>:
>> On Wed, Feb 10, 2016 at 4:58 AM, Andrew Senkevich
>> <andrew.n.senkevich@gmail.com> wrote:
>>> 2016-02-10 15:08 GMT+03:00 Florian Weimer <fweimer@redhat.com>:
>>>> On 02/10/2016 12:36 PM, Andrew Senkevich wrote:
>>>>
>>>>> #define ALIAS_IMPL(alias, target) \
>>>>> ENTRY (alias); \
>>>>> - call target; \
>>>>> + call target@PLT; \
>>>>> ret; \
>>>>> END (alias)
>>>>
>>>> This needs a comment why this cannot be a tail call (JMP).
>>>
>>> Yes, it should be jmp.
>>>
>>>> Out of curiosity, why is it not possible to avoid this indirection? Why
>>>> is this logic required in libmvec_nonshared.a?
>>>
>>> It is workaround to exclude unnecessary symbol aliases in libmvec.so
>>> (BZ #19058).
>>>
>>
>> Can you fold libmvec_nonshared.a into libmvec,so?
>
> It is possible but I am not sure it is Ok with point that unnecessary
> ABI extension should be limited..
>
Should the workaround be in GCC? Otherwise, it will be used
even when compiler works fine.
--
H.J.
More information about the Libc-alpha
mailing list