summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorLuis Machado <luis.machado@arm.com>2020-03-05 17:13:25 -0300
committerLuis Machado <luis.machado@linaro.org>2020-10-20 15:05:04 -0300
commit164cbcebeaed273d9cab7d09c4e0723a1cc233b8 (patch)
treea7c105ee99b7264d57c7c572df9e831b6614fafc /include
parent6664edc5a9f8ea8b3437b08877f94018b858bcd0 (diff)
downloadbinutils-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/ChangeLog6
-rw-r--r--include/dwarf2.def5
-rw-r--r--include/dwarf2.h3
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
{