The previous patches removed all target-independent uses of regs_invalidated_by_call, call_used_or_fixed_regs and call_used_or_fixed_reg_p. This patch therefore restricts them to target-specific code (and reginfo.c, which sets them up).
2019-09-11 Richard Sandiford <richard.sandif...@arm.com> gcc/ * hard-reg-set.h (regs_invalidated_by_call): Only define if IN_TARGET_CODE. (call_used_or_fixed_regs): Likewise. (call_used_or_fixed_reg_p): Likewise. * reginfo.c (regs_invalidated_by_call): New macro. Index: gcc/hard-reg-set.h =================================================================== --- gcc/hard-reg-set.h 2019-09-10 19:57:04.713041281 +0100 +++ gcc/hard-reg-set.h 2019-09-11 19:49:18.149461264 +0100 @@ -477,10 +477,12 @@ #define call_used_regs \ #endif #define savable_regs \ (this_target_hard_regs->x_savable_regs) +#ifdef IN_TARGET_CODE #define regs_invalidated_by_call \ (this_target_hard_regs->x_regs_invalidated_by_call) #define call_used_or_fixed_regs \ (regs_invalidated_by_call | fixed_reg_set) +#endif #define reg_alloc_order \ (this_target_hard_regs->x_reg_alloc_order) #define inv_reg_alloc_order \ @@ -509,6 +511,7 @@ #define reg_names \ #define REG_CAN_CHANGE_MODE_P(REGN, FROM, TO) \ (targetm.can_change_mode_class (FROM, TO, REGNO_REG_CLASS (REGN))) +#ifdef IN_TARGET_CODE /* Return true if register REGNO is either fixed or call-used (aka call-clobbered). */ @@ -517,5 +520,6 @@ call_used_or_fixed_reg_p (unsigned int r { return fixed_regs[regno] || this_target_hard_regs->x_call_used_regs[regno]; } +#endif #endif /* ! GCC_HARD_REG_SET_H */ Index: gcc/reginfo.c =================================================================== --- gcc/reginfo.c 2019-09-11 19:47:39.474156575 +0100 +++ gcc/reginfo.c 2019-09-11 19:49:18.149461264 +0100 @@ -69,6 +69,8 @@ struct target_regs *this_target_regs = & #define call_used_regs \ (this_target_hard_regs->x_call_used_regs) +#define regs_invalidated_by_call \ + (this_target_hard_regs->x_regs_invalidated_by_call) /* Data for initializing fixed_regs. */ static const char initial_fixed_regs[] = FIXED_REGISTERS;