[PATCH, rs6000] Remove the (no longer used) BTC defines.
authorWill Schmidt <will_schmidt@vnet.ibm.com>
Mon, 9 May 2022 22:05:50 +0000 (17:05 -0500)
committerWill Schmidt <will_schmidt@vnet.ibm.com>
Thu, 19 May 2022 16:44:02 +0000 (11:44 -0500)
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.

gcc/config/rs6000/rs6000-builtins.def
gcc/config/rs6000/rs6000.h

index f4a9f24..f76f547 100644 (file)
   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 *);
index 20b9d11..3b8941a 100644 (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