aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJim Wilson <jimw@sifive.com>2018-01-27 00:00:11 +0000
committerJim Wilson <wilson@gcc.gnu.org>2018-01-26 16:00:11 -0800
commitd3f952c5e03e5eb0382e8b24fe8339728a66b922 (patch)
tree6aacd69c700f38c060cba145fbc700ae7b2a8fe9
parentcc24ff0dc2b163e10afaca62b25de74c5dc313fd (diff)
downloadgcc-d3f952c5e03e5eb0382e8b24fe8339728a66b922.zip
gcc-d3f952c5e03e5eb0382e8b24fe8339728a66b922.tar.gz
gcc-d3f952c5e03e5eb0382e8b24fe8339728a66b922.tar.bz2
RISC-V: Allow register pairs for 64-bit target.
gcc/ * config/riscv/riscv.h (MAX_FIXED_MODE_SIZE): New. From-SVN: r257114
-rw-r--r--gcc/ChangeLog2
-rw-r--r--gcc/config/riscv/riscv.h4
2 files changed, 6 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index d6af452..bcf3ffd 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,7 @@
2018-01-26 Jim Wilson <jimw@sifive.com>
+ * config/riscv/riscv.h (MAX_FIXED_MODE_SIZE): New.
+
* config/riscv/elf.h (LIB_SPEC): Don't include -lgloss when nosys.specs
specified.
diff --git a/gcc/config/riscv/riscv.h b/gcc/config/riscv/riscv.h
index a002bff..1c1c343 100644
--- a/gcc/config/riscv/riscv.h
+++ b/gcc/config/riscv/riscv.h
@@ -158,6 +158,10 @@ along with GCC; see the file COPYING3. If not see
#define PCC_BITFIELD_TYPE_MATTERS 1
+/* An integer expression for the size in bits of the largest integer machine
+ mode that should actually be used. We allow pairs of registers. */
+#define MAX_FIXED_MODE_SIZE GET_MODE_BITSIZE (TARGET_64BIT ? TImode : DImode)
+
/* If defined, a C expression to compute the alignment for a static
variable. TYPE is the data type, and ALIGN is the alignment that
the object would ordinarily have. The value of this macro is used