aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorJu-Zhe Zhong <juzhe.zhong@rivai.ai>2022-10-24 10:20:28 +0800
committerKito Cheng <kito.cheng@sifive.com>2022-10-24 10:24:10 +0800
commitf84e4fb44aa26b71fbc64e0532fd24d96e5caa3f (patch)
tree35e869593c2dd476b7e1a23f9891ecc4379491b2 /gcc
parent3eea8c6f4ba9356726879aa4e21b99ad1ad5662e (diff)
downloadgcc-f84e4fb44aa26b71fbc64e0532fd24d96e5caa3f.zip
gcc-f84e4fb44aa26b71fbc64e0532fd24d96e5caa3f.tar.gz
gcc-f84e4fb44aa26b71fbc64e0532fd24d96e5caa3f.tar.bz2
RISC-V: Replace CONSTEXPR with constexpr
Move away from the pre-C++11 compatibility macro CONSTEXPR. This patch is inspired by aarch64: https://gcc.gnu.org/pipermail/gcc-patches/2022-October/603974.html. gcc/ChangeLog: * config/riscv/riscv-vector-builtins-bases.cc: Replace CONSTEXPR with constexpr throughout. * config/riscv/riscv-vector-builtins-shapes.cc (SHAPE): Likewise. * config/riscv/riscv-vector-builtins.cc (struct registered_function_hasher): Likewise. * config/riscv/riscv-vector-builtins.h (struct rvv_arg_type_info): Likewise.
Diffstat (limited to 'gcc')
-rw-r--r--gcc/config/riscv/riscv-vector-builtins-bases.cc4
-rw-r--r--gcc/config/riscv/riscv-vector-builtins-shapes.cc2
-rw-r--r--gcc/config/riscv/riscv-vector-builtins.cc14
-rw-r--r--gcc/config/riscv/riscv-vector-builtins.h2
4 files changed, 11 insertions, 11 deletions
diff --git a/gcc/config/riscv/riscv-vector-builtins-bases.cc b/gcc/config/riscv/riscv-vector-builtins-bases.cc
index 8582c0c..ca6e33d 100644
--- a/gcc/config/riscv/riscv-vector-builtins-bases.cc
+++ b/gcc/config/riscv/riscv-vector-builtins-bases.cc
@@ -94,8 +94,8 @@ public:
}
};
-static CONSTEXPR const vsetvl<false> vsetvl_obj;
-static CONSTEXPR const vsetvl<true> vsetvlmax_obj;
+static constexpr const vsetvl<false> vsetvl_obj;
+static constexpr const vsetvl<true> vsetvlmax_obj;
namespace bases {
const function_base *const vsetvl = &vsetvl_obj;
const function_base *const vsetvlmax = &vsetvlmax_obj;
diff --git a/gcc/config/riscv/riscv-vector-builtins-shapes.cc b/gcc/config/riscv/riscv-vector-builtins-shapes.cc
index 24fc1c0..14c5969 100644
--- a/gcc/config/riscv/riscv-vector-builtins-shapes.cc
+++ b/gcc/config/riscv/riscv-vector-builtins-shapes.cc
@@ -71,7 +71,7 @@ build_all (function_builder &b, const function_group_info &group)
/* Declare the function shape NAME, pointing it to an instance
of class <NAME>_def. */
#define SHAPE(DEF, VAR) \
- static CONSTEXPR const DEF##_def VAR##_obj; \
+ static constexpr const DEF##_def VAR##_obj; \
namespace shapes { const function_shape *const VAR = &VAR##_obj; }
/* Base class for for build. */
diff --git a/gcc/config/riscv/riscv-vector-builtins.cc b/gcc/config/riscv/riscv-vector-builtins.cc
index dc41078..caeb972 100644
--- a/gcc/config/riscv/riscv-vector-builtins.cc
+++ b/gcc/config/riscv/riscv-vector-builtins.cc
@@ -88,7 +88,7 @@ struct registered_function_hasher : nofree_ptr_hash<registered_function>
};
/* Static information about each RVV type. */
-static CONSTEXPR const vector_type_info vector_types[] = {
+static constexpr const vector_type_info vector_types[] = {
#define DEF_RVV_TYPE(NAME, NCHARS, ABI_NAME, ARGS...) \
{#NAME, #ABI_NAME, "u" #NCHARS #ABI_NAME},
#include "riscv-vector-builtins.def"
@@ -123,23 +123,23 @@ static const rvv_type_info i_ops[] = {
#include "riscv-vector-builtins-types.def"
{NUM_VECTOR_TYPES, 0}};
-static CONSTEXPR const rvv_arg_type_info rvv_arg_type_info_end
+static constexpr const rvv_arg_type_info rvv_arg_type_info_end
= rvv_arg_type_info (NUM_BASE_TYPES);
/* A list of args for size_t func (void) function. */
-static CONSTEXPR const rvv_arg_type_info void_args[]
+static constexpr const rvv_arg_type_info void_args[]
= {rvv_arg_type_info (RVV_BASE_void), rvv_arg_type_info_end};
/* A list of args for size_t func (size_t) function. */
-static CONSTEXPR const rvv_arg_type_info size_args[]
+static constexpr const rvv_arg_type_info size_args[]
= {rvv_arg_type_info (RVV_BASE_size), rvv_arg_type_info_end};
/* A list of none preds that will be registered for intrinsic functions. */
-static CONSTEXPR const predication_type_index none_preds[]
+static constexpr const predication_type_index none_preds[]
= {PRED_TYPE_none, NUM_PRED_TYPES};
/* A static operand information for size_t func (void) function registration. */
-static CONSTEXPR const rvv_op_info i_none_size_void_ops
+static constexpr const rvv_op_info i_none_size_void_ops
= {i_ops, /* Types */
OP_TYPE_none, /* Suffix */
rvv_arg_type_info (RVV_BASE_size), /* Return type */
@@ -147,7 +147,7 @@ static CONSTEXPR const rvv_op_info i_none_size_void_ops
/* A static operand information for size_t func (size_t) function registration.
*/
-static CONSTEXPR const rvv_op_info i_none_size_size_ops
+static constexpr const rvv_op_info i_none_size_size_ops
= {i_ops, /* Types */
OP_TYPE_none, /* Suffix */
rvv_arg_type_info (RVV_BASE_size), /* Return type */
diff --git a/gcc/config/riscv/riscv-vector-builtins.h b/gcc/config/riscv/riscv-vector-builtins.h
index 425da12..e5636e2 100644
--- a/gcc/config/riscv/riscv-vector-builtins.h
+++ b/gcc/config/riscv/riscv-vector-builtins.h
@@ -171,7 +171,7 @@ struct rvv_builtin_suffixes
/* RVV Builtin argument information. */
struct rvv_arg_type_info
{
- CONSTEXPR rvv_arg_type_info (rvv_base_type base_type_in)
+ constexpr rvv_arg_type_info (rvv_base_type base_type_in)
: base_type (base_type_in)
{}
enum rvv_base_type base_type;