> It would be nice to add to the documentation that INSN_BASE_REG_CLASS, > INSN_INDEX_REG_CLASS, and REGNO_OK_FOR_INSN_BASE_P if defined have > priority over older corresponding macros as it is already documented for > REGNO_MODE_CODE_OK_FOR_BASE_P relating to REGNO_OK_FOR_BASE_P. But this > small issue can be addressed later. >
Thanks, I would add the description like below when committing. +@defmac INSN_BASE_REG_CLASS (@var{insn}) +A C expression whose value is the register class to which a valid +base register for a specified @var{insn} must belong. This macro is +used when some backend insns may have limited usage of base register +compared with other insns. If you define this macro, the compiler will +use it instead of all other defined macros that relate to +BASE_REG_CLASS. +@end defmac + +@defmac REGNO_OK_FOR_INSN_BASE_P (@var{num}, @var{insn}) +A C expression which is nonzero if register number @var{num} is +suitable for use as a base register in operand addresses for a specified +@var{insn}. This macro is used when some backend insn may have limited +usage of base register compared with other insns. If you define this +macro, the compiler will use it instead of all other defined macros +that relate to REGNO_OK_FOR_BASE_P. +@end defmac + +@defmac INSN_INDEX_REG_CLASS (@var{insn}) +A C expression whose value is the register class to which a valid +index register for a specified @var{insn} must belong. This macro is +used when some backend insns may have limited usage of index register +compared with other insns. If you defined this macro, the compiler +will use it instead of @code{INDEX_REG_CLASS}. +@end defmac +