[PATCH, rs6000] Remove the (no longer used) BTC defines.

These defines are no longer used once the rs6000 built-in
reworks were completed.   Time 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 _BTC_SPECIAL macro.

2022-05-18  Will Schmidt  <will_schmidt@vnet.ibm.com>

gcc/
	* config/rs6000/rs6000-builtins.def: Rephrase
	to remove RS6000_BTC_SPECIAL from comment.
	* config/rs6000/rs6000.h (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): Delete.
This commit is contained in:
Will Schmidt 2022-05-09 17:05:50 -05:00
parent f13f9c99db
commit cd427e17c0
2 changed files with 4 additions and 51 deletions

View file

@ -1424,9 +1424,10 @@
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
; no def_builtin calls for any of them. At some point, we may want to add a
; TODO: There was apparent intent in the rs6000-builtin.def to
; have SPECIAL processing for LXSDX, LXVDSX, and STXSDX, but there are
; no def_builtin calls for any of them. That file was removed as part
; of the BIF rewrite, but 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 *);

View file

@ -2248,54 +2248,6 @@ extern char rs6000_reg_names[][8]; /* register names (0 vs. %r0). */
/* 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 0x00000001 /* normal unary function. */
#define RS6000_BTC_BINARY 0x00000002 /* normal binary function. */
#define RS6000_BTC_TERNARY 0x00000003 /* normal ternary function. */
#define RS6000_BTC_QUATERNARY 0x00000004 /* normal quaternary
function. */
#define RS6000_BTC_QUINARY 0x00000005 /* normal quinary function. */
#define RS6000_BTC_SENARY 0x00000006 /* normal senary function. */
#define RS6000_BTC_OPND_MASK 0x00000007 /* Mask to isolate operands. */
/* Builtin attributes. */
#define RS6000_BTC_SPECIAL 0x00000000 /* Special function. */
#define RS6000_BTC_PREDICATE 0x00000008 /* predicate function. */
#define RS6000_BTC_ABS 0x00000010 /* Altivec/VSX ABS
function. */
#define RS6000_BTC_DST 0x00000020 /* Altivec DST function. */
#define RS6000_BTC_TYPE_MASK 0x0000003f /* Mask to isolate types */
#define RS6000_BTC_MISC 0x00000000 /* No special attributes. */
#define RS6000_BTC_CONST 0x00000100 /* Neither uses, nor
modifies global state. */
#define RS6000_BTC_PURE 0x00000200 /* reads global
state/mem and does
not modify global state. */
#define RS6000_BTC_FP 0x00000400 /* depends on rounding mode. */
#define RS6000_BTC_QUAD 0x00000800 /* Uses a register quad. */
#define RS6000_BTC_PAIR 0x00001000 /* Uses a register pair. */
#define RS6000_BTC_QUADPAIR 0x00001800 /* Uses a quad and a pair. */
#define RS6000_BTC_ATTR_MASK 0x00001f00 /* Mask of the attributes. */
/* Miscellaneous information. */
#define RS6000_BTC_SPR 0x01000000 /* function references SPRs. */
#define RS6000_BTC_VOID 0x02000000 /* function has no return value. */
#define RS6000_BTC_CR 0x04000000 /* function references a CR. */
#define RS6000_BTC_OVERLOADED 0x08000000 /* function is overloaded. */
#define RS6000_BTC_GIMPLE 0x10000000 /* function should be expanded
into gimple. */
#define RS6000_BTC_MISC_MASK 0x1f000000 /* Mask of the misc info. */
/* Convenience macros to document the instruction type. */
#define RS6000_BTC_MEM RS6000_BTC_MISC /* load/store touches mem. */
#define RS6000_BTC_SAT RS6000_BTC_MISC /* saturate sets VSCR. */
/* Builtin targets. For now, we reuse the masks for those options that are in
target flags, and pick a random bit for ldbl128, which isn't in