https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95576
--- Comment #2 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
The important difference in *.slp2 dumps is:
@@ -188,14 +201,17 @@ T::~T (struct T * const this)
_15 = VIEW_CONVERT_EXPR<long unsigned int>(&MEM <int (*) ()[5]> [(void
*)&_ZTV1T + 16B]);
_14 = {_15};
vect_cst__13 = _14;
- vectp.24_16 = &this_2(D)->D.2378._vptr.S;
- MEM[(int (*) () * *)vectp.24_16] = vect_cst__13;
_18 = VIEW_CONVERT_EXPR<long unsigned int>(&MEM <int (*) ()[5]> [(void
*)&_ZTV1S + 16B]);
_19 = {_18};
vect_cst__20 = _19;
+ # DEBUG this => this_2(D)
+ vectp.24_16 = &this_2(D)->D.2378._vptr.S;
+ MEM[(int (*) () * *)vectp.24_16] = vect_cst__13;
_4 = &this_2(D)->D.2378;
+ # DEBUG this => _4
vectp.26_21 = &_4->_vptr.S;
MEM[(int (*) () * *)vectp.26_21] = vect_cst__20;
+ # DEBUG BEGIN_STMT
_5 = _4->s;
if (_5 != 0B)
goto <bb 3>; [70.00%]
(the previous pass is ok and all other hunks are just about addition of # DEBUG
stmts).