RISC-V: Allow register pairs for 64-bit target.
authorJim Wilson <jimw@sifive.com>
Sat, 27 Jan 2018 00:00:11 +0000 (00:00 +0000)
committerJim Wilson <wilson@gcc.gnu.org>
Sat, 27 Jan 2018 00:00:11 +0000 (16:00 -0800)
gcc/
* config/riscv/riscv.h (MAX_FIXED_MODE_SIZE): New.

From-SVN: r257114

gcc/ChangeLog
gcc/config/riscv/riscv.h

index d6af45247335cbad0da3bdb495a8ae032450856c..bcf3ffd079f3725b393e73442fdeb79ef421e55b 100644 (file)
@@ -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.
 
index a002bff4480b4e706a452b966c2646b00ea966b7..1c1c3431119d49b8f5eb6e46f3f4c60306b958df 100644 (file)
@@ -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