https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104778
Bug ID: 104778 Summary: [12 Regression] ICE in simplify_subreg, at simplify-rtx.cc:7324 Product: gcc Version: 12.0 Status: UNCONFIRMED Keywords: ice-on-valid-code Severity: normal Priority: P3 Component: rtl-optimization Assignee: unassigned at gcc dot gnu.org Reporter: asolokha at gmx dot com Target Milestone: --- Target: powerpc-*-linux-gnu Created attachment 52560 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=52560&action=edit Testcase gcc 12.0.1 20220227 snapshot (g:d1574a9b820f17adb9004255e2018967e9be063b) ICEs when compiling the attached testcase w/ -mcpu=a2 -Og -g: % powerpc-e300c3-linux-gnu-gcc-12.0.1 -mcpu=a2 -Og -g -c poy2oawm.c during RTL pass: vartrack poy2oawm.c: In function 'foo': poy2oawm.c:47:1: internal compiler error: in simplify_subreg, at simplify-rtx.cc:7324 47 | } | ^ 0x6ad8e4 simplify_context::simplify_subreg(machine_mode, rtx_def*, machine_mode, poly_int<1u, unsigned long>) /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-12.0.1_p20220227/work/gcc-12-20220227/gcc/simplify-rtx.cc:7324 0xe76f89 simplify_context::simplify_gen_subreg(machine_mode, rtx_def*, machine_mode, poly_int<1u, unsigned long>) /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-12.0.1_p20220227/work/gcc-12-20220227/gcc/simplify-rtx.cc:7602 0x11c9e59 simplify_gen_subreg(machine_mode, rtx_def*, machine_mode, poly_int<1u, unsigned long>) /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-12.0.1_p20220227/work/gcc-12-20220227/gcc/rtl.h:3534 0x11c9e59 vt_expand_loc_callback /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-12.0.1_p20220227/work/gcc-12-20220227/gcc/var-tracking.cc:8524 0x9e432d cselib_expand_value_rtx_1 /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-12.0.1_p20220227/work/gcc-12-20220227/gcc/cselib.cc:1848 0x9e4269 cselib_expand_value_rtx_1 /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-12.0.1_p20220227/work/gcc-12-20220227/gcc/cselib.cc:1921 0x9e4269 cselib_expand_value_rtx_1 /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-12.0.1_p20220227/work/gcc-12-20220227/gcc/cselib.cc:1921 0x9e4269 cselib_expand_value_rtx_1 /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-12.0.1_p20220227/work/gcc-12-20220227/gcc/cselib.cc:1921 0x9e5b7e cselib_expand_value_rtx_cb(rtx_def*, bitmap_head*, int, rtx_def* (*)(rtx_def*, bitmap_head*, int, void*), void*) /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-12.0.1_p20220227/work/gcc-12-20220227/gcc/cselib.cc:1731 0x11c9a23 vt_expand_var_loc_chain /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-12.0.1_p20220227/work/gcc-12-20220227/gcc/var-tracking.cc:8420 0x11ca01d vt_expand_loc_callback /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-12.0.1_p20220227/work/gcc-12-20220227/gcc/var-tracking.cc:8583 0x9e4516 cselib_expand_value_rtx_1 /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-12.0.1_p20220227/work/gcc-12-20220227/gcc/cselib.cc:1883 0x9e5b7e cselib_expand_value_rtx_cb(rtx_def*, bitmap_head*, int, rtx_def* (*)(rtx_def*, bitmap_head*, int, void*), void*) /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-12.0.1_p20220227/work/gcc-12-20220227/gcc/cselib.cc:1731 0x11c9a23 vt_expand_var_loc_chain /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-12.0.1_p20220227/work/gcc-12-20220227/gcc/var-tracking.cc:8420 0x11ca01d vt_expand_loc_callback /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-12.0.1_p20220227/work/gcc-12-20220227/gcc/var-tracking.cc:8583 0x9e5b7e cselib_expand_value_rtx_cb(rtx_def*, bitmap_head*, int, rtx_def* (*)(rtx_def*, bitmap_head*, int, void*), void*) /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-12.0.1_p20220227/work/gcc-12-20220227/gcc/cselib.cc:1731 0x11c9e22 vt_expand_loc_callback /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-12.0.1_p20220227/work/gcc-12-20220227/gcc/var-tracking.cc:8517 0x9e432d cselib_expand_value_rtx_1 /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-12.0.1_p20220227/work/gcc-12-20220227/gcc/cselib.cc:1848 0x9e5b7e cselib_expand_value_rtx_cb(rtx_def*, bitmap_head*, int, rtx_def* (*)(rtx_def*, bitmap_head*, int, void*), void*) /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-12.0.1_p20220227/work/gcc-12-20220227/gcc/cselib.cc:1731 0x11c9a23 vt_expand_var_loc_chain /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-12.0.1_p20220227/work/gcc-12-20220227/gcc/var-tracking.cc:8420