projects
/
binutils-gdb.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
gdb/dwarf: pass compilation directory to line header
[binutils-gdb.git]
/
bfd
/
cpu-riscv.c
diff --git
a/bfd/cpu-riscv.c
b/bfd/cpu-riscv.c
index ce87ccf23801451b91f919bf3e51385fcd35ddd5..5deff968a740752b6c6bfa267c99ac01ec39176c 100644
(file)
--- a/
bfd/cpu-riscv.c
+++ b/
bfd/cpu-riscv.c
@@
-1,5
+1,5
@@
/* BFD backend for RISC-V
/* BFD backend for RISC-V
- Copyright (C) 2011-202
1
Free Software Foundation, Inc.
+ Copyright (C) 2011-202
2
Free Software Foundation, Inc.
Contributed by Andrew Waterman (andrew@sifive.com).
Based on MIPS target.
Contributed by Andrew Waterman (andrew@sifive.com).
Based on MIPS target.
@@
-39,11
+39,11
@@
riscv_compatible (const bfd_arch_info_type *a, const bfd_arch_info_type *b)
/* Return TRUE if STRING matches the architecture described by INFO. */
/* Return TRUE if STRING matches the architecture described by INFO. */
-static b
fd_boolean
+static b
ool
riscv_scan (const struct bfd_arch_info *info, const char *string)
{
if (bfd_default_scan (info, string))
riscv_scan (const struct bfd_arch_info *info, const char *string)
{
if (bfd_default_scan (info, string))
- return
TRUE
;
+ return
true
;
/* The incoming STRING might take the form of riscv:rvXXzzz, where XX is
32 or 64, and zzz are one or more extension characters. As we
/* The incoming STRING might take the form of riscv:rvXXzzz, where XX is
32 or 64, and zzz are one or more extension characters. As we
@@
-59,9
+59,9
@@
riscv_scan (const struct bfd_arch_info *info, const char *string)
if (!info->the_default
&& strncasecmp (string, info->printable_name,
strlen (info->printable_name)) == 0)
if (!info->the_default
&& strncasecmp (string, info->printable_name,
strlen (info->printable_name)) == 0)
- return
TRUE
;
+ return
true
;
- return
FALSE
;
+ return
false
;
}
#define N(BITS, NUMBER, PRINT, DEFAULT, NEXT) \
}
#define N(BITS, NUMBER, PRINT, DEFAULT, NEXT) \
@@
-95,13
+95,13
@@
enum
and each entry except the last should end with NN (my enum value). */
static const bfd_arch_info_type arch_info_struct[] =
{
and each entry except the last should end with NN (my enum value). */
static const bfd_arch_info_type arch_info_struct[] =
{
- N (64, bfd_mach_riscv64, "riscv:rv64",
FALSE
, NN (I_riscv64)),
- N (32, bfd_mach_riscv32, "riscv:rv32",
FALSE
, NULL)
+ N (64, bfd_mach_riscv64, "riscv:rv64",
false
, NN (I_riscv64)),
+ N (32, bfd_mach_riscv32, "riscv:rv32",
false
, NULL)
};
/* The default architecture is riscv:rv64. */
const bfd_arch_info_type bfd_riscv_arch =
};
/* The default architecture is riscv:rv64. */
const bfd_arch_info_type bfd_riscv_arch =
- N (64, 0, "riscv",
TRUE
, &arch_info_struct[0]);
+ N (64, 0, "riscv",
true
, &arch_info_struct[0]);
/* List for all supported ISA spec versions. */
const struct riscv_spec riscv_isa_specs[] =
/* List for all supported ISA spec versions. */
const struct riscv_spec riscv_isa_specs[] =
@@
-117,6
+117,7
@@
const struct riscv_spec riscv_priv_specs[] =
{"1.9.1", PRIV_SPEC_CLASS_1P9P1},
{"1.10", PRIV_SPEC_CLASS_1P10},
{"1.11", PRIV_SPEC_CLASS_1P11},
{"1.9.1", PRIV_SPEC_CLASS_1P9P1},
{"1.10", PRIV_SPEC_CLASS_1P10},
{"1.11", PRIV_SPEC_CLASS_1P11},
+ {"1.12", PRIV_SPEC_CLASS_1P12},
};
/* Get the corresponding CSR version class by giving privilege
};
/* Get the corresponding CSR version class by giving privilege
@@
-140,3
+141,12
@@
riscv_get_priv_spec_class_from_numbers (unsigned int major,
RISCV_GET_PRIV_SPEC_CLASS (buf, class_t);
*class = class_t;
}
RISCV_GET_PRIV_SPEC_CLASS (buf, class_t);
*class = class_t;
}
+
+/* Define mapping symbols for riscv. */
+
+bool
+riscv_elf_is_mapping_symbols (const char *name)
+{
+ return (!strncmp (name, "$d", 2)
+ || !strncmp (name, "$x", 2));
+}