On Fri, Mar 2, 2018 at 8:55 AM, Jeff Law <l...@redhat.com> wrote:
> On 03/02/2018 09:38 AM, Thomas Schwinge wrote:
>> Hi!
>>
>> On Fri, 26 Jan 2018 16:24:48 +0100, Martin Liška <mli...@suse.cz> wrote:
>>> This fixes detection of ifunc target capability.
>>> I'm going to install the patch.
>>
>> You could also just have approved the patch I had sent two months before:
>> <http://mid.mail-archive.com/87fu9aiemr.fsf@euler.schwinge.homeip.net>.
>> ;-)
>>
>> One remark:
>>
>>> --- a/gcc/testsuite/lib/target-supports.exp
>>> +++ b/gcc/testsuite/lib/target-supports.exp
>>> @@ -449,7 +449,7 @@ proc check_ifunc_available { } {
>>>      extern "C" {
>>>      #endif
>>>      typedef void F (void);
>>> -    F* g (void) {}
>>> +    F* g (void) { return 0; }
>>>      void f () __attribute__ ((ifunc ("g")));
>>>      #ifdef __cplusplus
>>>      }
>>
>> Is it OK to "return 0" from this ifunc handler, or might some analysis in
>> GCC trip over that (at some later point)?  In my patch, I returned the
>> address of an "extern" function.
> ISTM the question is whether or not ifuncs are ever allowed to return
> NULL.  Maybe ping the glibc folks since that's where the extension started?

No, ifunc selector should never return NULL.

-- 
H.J.

Reply via email to