Re: [PATCH, rs6000] Remove the (no longer used) RS6000_BTC defines.
Hi! On Tue, May 17, 2022 at 11:54:10AM -0500, will schmidt wrote: > These defines are no longer used once the rs6000 built-in > reworks were completed. Would be good to remove them. :-) > There was a reference to RS6000_BTC_SPECIAL in a TODO comment > in rs6000-builtins.def. That comment remains, but I have updated > the comment to refer to "SPECIAL" processing, instead of having it > refer directly to the RS6000_BTC_SPECIAL macro. > > 2022-05-17 Will Schmidt > > gcc/ > * config/rs6000/rs6000-builtins.def: rephrase > RS6000_BTC_SPECIAL in comment. "Rephrase", capital R. > * config/rs6000/rs6000.h: Remove definitions One space after a colon. > RS6000_BTC_UNARY, RS6000_BTC_BINARY, > RS6000_BTC_TERNARY, RS6000_BTC_QUATERNARY, > RS6000_BTC_QUINARY, RS6000_BTC_SENARY, RS6000_BTC_OPND_MASK, > RS6000_BTC_SPECIAL, RS6000_BTC_PREDICATE, RS6000_BTC_ABS, > RS6000_BTC_DST, RS6000_BTC_TYPE_MASK, RS6000_BTC_MISC, > RS6000_BTC_CONST, RS6000_BTC_PURE, RS6000_BTC_FP, > RS6000_BTC_QUAD, RS6000_BTC_PAIR, RS6000_BTC_QUADPAIR, > RS6000_BTC_ATTR_MASK, RS6000_BTC_SPR, RS6000_BTC_VOID, > RS6000_BTC_CR, RS6000_BTC_OVERLOADED, RS6000_BTC_GIMPLE, > RS6000_BTC_MISC_MASK, RS6000_BTC_MEM, RS6000_BTC_SAT, > RS6000_BTM_ALWAYS Sentences end in a dot, and every changelog line is a sentence. But, this should be * config/rs6000/rs6000.h (RS6000_BTC_UNARY, RS6000_BTC_BINARY, RS6000_BTC_TERNARY, RS6000_BTC_QUATERNARY, RS6000_BTC_QUINARY, ... RS6000_BTC_SAT, RS6000_BTM_ALWAYS): Delete. > --- a/gcc/config/rs6000/rs6000-builtins.def > +++ b/gcc/config/rs6000/rs6000-builtins.def > @@ -1423,11 +1423,11 @@ > >pure vsc __builtin_vsx_ld_elemrev_v16qi (signed long, const void *); > LD_ELEMREV_V16QI vsx_ld_elemrev_v16qi {ldvec,endian} > > ; TODO: There is apparent intent in rs6000-builtin.def to have That file does no longer exist. > -; RS6000_BTC_SPECIAL processing for LXSDX, LXVDSX, and STXSDX, but there are > +; SPECIAL processing for LXSDX, LXVDSX, and STXSDX, but there are > ; no def_builtin calls for any of them. At some point, we may want to add a > ; set of built-ins for whichever vector types make sense for these. Is the comment still relevant? If so a bit more rephrasing woukd be good; if not, just remove it? Okay for trunk with those things dealt with somehow. Thanks! Segher
[PATCH, rs6000] Remove the (no longer used) RS6000_BTC defines.
[PATCH, rs6000] Remove the (no longer used) RS6000_BTC defines. Hi, These defines are no longer used once the rs6000 built-in reworks were completed. Would be good to remove them. There was a reference to RS6000_BTC_SPECIAL in a TODO comment in rs6000-builtins.def. That comment remains, but I have updated the comment to refer to "SPECIAL" processing, instead of having it refer directly to the RS6000_BTC_SPECIAL macro. 2022-05-17 Will Schmidt gcc/ * config/rs6000/rs6000-builtins.def: rephrase RS6000_BTC_SPECIAL in comment. * config/rs6000/rs6000.h: Remove definitions RS6000_BTC_UNARY, RS6000_BTC_BINARY, RS6000_BTC_TERNARY, RS6000_BTC_QUATERNARY, RS6000_BTC_QUINARY, RS6000_BTC_SENARY, RS6000_BTC_OPND_MASK, RS6000_BTC_SPECIAL, RS6000_BTC_PREDICATE, RS6000_BTC_ABS, RS6000_BTC_DST, RS6000_BTC_TYPE_MASK, RS6000_BTC_MISC, RS6000_BTC_CONST, RS6000_BTC_PURE, RS6000_BTC_FP, RS6000_BTC_QUAD, RS6000_BTC_PAIR, RS6000_BTC_QUADPAIR, RS6000_BTC_ATTR_MASK, RS6000_BTC_SPR, RS6000_BTC_VOID, RS6000_BTC_CR, RS6000_BTC_OVERLOADED, RS6000_BTC_GIMPLE, RS6000_BTC_MISC_MASK, RS6000_BTC_MEM, RS6000_BTC_SAT, RS6000_BTM_ALWAYS diff --git a/gcc/config/rs6000/rs6000-builtins.def b/gcc/config/rs6000/rs6000-builtins.def index f4a9f24bcc5c..9a63a9eda580 100644 --- a/gcc/config/rs6000/rs6000-builtins.def +++ b/gcc/config/rs6000/rs6000-builtins.def @@ -1423,11 +1423,11 @@ pure vsc __builtin_vsx_ld_elemrev_v16qi (signed long, const void *); LD_ELEMREV_V16QI vsx_ld_elemrev_v16qi {ldvec,endian} ; TODO: There is apparent intent in rs6000-builtin.def to have -; RS6000_BTC_SPECIAL processing for LXSDX, LXVDSX, and STXSDX, but there are +; SPECIAL processing for LXSDX, LXVDSX, and STXSDX, but there are ; no def_builtin calls for any of them. At some point, we may want to add a ; set of built-ins for whichever vector types make sense for these. pure vsq __builtin_vsx_lxvd2x_v1ti (signed long, const void *); LXVD2X_V1TI vsx_load_v1ti {ldvec} diff --git a/gcc/config/rs6000/rs6000.h b/gcc/config/rs6000/rs6000.h index 523256a5c9d5..90a357ab7932 100644 --- a/gcc/config/rs6000/rs6000.h +++ b/gcc/config/rs6000/rs6000.h @@ -2247,58 +2247,10 @@ extern char rs6000_reg_names[][8]; /* register names (0 vs. %r0). */ /* #define MACHINE_no_sched_speculative_load */ /* General flags. */ extern int frame_pointer_needed; -/* Classification of the builtin functions as to which switches enable the - builtin, and what attributes it should have. We used to use the target - flags macros, but we've run out of bits, so we now map the options into new - settings used here. */ - -/* Builtin operand count. */ -#define RS6000_BTC_UNARY 0x0001 /* normal unary function. */ -#define RS6000_BTC_BINARY 0x0002 /* normal binary function. */ -#define RS6000_BTC_TERNARY 0x0003 /* normal ternary function. */ -#define RS6000_BTC_QUATERNARY 0x0004 /* normal quaternary - function. */ -#define RS6000_BTC_QUINARY 0x0005 /* normal quinary function. */ -#define RS6000_BTC_SENARY 0x0006 /* normal senary function. */ -#define RS6000_BTC_OPND_MASK 0x0007 /* Mask to isolate operands. */ - -/* Builtin attributes. */ -#define RS6000_BTC_SPECIAL 0x /* Special function. */ -#define RS6000_BTC_PREDICATE 0x0008 /* predicate function. */ -#define RS6000_BTC_ABS 0x0010 /* Altivec/VSX ABS - function. */ -#define RS6000_BTC_DST 0x0020 /* Altivec DST function. */ - -#define RS6000_BTC_TYPE_MASK 0x003f /* Mask to isolate types */ - -#define RS6000_BTC_MISC0x /* No special attributes. */ -#define RS6000_BTC_CONST 0x0100 /* Neither uses, nor - modifies global state. */ -#define RS6000_BTC_PURE0x0200 /* reads global - state/mem and does - not modify global state. */ -#define RS6000_BTC_FP 0x0400 /* depends on rounding mode. */ -#define RS6000_BTC_QUAD0x0800 /* Uses a register quad. */ -#define RS6000_BTC_PAIR0x1000 /* Uses a register pair. */ -#define RS6000_BTC_QUADPAIR0x1800 /* Uses a quad and a pair. */ -#define RS6000_BTC_ATTR_MASK 0x1f00 /* Mask of the attributes. */ - -/* Miscellaneous information. */ -#define RS6000_BTC_SPR 0x0100 /* function references SPRs. */ -#define RS6000_BTC_VOID0x0200 /* function has no return value. */ -#define RS6000_BTC_CR 0x0400 /* function refer