https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100263
Jakub Jelinek <jakub at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Last reconfirmed| |2021-04-26 Ever confirmed|0 |1 Status|UNCONFIRMED |NEW Summary|Wrong removal of statement |[11/12 Regression] Wrong |in copyprop3 |removal of statement in | |copyprop3 Target Milestone|--- |11.2 CC| |jakub at gcc dot gnu.org, | |rguenth at gcc dot gnu.org Priority|P3 |P2 --- Comment #1 from Jakub Jelinek <jakub at gcc dot gnu.org> --- In can confirm it is r11-39-gf9e1ea10e657af9fb02fafecf1a600740fd34409 Before lim2 the dump is identical, lim2 dump difference between r11-38 and r11-39 is: --- pr100263.c.131t.lim2.r11-38 2021-04-26 15:54:38.623719858 +0200 +++ pr100263.c.131t.lim2.r11-39 2021-04-26 15:54:53.982545411 +0200 @@ -165,26 +165,23 @@ main () j_lsm_flag.23_69 = 0; k_lsm.24_70 = k; k_lsm_flag.25_71 = 0; - l_lsm.26_72 = l; - l_lsm_flag.27_73 = 0; - c__lsm.20_74 = MEM[(char *)&c + 107B]; - c__lsm_flag.21_75 = 0; + l_lsm_flag.27_72 = 0; + c__lsm_flag.21_73 = 0; h.4_5 = h; - b_lsm.28_76 = b; - b_lsm_flag.29_77 = 0; + b_lsm_flag.29_74 = 0; <bb 3> [local count: 10321168952]: # b.12_44 = PHI <b.0_1(18), _32(23)> - # c__lsm.20_50 = PHI <c__lsm.20_74(18), c__lsm.20_51(23)> - # c__lsm_flag.21_52 = PHI <c__lsm_flag.21_75(18), c__lsm_flag.21_53(23)> + # c__lsm.20_50 = PHI <c__lsm.20_75(D)(18), c__lsm.20_51(23)> + # c__lsm_flag.21_52 = PHI <c__lsm_flag.21_73(18), c__lsm_flag.21_53(23)> # j_lsm.22_54 = PHI <j_lsm.22_68(18), j_lsm.22_55(23)> # j_lsm_flag.23_56 = PHI <j_lsm_flag.23_69(18), j_lsm_flag.23_57(23)> # k_lsm.24_58 = PHI <k_lsm.24_70(18), k_lsm.24_59(23)> # k_lsm_flag.25_60 = PHI <k_lsm_flag.25_71(18), k_lsm_flag.25_61(23)> - # l_lsm.26_62 = PHI <l_lsm.26_72(18), l_lsm.26_63(23)> - # l_lsm_flag.27_64 = PHI <l_lsm_flag.27_73(18), l_lsm_flag.27_65(23)> - # b_lsm.28_66 = PHI <b_lsm.28_76(18), b_lsm.28_101(23)> - # b_lsm_flag.29_67 = PHI <b_lsm_flag.29_77(18), b_lsm_flag.29_102(23)> + # l_lsm.26_62 = PHI <l_lsm.26_76(D)(18), l_lsm.26_63(23)> + # l_lsm_flag.27_64 = PHI <l_lsm_flag.27_72(18), l_lsm_flag.27_65(23)> + # b_lsm.28_66 = PHI <b_lsm.28_77(D)(18), b_lsm.28_101(23)> + # b_lsm_flag.29_67 = PHI <b_lsm_flag.29_74(18), b_lsm_flag.29_102(23)> if (a.1_7 != 0) goto <bb 4>; [50.00%] else I can reproduce the same problem even when replacing char *n = &c[3][8][2]; *n = 1; with c[3][8][2] = 1;