This is the mail archive of the newlib@sourceware.org mailing list for the newlib 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: long double (was "strtold?")


Ken Werner wrote:
On Wednesday 25 March 2009 16:58:48 Ken Werner wrote:
Hi,

The attached patch uses __asm__ () instead of asm () to map the long double
functions as this doesn't pollute the name space and prevents compiler
errors, e.g. if build with -std=c99.

This patch has also being discussed as part of another thread starting
with: http://sourceware.org/ml/newlib/2009/msg00303.html.

Regards
Ken

Hi,


Because of the recent changes to math.h I re-based my patch.
Are there any objections or is it ok to apply?

Thanks
Ken

My apologies for the delay in reviewing this. According to the gcc info:

********************************************************************************
You can specify the name to be used in the assembler code for a C
function or variable by writing the `asm' (or `__asm__') keyword after
the declarator as follows:

int foo asm ("myfoo") = 2;

This specifies that the name to be used for the variable `foo' in the
assembler code should be `myfoo' rather than the usual `_foo'.

On systems where an underscore is normally prepended to the name of a C
function or variable, this feature allows you to define names for the
linker that do not start with an underscore.
********************************************************************************

If the platform normally prepends an underscore to a C function, you are not going to call
the correct C math functions and the linker is going to fail. Feel free to correct me if I have misinterpreted
this.


Thus, I would like to see this implemented as it is done for DOUBLE_IS32BITS. The functions
are declared and implemented as calls to the double versions with casts.


-- Jeff J.


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