diff options
author | Luis Machado <luis.machado@arm.com> | 2020-03-05 17:13:25 -0300 |
---|---|---|
committer | Luis Machado <luis.machado@linaro.org> | 2020-10-20 15:05:04 -0300 |
commit | 164cbcebeaed273d9cab7d09c4e0723a1cc233b8 (patch) | |
tree | a7c105ee99b7264d57c7c572df9e831b6614fafc /include | |
parent | 6664edc5a9f8ea8b3437b08877f94018b858bcd0 (diff) | |
download | binutils-gdb-164cbcebeaed273d9cab7d09c4e0723a1cc233b8.tar.gz |
[Morello] Add new DWARF defines for capabilities
This patch adds some new definitions required for Morello.
* DWARF base types: DW_ATE_CHERI_signed_intcap and DW_ATE_CHERI_unsigned_intcap.
* DWARF address class: DW_ADDR_capability
* DWARF register numbering
It also adds support for handling DW_ATE_CHERI_signed_intcap and
DW_ATE_CHERI_unsigned_intcap on binutils and GDB.
binutils/ChangeLog
2020-10-20 Luis Machado <luis.machado@arm.com>
* dwarf.c (get_type_signedness): Handles capabilities.
(read_and_display_attr_value): Likewise.
gdb/ChangeLog:
2020-10-20 Luis Machado <luis.machado@arm.com>
* aarch64-tdep.h (AARCH64_DWARF_C0, AARCH64_DWARF_CSP)
(AARCH64_DWARF_PCC, AARCH64_DWARF_DDC)
(AARCH64_DWARF_RESERVED_1, AARCH64_DWARF_RESERVED_2)
(C_REGISTER_SIZE): New defines.
* dwarf2/read.c (read_base_type): Handle capabilities.
include/ChangeLog
2020-10-20 Luis Machado <luis.machado@arm.com>
* dwarf2.def (DW_ATE_CHERI_signed_intcap)
(DW_ATE_CHERI_unsigned_intcap): New defines.
* dwarf2.h (DW_ADDR_capability): New define.
Diffstat (limited to 'include')
-rw-r--r-- | include/ChangeLog | 6 | ||||
-rw-r--r-- | include/dwarf2.def | 5 | ||||
-rw-r--r-- | include/dwarf2.h | 3 |
3 files changed, 14 insertions, 0 deletions
diff --git a/include/ChangeLog b/include/ChangeLog index 982e25f8f14..86f78d47141 100644 --- a/include/ChangeLog +++ b/include/ChangeLog @@ -1,3 +1,9 @@ +2020-10-20 Luis Machado <luis.machado@arm.com> + + * dwarf2.def (DW_ATE_CHERI_signed_intcap) + (DW_ATE_CHERI_unsigned_intcap): New defines. + * dwarf2.h (DW_ADDR_capability): New define. + 2020-10-20 Siddhesh Poyarekar <siddesh.poyarekar@arm.com> * elf/aarch64.h: New Morello TLSDESC relocations. diff --git a/include/dwarf2.def b/include/dwarf2.def index 13825a3eef7..c559ed1f5bf 100644 --- a/include/dwarf2.def +++ b/include/dwarf2.def @@ -750,6 +750,11 @@ DW_ATE (DW_ATE_HP_unsigned_fixed, 0x8e) /* Cobol. */ DW_ATE (DW_ATE_HP_VAX_complex_float, 0x8f) /* F or G floating complex. */ DW_ATE (DW_ATE_HP_VAX_complex_float_d, 0x90) /* D floating complex. */ +/* Describes a signed integer/capability type __intcap_t. */ +DW_ATE (DW_ATE_CHERI_signed_intcap, 0xa0) +/* Describes an unsigned integer/capability type __uintcap_t. */ +DW_ATE (DW_ATE_CHERI_unsigned_intcap, 0xa1) + DW_END_ATE DW_FIRST_CFA (DW_CFA_advance_loc, 0x40) diff --git a/include/dwarf2.h b/include/dwarf2.h index 83cf50d7bf5..ce1cc633af7 100644 --- a/include/dwarf2.h +++ b/include/dwarf2.h @@ -331,6 +331,9 @@ enum dwarf_location_list_entry_type #define DW_ADDR_none 0 +/* The type is an address capability and can be dereferenced as such. */ +#define DW_ADDR_capability 0x1 + /* Source language names and codes. */ enum dwarf_source_language { |