https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94526
Bug ID: 94526
Summary: [10 Regression] cselib ICE building glibc sigpause for
m68k and microblaze
Product: gcc
Version: 10.0
Status: UNCONFIRMED
Keywords: ice-on-valid-code
Severity: normal
Priority: P3
Component: middle-end
Assignee: unassigned at gcc dot gnu.org
Reporter: jsm28 at gcc dot gnu.org
CC: jakub at gcc dot gnu.org
Target Milestone: ---
Target: m68k-*-* microblaze*-*-*
Created attachment 48235
--> https://gcc.gnu.org/bugzilla/attachment.cgi?id=48235&action=edit
preprocessed source
The following ICE appears building glibc for m68k-linux-gnu, introduced by
commit 8662d0593438ecd498ab7591ad0d2810886eb6da ("cselib: Fix endless cselib
loop on (plus:P (reg) (const_int 0))"). This also appears for microblaze,
though I haven't bisected there to confirm the same commit introduces it.
Preprocessed source attached. Compile with -g -O2.
during RTL pass: vartrack
../sysdeps/posix/sigpause.c: In function '__default_sigpause':
../sysdeps/posix/sigpause.c:57:1: internal compiler error: in new_elt_loc_list,
at cselib.c:300
0x7cfe6b new_elt_loc_list
/scratch/jmyers/glibc/many10/src/gcc/gcc/cselib.c:298
0x7d2c54 cselib_lookup_1
/scratch/jmyers/glibc/many10/src/gcc/gcc/cselib.c:2301
0x7d2c54 cselib_lookup(rtx_def*, machine_mode, int, machine_mode)
/scratch/jmyers/glibc/many10/src/gcc/gcc/cselib.c:2330
0xfaa4b8 use_type
/scratch/jmyers/glibc/many10/src/gcc/gcc/var-tracking.c:5517
0xfab397 add_uses
/scratch/jmyers/glibc/many10/src/gcc/gcc/var-tracking.c:5678
0xfab397 add_uses_1
/scratch/jmyers/glibc/many10/src/gcc/gcc/var-tracking.c:5832
0xfa8abc add_with_sets
/scratch/jmyers/glibc/many10/src/gcc/gcc/var-tracking.c:6589
0x7d5c6f cselib_record_sets
/scratch/jmyers/glibc/many10/src/gcc/gcc/cselib.c:2835
0x7d71ca cselib_process_insn(rtx_insn*)
/scratch/jmyers/glibc/many10/src/gcc/gcc/cselib.c:2997
0xfb097d vt_initialize
/scratch/jmyers/glibc/many10/src/gcc/gcc/var-tracking.c:10228
0xfbdc57 variable_tracking_main_1
/scratch/jmyers/glibc/many10/src/gcc/gcc/var-tracking.c:10457
0xfbdc57 variable_tracking_main()
/scratch/jmyers/glibc/many10/src/gcc/gcc/var-tracking.c:10510
0xfbdc57 execute
/scratch/jmyers/glibc/many10/src/gcc/gcc/var-tracking.c:10547
Please submit a full bug report,
with preprocessed source if appropriate.
Please include the complete backtrace with any bug report.
See <https://gcc.gnu.org/bugs/> for instructions.