https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80453
--- Comment #4 from Markus Trippelsdorf <trippels at gcc dot gnu.org> ---
(In reply to Markus Trippelsdorf from comment #3)
>
> It was "fixed" by r246965, which doesn't make much sense.
On the other hand r246965 "causes" a new heisenbug on ppc64le:
% /home/trippels/gcc_test/usr/local/bin/g++ --save-temps -fcompare-debug -fPIC
-fvisibility-inlines-hidden -Werror=date-time -std=c++11 -Wall -W
-Wno-unused-parameter -Wwrite-strings -Wcast-qual
-Wno-missing-field-initializers -pedantic -Wno-long-long
-Wno-maybe-uninitialized -Wdelete-non-virtual-dtor -Wno-comment
-ffunction-sections -fdata-sections -Wno-implicit-fallthrough -O3 -pipe
-UNDEBUG -fno-exceptions -fno-rtti -c BasicBlockUtils.ii -w
g++: warning: -pipe ignored because -save-temps specified
g++: error: BasicBlockUtils.ii: -fcompare-debug failure (length)
--- BasicBlockUtils.gkd 2017-04-19 14:19:18.678115265 +0000
+++ BasicBlockUtils.gk.gkd 2017-04-19 14:19:29.648375254 +0000
@@ -35537,7 +35537,7 @@
(insn:TI # 0 0 (set (reg:DI 5 5)
(const_int 1 [0x1])) "BasicBlockUtils.ii":61700# {*movdi_internal64}
(nil))
-(insn # 0 0 (set (reg/f:DI 31 31 [orig:174 _36 ] [174])
+(insn # 0 0 (set (reg/f:DI 31 31 [orig:177 _36 ] [177])
(reg:DI 3 3)) "BasicBlockUtils.ii":46281# {*movdi_internal64}
(expr_list:REG_DEAD (reg:DI 3 3)
(nil)))
@@ -35547,7 +35547,7 @@
(const_int 32 [0x20]))
(nil)))
(insn # 0 0 (set (reg:DI 4 4)
- (reg/f:DI 31 31 [orig:174 _36 ] [174])) "BasicBlockUtils.ii":61700#
{*movdi_internal64}
+ (reg/f:DI 31 31 [orig:177 _36 ] [177])) "BasicBlockUtils.ii":61700#
{*movdi_internal64}
(nil))
(call_insn # 0 0 (parallel [
(call (mem:SI (symbol_ref/i:DI
("_ZN4llvm14TerminatorInst12SuccIteratorIPS0_NS_10BasicBlockEEC1ES2_b") [flags
0x3] <function_decl # __comp_ctor >) [ __comp_ctor S4
A8])
@@ -35566,21 +35566,21 @@
(expr_list:DI (use (reg:DI 4 4))
(expr_list:QI (use (reg:DI 5 5))
(nil))))))
-(insn # 0 0 (set (reg/f:DI 9 9 [orig:602 SR.2614 ] [602])
+(insn # 0 0 (set (reg/f:DI 9 9 [orig:175 SR.2614 ] [175])
(mem/f/c:DI (plus:DI (reg/f:DI 1 1)
(const_int 32 [0x20])) [ MEM[(struct SuccIterator *)&D.xxxx]+0
S8 A128])) "BasicBlockUtils.ii":61700# {*movdi_internal64}
(expr_list:REG_EQUIV (mem/f/c:DI (plus:DI (reg/f:DI 113 sfp)
(const_int 32 [0x20])) [ MEM[(struct SuccIterator *)&D.xxxx]+0
S8 A128])
(nil)))
-(insn:TI # 0 0 (set (reg/v:DI 26 26 [orig:387 SR.2615 ] [387])
+(insn:TI # 0 0 (set (reg/v:DI 26 26 [orig:173 SR.2615 ] [173])
(zero_extend:DI (mem/c:SI (plus:DI (reg/f:DI 1 1)
(const_int 40 [0x28])) [ MEM[(struct SuccIterator
*)&D.xxxx + 8B]+0 S4 A64]))) "BasicBlockUtils.ii":61700# {zero_extendsidi2}
(nil))
(insn # 0 0 (set (reg:CCUNS 75 7 [642])
- (compare:CCUNS (reg/f:DI 31 31 [orig:174 _36 ] [174])
- (reg/f:DI 9 9 [orig:602 SR.2614 ] [602])))
"BasicBlockUtils.ii":60645# {*cmpdi_unsigned}
- (expr_list:REG_DEAD (reg/f:DI 31 31 [orig:174 _36 ] [174])
- (expr_list:REG_DEAD (reg/f:DI 9 9 [orig:602 SR.2614 ] [602])
+ (compare:CCUNS (reg/f:DI 9 9 [orig:175 SR.2614 ] [175])
+ (reg/f:DI 31 31 [orig:177 _36 ] [177])))
"BasicBlockUtils.ii":60645# {*cmpdi_unsigned}
+ (expr_list:REG_DEAD (reg/f:DI 31 31 [orig:177 _36 ] [177])
+ (expr_list:REG_DEAD (reg/f:DI 9 9 [orig:175 SR.2614 ] [175])
(nil))))
(jump_insn # 0 0 (set (pc)
(if_then_else (ne (reg:CCUNS 75 7 [642])