https://gcc.gnu.org/bugzilla/show_bug.cgi?id=118490
Bug ID: 118490
Summary: [15 Regression] ICE Indefinite recursion transforming
exp-log with -frounding-math since
r15-5116-ge232dc3bb5c3e8
Product: gcc
Version: 15.0
Status: UNCONFIRMED
Keywords: ice-on-valid-code
Severity: normal
Priority: P3
Component: middle-end
Assignee: unassigned at gcc dot gnu.org
Reporter: mjires at gcc dot gnu.org
CC: soumyaa at gcc dot gnu.org
Target Milestone: ---
Compiling reduced testcase gcc.dg/builtins-17.c results in ICE since
r15-5116-ge232dc3bb5c3e8.
Backtrace shows indefinite recursion switching between generic_simplify_365
(exps) and generic_simplify_366 (logs) which were added in mentioned patch.
$ cat builtins-17.c
double exp(double);
int foo(int v) {
return v && exp(1.) < 2.;
}
$ gcc builtins-17.c -ffast-math -frounding-math -Wlogical-op
gcc: internal compiler error: Segmentation fault signal terminated program cc1
Please submit a full bug report, with preprocessed source (by using
-freport-bug).
See <https://gcc.gnu.org/bugs/> for instructions.
$ gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/home/mjires/built/master/libexec/gcc/x86_64-pc-linux-gnu/15.0.1/lto-wrapper
Target: x86_64-pc-linux-gnu
Configured with: /home/mjires/git/GCC/master/configure
--prefix=/home/mjires/built/master --disable-bootstrap
--enable-languages=c,c++,fortran,lto --disable-multilib --disable-libsanitizer
--enable-checking
Thread model: posix
Supported LTO compression algorithms: zlib zstd
gcc version 15.0.1 20250115 (experimental) (GCC)