From: Karl Meakin <[email protected]>

Use shifts to define each member of `aarch64_type_qualifiers` instead of
calculating the shift manually.

gcc/ChangeLog:

        * config/aarch64/aarch64-builtins.h (enum aarch64_type_qualifiers): Use 
shifts.
---
 gcc/config/aarch64/aarch64-builtins.h | 35 +++++++++++++--------------
 1 file changed, 17 insertions(+), 18 deletions(-)

diff --git a/gcc/config/aarch64/aarch64-builtins.h b/gcc/config/aarch64/aarch64-builtins.h
index d6cb7c8424ab..aaa272b2e93a 100644
--- a/gcc/config/aarch64/aarch64-builtins.h
+++ b/gcc/config/aarch64/aarch64-builtins.h
@@ -23,41 +23,40 @@ enum aarch64_type_qualifiers
   /* T foo.  */
   qualifier_none = 0x0,
   /* unsigned T foo.  */
-  qualifier_unsigned = 0x1, /* 1 << 0  */
+  qualifier_unsigned = 1 << 0,
   /* const T foo.  */
-  qualifier_const = 0x2, /* 1 << 1  */
+  qualifier_const = 1 << 1,
   /* T *foo.  */
-  qualifier_pointer = 0x4, /* 1 << 2  */
+  qualifier_pointer = 1 << 2,
   /* const T *foo.  */
-  qualifier_const_pointer = 0x6,
+  qualifier_const_pointer = qualifier_const | qualifier_pointer,
   /* Used when expanding arguments if an operand could
      be an immediate.  */
-  qualifier_immediate = 0x8, /* 1 << 3  */
-  qualifier_maybe_immediate = 0x10, /* 1 << 4  */
+  qualifier_immediate = 1 << 3,
+  qualifier_maybe_immediate = 1 << 4,
   /* void foo (...).  */
-  qualifier_void = 0x20, /* 1 << 5  */
+  qualifier_void = 1 << 5,
   /* 1 << 6 is now unused */
   /* Some builtins should use the T_*mode* encoded in a simd_builtin_datum
      rather than using the type of the operand.  */
-  qualifier_map_mode = 0x80, /* 1 << 7  */
-  /* qualifier_pointer | qualifier_map_mode  */
-  qualifier_pointer_map_mode = 0x84,
-  /* qualifier_const | qualifier_pointer | qualifier_map_mode  */
-  qualifier_const_pointer_map_mode = 0x86,
+  qualifier_map_mode = 1 << 7,
+  qualifier_pointer_map_mode = qualifier_pointer | qualifier_map_mode,
+  qualifier_const_pointer_map_mode
+  = qualifier_const | qualifier_pointer_map_mode,
   /* Polynomial types.  */
-  qualifier_poly = 0x100,
+  qualifier_poly = 1 << 8,
   /* Lane indices - must be in range, and flipped for bigendian.  */
-  qualifier_lane_index = 0x200,
+  qualifier_lane_index = 1 << 9,
   /* Lane indices for single lane structure loads and stores.  */
-  qualifier_struct_load_store_lane_index = 0x400,
+  qualifier_struct_load_store_lane_index = 1 << 10,
   /* Lane indices selected in pairs. - must be in range, and flipped for
      bigendian.  */
-  qualifier_lane_pair_index = 0x800,
+  qualifier_lane_pair_index = 1 << 11,
   /* Lane indices selected in quadtuplets. - must be in range, and flipped for
      bigendian.  */
-  qualifier_lane_quadtup_index = 0x1000,
+  qualifier_lane_quadtup_index = 1 << 12,
   /* Modal FP types.  */
-  qualifier_modal_float = 0x2000,
+  qualifier_modal_float = 1 << 13,
 };
 
 enum aarch64_simd_type

Reply via email to