On Mon, Apr 17, 2023 at 11:27:28PM +0200, Uros Bizjak via Gcc-patches wrote: > --- a/gcc/rtl.h > +++ b/gcc/rtl.h > @@ -1972,6 +1972,13 @@ set_regno_raw (rtx x, unsigned int regno, unsigned int > nregs) > /* 1 if the given register number REG_NO corresponds to a hard register. */ > #define HARD_REGISTER_NUM_P(REG_NO) ((REG_NO) < FIRST_PSEUDO_REGISTER) > > +/* 1 if the given register REG corresponds to a virtual register. */ > +#define VIRTUAL_REGISTER_P(REG) (VIRTUAL_REGISTER_NUM_P (REGNO (REG))) > + > +/* 1 if the given register number REG_NO corresponds to a virtual register. > */ > +#define VIRTUAL_REGISTER_NUM_P(REG_NO) > \ > + (IN_RANGE (REG_NO, FIRST_VIRTUAL_REGISTER, LAST_VIRTUAL_REGISTER))
Why the ()s around both definitions? IN_RANGE adds its own and anything on top of that is just superfluous. Jakub