This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] BZ #19590: Fixed build of shared objects that use libmvec.so functions


2016-02-10 19:13 GMT+03:00 H.J. Lu <hjl.tools@gmail.com>:
> On Wed, Feb 10, 2016 at 8:10 AM, Andrew Senkevich
> <andrew.n.senkevich@gmail.com> wrote:
>> 2016-02-10 16:07 GMT+03:00 Florian Weimer <fweimer@redhat.com>:
>>> On 02/10/2016 01:58 PM, Andrew Senkevich 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.
>>>
>>> Fine, then you can drop the RET (which was present in Carlos' patch).
>>>
>>>>> 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).
>>>
>>> Ugh.  This is a GCC bug, or a lack of a GCC feature.  It needs fixing in
>>> GCC.  Apparently, this hasn't happened for GCC 6.  Is there lack of
>>> agreement that this is a compiler issue?
>>
>> There are thread about it at
>> https://gcc.gnu.org/ml/gcc/2015-06/msg00173.html. I will refresh it
>> soon.
>
> I don't think we should put a GCC bug workaround in glibc. It should
> be fixed or worked around it in GCC.

Since GCC 4.9 vector function name is formed based on asm declaration
name, to support that GCC versions we need to have such workaround.


--
WBR,
Andrew


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]