Re: Is it possible to make gcc detect whether printf prints floating point numbers?

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


On 06/08/2012 10:57 AM, Bin.Cheng wrote:
> On Fri, Jun 8, 2012 at 5:14 PM, Andrew Haley <aph@xxxxxxxxxx> wrote:
>> [Redirect to gcc-help]
>>
>> On 06/08/2012 09:54 AM, Bin.Cheng wrote:
>>> In micro-controller applications, code size is critical and the size
>>> problem is worse if library is linked.
>>> For example, most c programs call printf to format output data, that
>>> means floating point code get linked even the program only want to
>>> output non-floating point numbers. Currently, we rely on end-user to
>>> call iprintf if the program does not want floating point.
>>>
>>> I noticed that GCC now can check format string of printf functions, so
>>> I am wondering if it is possible to take advantage of this utility, by
>>> making gcc detect whether printf prints floating point number and then
>>> generate assembly directive in backend to pull in floating point
>>> functions only if necessary.
>>
>> It wouldn't be at all difficult, but you'd have to change gcc.
>>
> 
> Thanks Andrew.
> How about the question:
> The check is done in front end, so how should I expose the check
> result to back-end.

I wouldn't.  I'd just call printf or iprintf, depending on the
use of floating-point.

Andrew.



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

Add to Google