https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68743
--- Comment #23 from Steve Kargl <sgk at troutmask dot apl.washington.edu> --- On Wed, Dec 16, 2015 at 12:23:21AM +0000, dave.anglin at bell dot net wrote: > >> > >> The -fno-builtin option works and gives the best code: > >> > >> stw %r2,-20(%r30) > >> ldo 64(%r30),%r30 > >> .CALL ARGW0=FR,ARGW1=FU > >> bl floor,%r2 > >> fcnvff,sgl,dbl %fr4L,%fr5 > >> fcnvff,dbl,sgl %fr4,%fr4L > >> ldw -84(%r30),%r2 > >> bv %r0(%r2) > >> ldo -64(%r30),%r30 > > > > -fno-builtin would apply to the whole file, and may then > > be a pessimization for other functions in c99_functions.c. > > I believe it would be possible to restrict this to just floorf with > -fno-builtin-floorf. > I didn't know that one could be so selective with -fno-builtin. Learn something new everyday! If you can make configure apply -fno-builtin-floorf to c99_functions.c, then that would be acceptable to me as well.