On 11/7/18 9:29 AM, Peter Bergner wrote: > On 11/6/18 6:14 PM, Segher Boessenkool wrote: >> Or more general, that what is inside the subreg is a reg, because the >> code does rely on that. > > I think you mean to beef up the following from: > > + if (HARD_REGISTER_P (nop_reg) > + && REG_USERVAR_P (nop_reg) > + && HARD_REGISTER_P (m_reg) > + && REG_USERVAR_P (m_reg)) > + break; > > to: > > + if (REG_P (nop_reg) > + && HARD_REGISTER_P (nop_reg) > + && REG_USERVAR_P (nop_reg) > + && REG_P (m_reg) > + && HARD_REGISTER_P (m_reg) > + && REG_USERVAR_P (m_reg)) > + break; > > ...correct? I can add that. I don't think we need to modify > the other patch hunks, since we know operand_reg[x] is already > a reg. I was referring to a more fundamental check in the IL checkers. Segher may have been referring to this specific code. This is obviously safe to do as well.
OK with this change. jeff