On October 9, 2014 8:40:49 PM CEST, Andrew Pinski <pins...@gmail.com> wrote: >On Thu, Oct 9, 2014 at 11:32 AM, Steve Ellcey <sell...@mips.com> wrote: >> On Thu, 2014-10-09 at 11:27 -0700, Andrew Pinski wrote: >> >>> > Is there a reason why GCC couldn't (under -ffast-math) call the >single >>> > precision routines for the first case? >>> >>> There is no reason why it could not. The reason why it does not >>> currently is because there is no pass which does the demotion and >the >>> only case of demotion that happens is with a simple >>> (float)function((double)float_val); >>> >>> Thanks, >>> Andrew >> >> Do you know which pass does the simple >> '(float)function((double)float_val)' demotion? Maybe that would be a >> good place to extend things. > >Yes builtins.c.
I think it is in convert.c. but both are not passes really. Richard. >> >> Steve Ellcey >>