This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

-mfpmath=sse -mno-80387 troubles


Hello,

I'm yet again into troubles with -mfpmath=sse and with various gcc4
versions, a 15 days old cvs checkout included.
I have a function that when forced to be inlined in conjunction with
-mno-80387 causes an ICE. If i remove the -mno-80387 switch, no more
ICE, but i'm seeing a whole bunch of fpu comparisons and load/store
(not in that function by nearby) the net result being a ~10%
performance drop.

So:
a) should i fill a bug report for those ICEs (given that they happen
in unusual condtions)
b) i've already reported about the SSE/387 mixing, and it's been
closed, and i've seen new PR about that (ie
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19653) and some patches
flying around... so the question is should i report again, try an even
more recent gcc or wait a bit?

Here's the kind of ICE i'm running into.
src\raytrace_mono.cpp(365): error:  insn does not satisfy its constraints:
(insn 965 933 966 12 src\raytrace_mono.cpp:358 (set (reg:CCFPU 17 flags)
        (compare:CCFPU (reg:SF 9 st(1))
            (reg:SF 8 st))) 28 {*cmpfp_iu_sse_only} (nil)
    (expr_list:REG_DEAD (reg:SF 9 st(1))
        (expr_list:REG_DEAD (reg:SF 8 st)
            (nil))))
src\raytrace_mono.cpp(365): internal compiler error:  in
build_def_use, at regrename.c:761


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]