On 06/03/11 18:41, Julian Brown wrote:
On Thu, 02 Jun 2011 16:35:01 +0100
Richard Earnshaw<rearn...@arm.com>  wrote:

I see Paul has already approved this, but I've just spotted one
potential problem that might cause latent bugs sometime in the future.

The code to register the libcalls is only run once, the first time we
try to look up a libcall.  If we ever end up allowing dynamic changing
of CPU and optimization options, not registering the other libcalls
will lead to subtle problems at run time.  I suggest that these
functions be unconditionally added along with the other libcalls.
Done.

I also don't understand why all the tests are needed in
arm_init_cumulative_args?  Surely arm_libcall_uses_aapcs_base() will
already have run that test.
I did some archaeology to try to figure out why things were like that
(the patch was written a while ago) -- and yeah, it looks like it's
completely unnecessary to have those tests in arm_init_cumulative_args.
That bit of code was refactored a while ago, and it looks like the
patch wasn't ever updated properly. My mistake!

I'm re-testing the attached version.

Thanks,

Julian

ChangeLog

     gcc/
     * config/arm/arm.c (arm_libcall_uses_aapcs_base): Use correct ABI
     for double-precision helper functions in hard-float mode if only
     single-precision arithmetic is supported in hardware.

OK.

R.

Reply via email to