https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80436
Jakub Jelinek <jakub at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |jakub at gcc dot gnu.org Target Milestone|--- |7.0 --- Comment #3 from Jakub Jelinek <jakub at gcc dot gnu.org> --- This seems to go wrong during loop splitting, there is highly undesirable change in the *.lsplit dump: e_95 -> { e_14 } +b.0_96 -> { b.0_16 } Incremental SSA update started at block: 42 Number of blocks in CFG: 46 -Number of blocks to update: 5 ( 11%) +Number of blocks to update: 10 ( 22%) ... int _94; + int b.0_96; <bb 2> [0.29%]: ... # f_43 = PHI <f_27(6)> # a_lsm.15_24 = PHI <a_lsm.15_38(6)> + # b.0_96 = PHI <b.0_16(6)> <bb 8> [50.00%]: # .MEM_52 = PHI <.MEM_9(7), .MEM_52(9)> # f_51 = PHI <f_43(7), b.3_44(9)> # a_lsm.15_50 = PHI <a_lsm.15_24(7), 0B(9)> # a_lsm.16_49 = PHI <0(7), 1(9)> + # DEBUG f => f_51 + # DEBUG D#3 => (unsigned int) b.0_96 + # DEBUG f => D#3 That extra b.0_96 PHI has been added because there is a debug use of b.0_16 and we want to rewrite it into loop closed SSA form.