https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80436
Bug ID: 80436 Summary: [7 Regression] -fcompare-debug failure Product: gcc Version: 7.0.1 Status: UNCONFIRMED Severity: normal Priority: P3 Component: debug Assignee: unassigned at gcc dot gnu.org Reporter: trippels at gcc dot gnu.org Target Milestone: --- markus@x4 tmp % cat df-problems.ii void fn1(...); void fn2(int, int, int); struct { int elt1; int bits; } * a; int b, d; int fn3(unsigned *p1) { if (0) next_bit: return 1; while (1) { if (b) if (a->bits) goto next_bit; *p1 = b; if (a->elt1) return 0; a = 0; } } enum {} * c; void fn4() { int e, m(d); for (; e < m; e++) { if (e < 0) fn2(0, 0, c[e]); unsigned f; for (; fn3(&f);) fn1(f); } } markus@x4 tmp % g++ --save-temps -fcompare-debug -c -O3 df-problems.ii g++: error: df-problems.ii: -fcompare-debug failure markus@x4 tmp % diff -u df-problems.gkd df-problems.gk.gkd --- df-problems.gkd 2017-04-15 08:35:08.338387771 +0200 +++ df-problems.gk.gkd 2017-04-15 08:35:08.388386688 +0200 @@ -236,7 +236,7 @@ (code_label # 0 0 4 36 (nil) [2 uses]) (note # 0 0 [bb 4] NOTE_INSN_BASIC_BLOCK) (insn:TI # 0 0 4 (parallel [ - (set (reg:DI 1 dx [orig:118 a_lsm.16 ] [118]) + (set (reg:DI 1 dx [orig:117 a_lsm.16 ] [117]) (const_int 0 [0])) (clobber (reg:CC 17 flags)) ]) "df-problems.ii":16# {*movdi_xor} @@ -246,7 +246,7 @@ (compare:CCZ (reg:SI 2 cx [orig:126 b.0_59 ] [126]) (const_int 0 [0])))# {*cmpsi_ccno_1} (nil)) -(insn # 0 0 4 (set (reg/f:DI 0 ax [orig:113 a_lsm.15 ] [113]) +(insn # 0 0 4 (set (reg/f:DI 0 ax [orig:112 a_lsm.15 ] [112]) (mem/f/c:DI (symbol_ref:DI ("a") [flags 0x2] <var_decl # a>) [ a+0 S8 A64]))# {*movdi_internal} (nil)) (jump_insn:TI # 0 0 4 (set (pc) @@ -265,12 +265,12 @@ (barrier # 0 0) (code_label # 0 0 6 60 (nil) [1 uses]) (note # 0 0 [bb 6] NOTE_INSN_BASIC_BLOCK) -(insn:TI # 0 0 6 (set (reg:QI 1 dx [orig:118 a_lsm.16 ] [118]) +(insn:TI # 0 0 6 (set (reg:QI 1 dx [orig:117 a_lsm.16 ] [117]) (const_int 1 [0x1])) "df-problems.ii":17# {*movqi_internal} (expr_list:REG_EQUAL (const_int 1 [0x1]) (nil))) (insn # 0 0 6 (parallel [ - (set (reg/f:DI 0 ax [orig:113 a_lsm.15 ] [113]) + (set (reg/f:DI 0 ax [orig:112 a_lsm.15 ] [112]) (const_int 0 [0])) (clobber (reg:CC 17 flags)) ]) "df-problems.ii":19# {*movdi_xor} @@ -279,7 +279,7 @@ (code_label # 0 0 7 33 (nil) [1 uses]) (note # 0 0 [bb 7] NOTE_INSN_BASIC_BLOCK) (insn:TI # 0 0 7 (set (reg:SI 37 r8) - (mem:SI (reg/f:DI 0 ax [orig:113 a_lsm.15 ] [113]) [ a_lsm.15_80->elt1+0 S4 A32])) "df-problems.ii":17# {*movsi_internal} + (mem:SI (reg/f:DI 0 ax [orig:112 a_lsm.15 ] [112]) [ a_lsm.15_80->elt1+0 S4 A32])) "df-problems.ii":17# {*movsi_internal} (nil)) (insn:TI # 0 0 7 (set (reg:CCZ 17 flags) (compare:CCZ (reg:SI 37 r8) ...