Eric Botcazou <ebotca...@adacore.com> writes: >> Sorry, I'm not sure I understand well, it means that you prefer the >> shift_and _rotate_code_p notation, right ? > > Let's do the following in addition to the lsb_bitfield_op_p thing: > 1. Replace the LO_SUM test in set_address_base by a call to must_be_base_p, > 2. Replace the MULT || ASHIFT test in set_address_index by a call to > must_be_index_p, > 3. Add the new cases to must_be_index_p directly, with a comment saying > that > there are e.g. for the ARM.
FWIW, I'd prefer to keep it as-is, since must_be_base_p (x) and must_be_index_p (x) don't imply that we should look specifically at XEXP (x, 0) (rather than just X, or XEXP (x, 1), etc.). I think it's better to keep the code tests and the associated XEXPs together. Thanks, Richard