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