diff options
author | Marcus Comstedt <marcus@mc.pp.se> | 2021-03-19 20:49:04 +0100 |
---|---|---|
committer | Kito Cheng <kito.cheng@sifive.com> | 2021-03-23 17:31:13 +0800 |
commit | cd1e2f632532d04c67a17820cb25826f8b0febac (patch) | |
tree | b3b7949338db616d7d2d4837ed52049265bd0a73 /gcc/common | |
parent | a9604fcbb29e457a4824a496905057dcc2e5d78a (diff) | |
download | gcc-cd1e2f632532d04c67a17820cb25826f8b0febac.zip gcc-cd1e2f632532d04c67a17820cb25826f8b0febac.tar.gz gcc-cd1e2f632532d04c67a17820cb25826f8b0febac.tar.bz2 |
RISC-V: Add riscv{32,64}be with big endian as default
gcc/
* common/config/riscv/riscv-common.c
(TARGET_DEFAULT_TARGET_FLAGS): Set default endianness.
* config.gcc (riscv32be-*, riscv64be-*): Set
TARGET_BIG_ENDIAN_DEFAULT to 1.
* config/riscv/elf.h (LINK_SPEC): Change -melf* value
depending on default endianness.
* config/riscv/freebsd.h (LINK_SPEC): Likewise.
* config/riscv/linux.h (LINK_SPEC): Likewise.
* config/riscv/riscv.c (TARGET_DEFAULT_TARGET_FLAGS): Set
default endianness.
* config/riscv/riscv.h (DEFAULT_ENDIAN_SPEC): New macro.
Diffstat (limited to 'gcc/common')
-rw-r--r-- | gcc/common/config/riscv/riscv-common.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/gcc/common/config/riscv/riscv-common.c b/gcc/common/config/riscv/riscv-common.c index 6bbe25d..34b74e5 100644 --- a/gcc/common/config/riscv/riscv-common.c +++ b/gcc/common/config/riscv/riscv-common.c @@ -32,6 +32,11 @@ along with GCC; see the file COPYING3. If not see #include "config/riscv/riscv-protos.h" #include "config/riscv/riscv-subset.h" +#ifdef TARGET_BIG_ENDIAN_DEFAULT +#undef TARGET_DEFAULT_TARGET_FLAGS +#define TARGET_DEFAULT_TARGET_FLAGS (MASK_BIG_ENDIAN) +#endif + /* Type for implied ISA info. */ struct riscv_implied_info_t { |