This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH] Fix __builtin_printf/all long double builtins (revised)
- From: Jack Howarth <howarth at bromo dot msbb dot uc dot edu>
- To: gcc-patches at gcc dot gnu dot org
- Cc: geoffk at apple dot com, mrs at apple dot com, pinskia at gmail dot com
- Date: Thu, 31 May 2007 09:16:14 -0400
- Subject: Re: [PATCH] Fix __builtin_printf/all long double builtins (revised)
- References: <20070527110034.GA23833@bromo.msbb.uc.edu>
Can anyone explain the following behavior exhibited by
Andrew's patch (in all revisions of gcc trunk I've tested
so far starting with 108803 which the patch was creatd against)?
The test case that Andrew used does indeed work with his
original patch...
http://gcc.gnu.org/ml/gcc-patches/2005-12/txt00089.txt
int main(void)
{
long double a =10.0L;
__builtin_printf("%Lf\t%Lf\n", a,a);
}
produces a binary on Darwin PPC that now has...
U _printf$LDBL128
however if one includes the stdio.h header in the testcase
the symbol becomes...
00002b90 t _printf$LDBLStub
I think this is why I am having so much trouble with
any additional testcases. Any code that includes a header
which declares long double math functions seem to be immune
to the changes made to the builtins. I suspect if we fix
this issue with his test case failing when the stdio.h
is used we likely fix the fortran situation as well.
Jack