aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJim Wilson <jimw@sifive.com>2018-10-03 19:09:32 +0000
committerJim Wilson <wilson@gcc.gnu.org>2018-10-03 12:09:32 -0700
commit119b4963ea4f68e88eb496f0efcb450e1fbbbe9b (patch)
tree7cdee2c3093b151a9fa9658ddb78d267a2d8737d
parent5079ff15b537908ab0fcf2270c05d02e7412f442 (diff)
downloadgcc-119b4963ea4f68e88eb496f0efcb450e1fbbbe9b.zip
gcc-119b4963ea4f68e88eb496f0efcb450e1fbbbe9b.tar.gz
gcc-119b4963ea4f68e88eb496f0efcb450e1fbbbe9b.tar.bz2
RISC-V: Add macro for ilp32e ABI. Cleanup white space.
gcc/ * config/riscv/riscv-c.c (riscv_cpu_cpp_builtins): For ABI_ILP32E, also define __riscv_abi_rve. Delete trailing white space. From-SVN: r264821
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/config/riscv/riscv-c.c27
2 files changed, 20 insertions, 12 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 6bec984..8e7cb54 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2018-10-03 Jim Wilson <jimw@sifive.com>
+
+ * config/riscv/riscv-c.c (riscv_cpu_cpp_builtins): For ABI_ILP32E,
+ also define __riscv_abi_rve. Delete trailing white space.
+
2018-10-03 Paul Koning <ni1d@arrl.net>
Enable LRA register allocator for PDP11.
diff --git a/gcc/config/riscv/riscv-c.c b/gcc/config/riscv/riscv-c.c
index 513f974..d3ecd07 100644
--- a/gcc/config/riscv/riscv-c.c
+++ b/gcc/config/riscv/riscv-c.c
@@ -35,62 +35,65 @@ void
riscv_cpu_cpp_builtins (cpp_reader *pfile)
{
builtin_define ("__riscv");
-
+
if (TARGET_RVC)
builtin_define ("__riscv_compressed");
-
+
if (TARGET_RVE)
builtin_define ("__riscv_32e");
if (TARGET_ATOMIC)
builtin_define ("__riscv_atomic");
-
+
if (TARGET_MUL)
builtin_define ("__riscv_mul");
if (TARGET_DIV)
builtin_define ("__riscv_div");
if (TARGET_DIV && TARGET_MUL)
builtin_define ("__riscv_muldiv");
-
+
builtin_define_with_int_value ("__riscv_xlen", UNITS_PER_WORD * 8);
if (TARGET_HARD_FLOAT)
builtin_define_with_int_value ("__riscv_flen", UNITS_PER_FP_REG * 8);
-
+
if (TARGET_HARD_FLOAT && TARGET_FDIV)
{
builtin_define ("__riscv_fdiv");
builtin_define ("__riscv_fsqrt");
}
-
+
switch (riscv_abi)
{
- case ABI_ILP32:
case ABI_ILP32E:
+ builtin_define ("__riscv_abi_rve");
+ gcc_fallthrough ();
+
+ case ABI_ILP32:
case ABI_LP64:
builtin_define ("__riscv_float_abi_soft");
break;
-
+
case ABI_ILP32F:
case ABI_LP64F:
builtin_define ("__riscv_float_abi_single");
break;
-
+
case ABI_ILP32D:
case ABI_LP64D:
builtin_define ("__riscv_float_abi_double");
break;
}
-
+
switch (riscv_cmodel)
{
case CM_MEDLOW:
builtin_define ("__riscv_cmodel_medlow");
break;
-
+
case CM_MEDANY:
builtin_define ("__riscv_cmodel_medany");
break;
-
+
case CM_PIC:
builtin_define ("__riscv_cmodel_pic");
break;