Tail calls and floating-point types
Nathan Sidwell
nathan@codesourcery.com
Fri Sep 10 09:25:00 GMT 2004
Richard Sandiford wrote:
> Andrew Pinski <pinskia@physics.uc.edu> writes:
>
>>> * tree-tailcall.c (process_assignment): Only do accumulator
>>> optimisations if the function has an integral return type.
>>>
>>>testsuite/
>>> * gcc.c-torture/execute/ieee/acc1.c: New test.
>>> * gcc.c-torture/execute/ieee/acc2.c: New test.
>>> * gcc.c-torture/execute/ieee/mzero6.c: New test.
>>
>>Note this is the same as PR 17385.
>
>
> Thanks for the pointer. Unfortunately, the updated patch only avoids
> the ICE for !flag_unsafe_math_optimizations, but I forgot the update
> the changelog appropriately. It should really have read:
>
> * tree-tailcall.c (process_assignment): Only do accumulator transforms
> for floating-point types if flag_unsafe_math_optimizations.
>
> So I don't think it's appropriate to mark this patch as fix for the PR.
> The reported bug will still be present if you use -funsafe-math-optimizations
> on similar code. I think the only true fix wuld be to revert Nathan's patch
> or change it in some way.
I will take care of that. I recall that because this wasn't guarded by
any unsafe-maths stuff, that I concluded it couldn't be floating. (Like
the compiler has no flaws, doh!)
nathan
--
Nathan Sidwell :: http://www.codesourcery.com :: CodeSourcery LLC
nathan@codesourcery.com :: http://www.planetfall.pwp.blueyonder.co.uk
More information about the Gcc-patches
mailing list