https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64503

            Bug ID: 64503
           Summary: [5 Regression] gcc.dg/ipa/iinline-4.c:210:1: internal
                    compiler error: Floating point exception
           Product: gcc
           Version: 5.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: ipa
          Assignee: unassigned at gcc dot gnu.org
          Reporter: ubizjak at gmail dot com

Recently compiler starts to crash with the Floating point exception on several
IPA related testcases, where -fdump-ipa-inline is used. One example is:

/space/uros/gcc-build/gcc/xgcc -B/space/uros/gcc-build/gcc/
/space/homedirs/uros/gcc-svn/trunk/gcc/testsuite/gcc.dg/ipa/iinline-4.c
-fno-diagnostics-show-caret -fdiagnostics-color=never -O3 -fdump-ipa-inline
-fno-early-inlining -fno-ipa-icf -S  -o iinline-4.s

/space/homedirs/uros/gcc-svn/trunk/gcc/testsuite/gcc.dg/ipa/iinline-4.c:210:1:
internal compiler error: Floating point exception
0x1207c7743 crash_signal
        ../../gcc-svn/trunk/gcc/toplev.c:359
0x1207abf0c sreal::to_double() const
        ../../gcc-svn/trunk/gcc/sreal.c:125
0x120c92be7 inline_small_functions
        ../../gcc-svn/trunk/gcc/ipa-inline.c:1723
0x120c92be7 ipa_inline
        ../../gcc-svn/trunk/gcc/ipa-inline.c:2185
0x120c92be7 execute
        ../../gcc-svn/trunk/gcc/ipa-inline.c:2558
Please submit a full bug report,
...

This problem can also bw seen on x86_64-linux-gnu with the above testcase. In
the iinline-4.c.055i.inline dump file, badness is estimated to -inf:

...
Considering hiphip4.constprop/36 with 6 size
 to be inlined into test4/14 in unknown:-1
 Estimated badness is -inf, frequency 1.00.
 Inlined into test4 which now has time 16 and size 8,net change of -8.
New minimal size reached: 160

(and several other occurrences)
...

Please note that x86_64 is "immune" to infinities by default, where alpha needs
special FP instructions to handle overflow traps. While this can be done (build
the compiler with -mieee), it looks that something went wrong with the badness
estimation.

Reply via email to