Hi,

While discussing the issue with the command line option for sincos here:
http://gcc.1065356.n5.nabble.com/PATCH-bionic-Add-foptimize-sincos-tp940918.html

Richard wrote:
> I'd rather think about a way to specify, for all known builtins, whether GCC
> should generate calls to such function where they are not in the source
> program.  That is, similar to how we have -f[no-]builtin-FOO introduce
> -f[no-]libc-FOO (with a better name for 'libc'?).  That way there would be
> a way to specify that -floop-distribute-patterns should not produce calls
> to memset () for example.

This patch is related to that idea: in the target hook
libc_has_function we can check whether
the compiler should generate calls to a particular function or not.
The command line support for
each function could be the next step.

Could you please take a look?

thanks
Alexander

2013/4/23 Alexander Ivchenko <aivch...@gmail.com>:
> *ping*
>
> thanks
> Alexander
>
> 2013/3/28 Alexander Ivchenko <aivch...@gmail.com>:
>> Hi,
>>
>> 4.8 is now branched, lets come back to the discussion that we had
>> before. I updated the patch a little
>> bit since we now have linux-protos.h and linux-android.c files.
>>
>> I tried to preserve the avaiability of c99 for all targets, but it's
>> pretty difficult, because we are changing
>> the defaults. Passing an empty string as second argument doesn't look
>> very good, but on the other hand
>> the user has one clear way for checking the presence of a certain
>> function. But of course we can create
>> another function, that will call targetm.libc_has_function
>> (function_class, "") within itself.
>>
>> best regards,
>> Alexander
>>
>> 2013/1/7 Joseph S. Myers <jos...@codesourcery.com>:
>>> On Fri, 21 Dec 2012, Alexander Ivchenko wrote:
>>>
>>>> Hi,
>>>>
>>>> Thank you very much for your input! Please, take a look at the updated 
>>>> version:
>>>> I fixed coding style, moved documentation for TARGET_LIBC_HAS_FUNCTION
>>>> to target.def.
>>>> Removed TARGET_C99_FUNCTIONS and TARGET_HAS_SINCOS and all their
>>>> influence and moved the implementation of linux_libc_has_function to
>>>> host-linux.c.
>>>>       I changed the defaults: now it is assumed that we have C99 runtime,
>>>> but no sincos. I updated all needed gcc/config/*.h. But 'm not sure in
>>>> this part,
>>>> cause I don't have the opportunity to test it properly...
>>>
>>> This patch seems mostly plausible, though there are various places that
>>> call targetm.libc_has_function with and empty string as second argument,
>>> that should be naming the specific function instead.  I haven't reviewed
>>> the details, and at this development stage I think it will need to wait
>>> until after 4.8 branches.
>>>
>>> --
>>> Joseph S. Myers
>>> jos...@codesourcery.com

Reply via email to