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

            Bug ID: 123542
           Summary: ice in in decide_about_value, at ipa-cp.cc:6039
           Product: gcc
           Version: 16.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c
          Assignee: unassigned at gcc dot gnu.org
          Reporter: dcb314 at hotmail dot com
  Target Milestone: ---

This old C code:

double cos(double);
void sub(p1, p2, p3, p4, p5, p6) float p1, p2, p3, *p4, p5, p6;
{
  float ar2 = cos(*p4);
  if (p2)
    ar2 = 0.0;
  for (;;)
    *p4 += ar2;
}
void main() { sub(1.0, 2.0); }

does this with recent gcc:

cvise $ ~/gcc/results/bin/gcc -c -w -O2 bug1170.c
cvise $ ~/gcc/results/bin/gcc -c -w -O3 bug1170.c
during IPA pass: cp
bug1170.c:10:1: internal compiler error: in decide_about_value, at
ipa-cp.cc:6039
   10 | void main() { sub(1.0, 2.0); }
      | ^~~~
0x1f97cc7 internal_error
       
/home/dcb42/gcc/working/gcc/../../trunk/gcc/diagnostic-global-context.cc:787
0x1fa150b fancy_abort
        /home/dcb42/gcc/working/gcc/../../trunk/gcc/diagnostics/context.cc:1805
0x1ccf07f decide_whether_version_node
        /home/dcb42/gcc/working/gcc/../../trunk/gcc/ipa-cp.cc:0
0x1cc4da8 ipcp_decision_stage
        /home/dcb42/gcc/working/gcc/../../trunk/gcc/ipa-cp.cc:6548
0x1cc4da8 ipcp_driver
        /home/dcb42/gcc/working/gcc/../../trunk/gcc/ipa-cp.cc:6744
0x1cc2965 ???
        /home/dcb42/gcc/working/gcc/../../trunk/gcc/ipa-cp.cc:6821
Please submit a full bug report, with preprocessed source (by using
-freport-bug).
Please include the complete backtrace with any bug report.
See <https://gcc.gnu.org/bugs/> for instructions.
Preprocessed source stored into /tmp/ccR1VBXz.out file, please attach this to
your bugreport.
cvise $ 

The compiler is:

cvise $ ~/gcc/results/bin/gcc -v
Using built-in specs.
COLLECT_GCC=/home/dcb42/gcc/results/bin/gcc
COLLECT_LTO_WRAPPER=/home/dcb42/gcc/results.20260111.asan.ubsan/libexec/gcc/x86_64-pc-linux-gnu/16.0.0/lto-wrapper
Target: x86_64-pc-linux-gnu
Configured with: ../trunk/configure
--prefix=/home/dcb42/gcc/results.20260111.asan.ubsan --disable-bootstrap
--disable-doc --disable-multilib --with-build-config='bootstrap-asan
bootstrap-ubsan' --with-pkgversion=87222af419eb272d --with-isl
--enable-checking=df,extra,fold,rtl,yes --enable-languages=c,c++,fortran
Thread model: posix
Supported LTO compression algorithms: zlib zstd
gcc version 16.0.0 20260111 (experimental) (87222af419eb272d) 
cvise $ 

The code seems to first go wrong sometime between
g:edda700714843ebc and g:87222af419eb272d.

Reply via email to