https://gcc.gnu.org/bugzilla/show_bug.cgi?id=123888
--- Comment #29 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
At least from eyeballing the dumps it looks like it probably it is r16-7756
In the problematic part of ccp2 dump I see (trunk with r16-7756 reverted to
trunk):
...
if (_1079 ==
_ZThn24_N7mozilla3net13nsStandardURL16TemplatedMutatorIS1_E4InitEjiRK12nsTSubstringIcEPKcP6nsIURIPP13nsIURIMutator)
goto <bb 112>; [100.00%]
else
- goto <bb 119>; [0.00%]
+ goto <bb 121>; [0.00%]
<bb 112> [count: 46506]:
- _1769 = _1074 + 18446744073709551592;
- _1131 = MEM[(const struct RefPtr *)_1769 + 16B].mRawPtr;
+ _1770 = _1074 + 18446744073709551592;
+ _1131 = MEM[(const struct RefPtr *)_1770 + 16B].mRawPtr;
if (_1131 != 0B)
goto <bb 113>; [0.00%]
else
goto <bb 114>; [100.00%]
<bb 113> [count: 0]:
- MEM[(struct RefPtr *)_1769 + 16B].mRawPtr = 0B;
- rv_1138 = Init (_1131, 2, 80, aSpec_5(D), _35, _34);
+ MEM[(struct RefPtr *)_1770 + 16B].mRawPtr = 0B;
+ goto <bb 116>; [100.00%]
+
+ <bb 114> [count: 46506]:
+ _1132 = MEM[(struct TemplatedMutator
*)_1770].D.5920.D.5700.D.5698.D.5695._vptr.nsISupports;
+ _1133 = MEM[(int (*__vtbl_ptr_type) () *)_1132 + 200B];
+ _1134 = OBJ_TYPE_REF(_1133;(struct TemplatedMutator)_1770->25B) (_1770);
+ if (_1134 != 0B)
+ goto <bb 115>; [100.00%]
+ else
+ goto <bb 116>; [0.00%]
+
+ <bb 115> [count: 46506]:
+ _1135 = _1134->D.5778.D.5729.D.5725.D.5674._vptr.nsISupports;
+ _1136 = MEM[(int (*__vtbl_ptr_type) () *)_1135 + 8B];
+ OBJ_TYPE_REF(_1136;(struct nsStandardURL)_1134->1B) (_1134);
+
+ <bb 116> [count: 46506]:
+ # uri$mRawPtr_1137 = PHI <_1131(113), 0B(114), _1134(115)>
+ rv_1138 = Init (uri$mRawPtr_1137, 2, 80, aSpec_5(D), _35, _34);
_1139 = (signed int) rv_1138;
_1140 = _1139 != 0;
_1141 = (long int) _1140;
_1142 = _1141;
if (_1142 != 0)
- goto <bb 117>; [0.00%]
+ goto <bb 119>; [0.00%]
else
- goto <bb 115>; [100.00%]
-
- <bb 114> [count: 46506]:
- _1132 = MEM[(struct TemplatedMutator
*)_1769].D.5920.D.5700.D.5698.D.5695._vptr.nsISupports;
- _1133 = MEM[(int (*__vtbl_ptr_type) () *)_1132 + 200B];
- __builtin_unreachable ();
+ goto <bb 117>; [100.00%]
- <bb 115> [count: 46506]:
- oldPtr_1143 = MEM[(struct RefPtr *)_1769 + 16B].mRawPtr;
- MEM[(struct RefPtr *)_1769 + 16B].mRawPtr = _1131;
+ <bb 117> [count: 46506]:
+ oldPtr_1143 = MEM[(struct RefPtr *)_1770 + 16B].mRawPtr;
+ MEM[(struct RefPtr *)_1770 + 16B].mRawPtr = uri$mRawPtr_1137;
if (oldPtr_1143 != 0B)
- goto <bb 116>; [0.00%]
+ goto <bb 118>; [0.00%]
else
- goto <bb 117>; [100.00%]
+ goto <bb 119>; [100.00%]
- <bb 116> [count: 0]:
+ <bb 118> [count: 0]:
_1144 = oldPtr_1143->D.5778.D.5729.D.5725.D.5674._vptr.nsISupports;
_1145 = MEM[(int (*__vtbl_ptr_type) () *)_1144 + 16B];
OBJ_TYPE_REF(_1145;(struct nsStandardURL)oldPtr_1143->2B) (oldPtr_1143);
...