https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97335
--- Comment #5 from Martin Liška <marxin at gcc dot gnu.org> --- (In reply to Martin Liška from comment #4) > This case is about: > > <bb 28> [local count: 177167400]: > + pretmp_327 = MEM[(int *)dep_dp_76(D) + 8B]; > + goto <bb 46>; [100.00%] > + > + <bb 29> [local count: 177167400]: > ctx_144 = _44 + 4; > + pretmp_335 = MEM[(int *)dep_dp_76(D) + 8B]; > > where dep_dp is of type: > > typedef struct > { > unsigned int Drange; > unsigned int Dvalue; > int DbitsLeft; > byte *Dcodestrm; > int *Dcodestrm_len; > } DecodingEnvironment; > Sorry, dep_dp_76(D) + 8B corresponds to DbitsLeft. But again, both places where address is taken don't cast the pointer or so: benchspec/CPU/525.x264_r/src/ldecod_src/biaridecod.c: int *DbitsLeft = &dep->DbitsLeft; benchspec/CPU/525.x264_r/src/ldecod_src/biaridecod.c: int *DbitsLeft = &dep->DbitsLeft;