]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blobdiff - gdb/arch-utils.h
Fix powerpc-power8.exp test with new mnemonics
[thirdparty/binutils-gdb.git] / gdb / arch-utils.h
index 43d64b1f4f24933cd98ac41c5dfb8e4db3101b10..a5b40ad8ff1bdbc0a4760482c3d527fd8314bbc5 100644 (file)
@@ -1,6 +1,6 @@
 /* Dynamic architecture support for GDB, the GNU debugger.
 
-   Copyright (C) 1998-2020 Free Software Foundation, Inc.
+   Copyright (C) 1998-2021 Free Software Foundation, Inc.
 
    This file is part of GDB.
 
@@ -75,9 +75,7 @@ struct bp_manipulation_endian
   BREAK_INSN_LITTLE, BREAK_INSN_BIG>
 
 /* Default implementation of gdbarch_displaced_hw_singlestep.  */
-extern int
-  default_displaced_step_hw_singlestep (struct gdbarch *,
-                                       struct displaced_step_closure *);
+extern bool default_displaced_step_hw_singlestep (struct gdbarch *);
 
 /* Possible value for gdbarch_displaced_step_location:
    Place displaced instructions at the program's entry point,
@@ -134,6 +132,28 @@ extern const struct floatformat **
   default_floatformat_for_type (struct gdbarch *gdbarch,
                                const char *name, int len);
 
+/* Default implementation of gdbarch_memtag_to_string.  */
+extern std::string default_memtag_to_string (struct gdbarch *gdbarch,
+                                            struct value *tag);
+
+/* Default implementation of gdbarch_tagged_address_p.  */
+bool default_tagged_address_p (struct gdbarch *gdbarch, struct value *address);
+
+/* Default implementation of gdbarch_memtag_matches_p.  */
+extern bool default_memtag_matches_p (struct gdbarch *gdbarch,
+                                      struct value *address);
+
+/* Default implementation of gdbarch_set_memtags.  */
+bool default_set_memtags (struct gdbarch *gdbarch,
+                         struct value *address, size_t length,
+                         const gdb::byte_vector &tags,
+                         memtag_type tag_type);
+
+/* Default implementation of gdbarch_get_memtag.  */
+struct value *default_get_memtag (struct gdbarch *gdbarch,
+                                 struct value *address,
+                                 memtag_type tag_type);
+
 extern CORE_ADDR generic_skip_trampoline_code (struct frame_info *frame,
                                               CORE_ADDR pc);
 
@@ -280,4 +300,15 @@ extern ULONGEST default_type_align (struct gdbarch *gdbarch,
 extern std::string default_get_pc_address_flags (frame_info *frame,
                                                 CORE_ADDR pc);
 
+/* Default implementation of gdbarch read_core_file_mappings method.  */
+extern void default_read_core_file_mappings (struct gdbarch *gdbarch,
+                                            struct bfd *cbfd,
+                                            gdb::function_view<void (ULONGEST count)>
+                                              pre_loop_cb,
+                                            gdb::function_view<void (int num,
+                                                                     ULONGEST start,
+                                                                     ULONGEST end,
+                                                                     ULONGEST file_ofs,
+                                                                     const char *filename)>
+                                              loop_cb);
 #endif /* ARCH_UTILS_H */