aboutsummaryrefslogtreecommitdiff
path: root/binutils
diff options
context:
space:
mode:
authorAndrew Waterman <waterman@cs.berkeley.edu>2015-05-25 16:11:54 -0700
committerAndrew Waterman <waterman@cs.berkeley.edu>2015-05-27 12:30:13 -0700
commit8865766cbdd17ca944eaf258b937d3b479c1f2b9 (patch)
tree20ba77f0c65702ece716cd9e145931446f710c70 /binutils
parent164ad4affd15511dfa12f1394aade4adba3c3cb8 (diff)
downloadriscv-gnu-toolchain-8865766cbdd17ca944eaf258b937d3b479c1f2b9.zip
riscv-gnu-toolchain-8865766cbdd17ca944eaf258b937d3b479c1f2b9.tar.gz
riscv-gnu-toolchain-8865766cbdd17ca944eaf258b937d3b479c1f2b9.tar.bz2
binutils: add ELF e_flag to signify RVC code
Diffstat (limited to 'binutils')
-rw-r--r--binutils/gas/config/tc-riscv.c3
-rw-r--r--binutils/include/elf/riscv.h3
2 files changed, 6 insertions, 0 deletions
diff --git a/binutils/gas/config/tc-riscv.c b/binutils/gas/config/tc-riscv.c
index 0faad26..a49dfd5 100644
--- a/binutils/gas/config/tc-riscv.c
+++ b/binutils/gas/config/tc-riscv.c
@@ -1930,6 +1930,9 @@ riscv_after_parse_args (void)
{
if (riscv_subsets == NULL)
riscv_set_arch ("RVIMAFDXcustom");
+
+ if (riscv_opts.rvc)
+ elf_flags |= EF_RISCV_RVC;
}
void
diff --git a/binutils/include/elf/riscv.h b/binutils/include/elf/riscv.h
index a1e9bb6..bb99554 100644
--- a/binutils/include/elf/riscv.h
+++ b/binutils/include/elf/riscv.h
@@ -80,6 +80,9 @@ END_RELOC_NUMBERS (R_RISCV_max)
/* Processor specific flags for the ELF header e_flags field. */
+/* File may contain compressed instructions. */
+#define EF_RISCV_RVC 0x0001
+
/* Custom flag definitions. */
#define EF_RISCV_EXT_MASK 0xffff