* gdbtypes.c (address_space_name_to_int): Update.
(address_space_int_to_name): Update.
* gdbarch.sh (address_class_type_flags_to_name): Change to a pure
multi-arch predicate.
(address_class_name_to_type_flags): Ditto.
* gdbarch.h, gdbarch.c: Re-generate.
2002-10-25 Andrew Cagney <cagney@redhat.com>
+ * gdbtypes.c (address_space_name_to_int): Update.
+ (address_space_int_to_name): Update.
+ * gdbarch.sh (address_class_type_flags_to_name): Change to a pure
+ multi-arch predicate.
+ (address_class_name_to_type_flags): Ditto.
+ * gdbarch.h, gdbarch.c: Re-generate.
+
* MAINTAINERS: Check all warnings when h8300hms and alpha-elf.
2002-10-24 Martin M. Hunt <hunt@redhat.com>
fprintf_unfiltered (file,
"gdbarch_dump: pseudo_register_write = 0x%08lx\n",
(long) current_gdbarch->pseudo_register_write);
-#ifdef ADDRESS_CLASS_NAME_TO_TYPE_FLAGS
- fprintf_unfiltered (file,
- "gdbarch_dump: %s # %s\n",
- "ADDRESS_CLASS_NAME_TO_TYPE_FLAGS(name, type_flags_ptr)",
- XSTRING (ADDRESS_CLASS_NAME_TO_TYPE_FLAGS (name, type_flags_ptr)));
if (GDB_MULTI_ARCH)
fprintf_unfiltered (file,
- "gdbarch_dump: ADDRESS_CLASS_NAME_TO_TYPE_FLAGS = 0x%08lx\n",
- (long) current_gdbarch->address_class_name_to_type_flags
- /*ADDRESS_CLASS_NAME_TO_TYPE_FLAGS ()*/);
-#endif
+ "gdbarch_dump: address_class_name_to_type_flags = 0x%08lx\n",
+ (long) current_gdbarch->address_class_name_to_type_flags);
#ifdef ADDRESS_CLASS_TYPE_FLAGS
fprintf_unfiltered (file,
"gdbarch_dump: %s # %s\n",
(long) current_gdbarch->address_class_type_flags
/*ADDRESS_CLASS_TYPE_FLAGS ()*/);
#endif
-#ifdef ADDRESS_CLASS_TYPE_FLAGS_TO_NAME
- fprintf_unfiltered (file,
- "gdbarch_dump: %s # %s\n",
- "ADDRESS_CLASS_TYPE_FLAGS_TO_NAME(type_flags)",
- XSTRING (ADDRESS_CLASS_TYPE_FLAGS_TO_NAME (type_flags)));
if (GDB_MULTI_ARCH)
fprintf_unfiltered (file,
- "gdbarch_dump: ADDRESS_CLASS_TYPE_FLAGS_TO_NAME = 0x%08lx\n",
- (long) current_gdbarch->address_class_type_flags_to_name
- /*ADDRESS_CLASS_TYPE_FLAGS_TO_NAME ()*/);
-#endif
+ "gdbarch_dump: address_class_type_flags_to_name = 0x%08lx\n",
+ (long) current_gdbarch->address_class_type_flags_to_name);
#ifdef ADDRESS_TO_POINTER
#if GDB_MULTI_ARCH
/* Macro might contain `[{}]' when not multi-arch */
"gdbarch: gdbarch_address_class_type_flags_to_name invalid");
if (gdbarch_debug >= 2)
fprintf_unfiltered (gdb_stdlog, "gdbarch_address_class_type_flags_to_name called\n");
- return gdbarch->address_class_type_flags_to_name (type_flags);
+ return gdbarch->address_class_type_flags_to_name (gdbarch, type_flags);
}
void
"gdbarch: gdbarch_address_class_name_to_type_flags invalid");
if (gdbarch_debug >= 2)
fprintf_unfiltered (gdb_stdlog, "gdbarch_address_class_name_to_type_flags called\n");
- return gdbarch->address_class_name_to_type_flags (name, type_flags_ptr);
+ return gdbarch->address_class_name_to_type_flags (gdbarch, name, type_flags_ptr);
}
void
#endif
#endif
-#if defined (ADDRESS_CLASS_TYPE_FLAGS_TO_NAME)
-/* Legacy for systems yet to multi-arch ADDRESS_CLASS_TYPE_FLAGS_TO_NAME */
-#if !defined (ADDRESS_CLASS_TYPE_FLAGS_TO_NAME_P)
-#define ADDRESS_CLASS_TYPE_FLAGS_TO_NAME_P() (1)
-#endif
-#endif
-
-/* Default predicate for non- multi-arch targets. */
-#if (!GDB_MULTI_ARCH) && !defined (ADDRESS_CLASS_TYPE_FLAGS_TO_NAME_P)
-#define ADDRESS_CLASS_TYPE_FLAGS_TO_NAME_P() (0)
-#endif
-
extern int gdbarch_address_class_type_flags_to_name_p (struct gdbarch *gdbarch);
-#if (GDB_MULTI_ARCH > GDB_MULTI_ARCH_PARTIAL) && defined (ADDRESS_CLASS_TYPE_FLAGS_TO_NAME_P)
-#error "Non multi-arch definition of ADDRESS_CLASS_TYPE_FLAGS_TO_NAME"
-#endif
-#if (GDB_MULTI_ARCH > GDB_MULTI_ARCH_PARTIAL) || !defined (ADDRESS_CLASS_TYPE_FLAGS_TO_NAME_P)
-#define ADDRESS_CLASS_TYPE_FLAGS_TO_NAME_P() (gdbarch_address_class_type_flags_to_name_p (current_gdbarch))
-#endif
-/* Default (function) for non- multi-arch platforms. */
-#if (!GDB_MULTI_ARCH) && !defined (ADDRESS_CLASS_TYPE_FLAGS_TO_NAME)
-#define ADDRESS_CLASS_TYPE_FLAGS_TO_NAME(type_flags) (internal_error (__FILE__, __LINE__, "ADDRESS_CLASS_TYPE_FLAGS_TO_NAME"), 0)
-#endif
-
-typedef char * (gdbarch_address_class_type_flags_to_name_ftype) (int type_flags);
+typedef char * (gdbarch_address_class_type_flags_to_name_ftype) (struct gdbarch *gdbarch, int type_flags);
extern char * gdbarch_address_class_type_flags_to_name (struct gdbarch *gdbarch, int type_flags);
extern void set_gdbarch_address_class_type_flags_to_name (struct gdbarch *gdbarch, gdbarch_address_class_type_flags_to_name_ftype *address_class_type_flags_to_name);
-#if (GDB_MULTI_ARCH > GDB_MULTI_ARCH_PARTIAL) && defined (ADDRESS_CLASS_TYPE_FLAGS_TO_NAME)
-#error "Non multi-arch definition of ADDRESS_CLASS_TYPE_FLAGS_TO_NAME"
-#endif
-#if GDB_MULTI_ARCH
-#if (GDB_MULTI_ARCH > GDB_MULTI_ARCH_PARTIAL) || !defined (ADDRESS_CLASS_TYPE_FLAGS_TO_NAME)
-#define ADDRESS_CLASS_TYPE_FLAGS_TO_NAME(type_flags) (gdbarch_address_class_type_flags_to_name (current_gdbarch, type_flags))
-#endif
-#endif
-
-#if defined (ADDRESS_CLASS_NAME_TO_TYPE_FLAGS)
-/* Legacy for systems yet to multi-arch ADDRESS_CLASS_NAME_TO_TYPE_FLAGS */
-#if !defined (ADDRESS_CLASS_NAME_TO_TYPE_FLAGS_P)
-#define ADDRESS_CLASS_NAME_TO_TYPE_FLAGS_P() (1)
-#endif
-#endif
-
-/* Default predicate for non- multi-arch targets. */
-#if (!GDB_MULTI_ARCH) && !defined (ADDRESS_CLASS_NAME_TO_TYPE_FLAGS_P)
-#define ADDRESS_CLASS_NAME_TO_TYPE_FLAGS_P() (0)
-#endif
extern int gdbarch_address_class_name_to_type_flags_p (struct gdbarch *gdbarch);
-#if (GDB_MULTI_ARCH > GDB_MULTI_ARCH_PARTIAL) && defined (ADDRESS_CLASS_NAME_TO_TYPE_FLAGS_P)
-#error "Non multi-arch definition of ADDRESS_CLASS_NAME_TO_TYPE_FLAGS"
-#endif
-#if (GDB_MULTI_ARCH > GDB_MULTI_ARCH_PARTIAL) || !defined (ADDRESS_CLASS_NAME_TO_TYPE_FLAGS_P)
-#define ADDRESS_CLASS_NAME_TO_TYPE_FLAGS_P() (gdbarch_address_class_name_to_type_flags_p (current_gdbarch))
-#endif
-/* Default (function) for non- multi-arch platforms. */
-#if (!GDB_MULTI_ARCH) && !defined (ADDRESS_CLASS_NAME_TO_TYPE_FLAGS)
-#define ADDRESS_CLASS_NAME_TO_TYPE_FLAGS(name, type_flags_ptr) (internal_error (__FILE__, __LINE__, "ADDRESS_CLASS_NAME_TO_TYPE_FLAGS"), 0)
-#endif
-
-typedef int (gdbarch_address_class_name_to_type_flags_ftype) (char *name, int *type_flags_ptr);
+typedef int (gdbarch_address_class_name_to_type_flags_ftype) (struct gdbarch *gdbarch, char *name, int *type_flags_ptr);
extern int gdbarch_address_class_name_to_type_flags (struct gdbarch *gdbarch, char *name, int *type_flags_ptr);
extern void set_gdbarch_address_class_name_to_type_flags (struct gdbarch *gdbarch, gdbarch_address_class_name_to_type_flags_ftype *address_class_name_to_type_flags);
-#if (GDB_MULTI_ARCH > GDB_MULTI_ARCH_PARTIAL) && defined (ADDRESS_CLASS_NAME_TO_TYPE_FLAGS)
-#error "Non multi-arch definition of ADDRESS_CLASS_NAME_TO_TYPE_FLAGS"
-#endif
-#if GDB_MULTI_ARCH
-#if (GDB_MULTI_ARCH > GDB_MULTI_ARCH_PARTIAL) || !defined (ADDRESS_CLASS_NAME_TO_TYPE_FLAGS)
-#define ADDRESS_CLASS_NAME_TO_TYPE_FLAGS(name, type_flags_ptr) (gdbarch_address_class_name_to_type_flags (current_gdbarch, name, type_flags_ptr))
-#endif
-#endif
extern struct gdbarch_tdep *gdbarch_tdep (struct gdbarch *gdbarch);
v::CANNOT_STEP_BREAKPOINT:int:cannot_step_breakpoint::::0:0::0
v::HAVE_NONSTEPPABLE_WATCHPOINT:int:have_nonsteppable_watchpoint::::0:0::0
F:2:ADDRESS_CLASS_TYPE_FLAGS:int:address_class_type_flags:int byte_size, int dwarf2_addr_class:byte_size, dwarf2_addr_class
-F:2:ADDRESS_CLASS_TYPE_FLAGS_TO_NAME:char *:address_class_type_flags_to_name:int type_flags:type_flags
-F:2:ADDRESS_CLASS_NAME_TO_TYPE_FLAGS:int:address_class_name_to_type_flags:char *name, int *type_flags_ptr:name, type_flags_ptr
+M:2:ADDRESS_CLASS_TYPE_FLAGS_TO_NAME:char *:address_class_type_flags_to_name:int type_flags:type_flags:
+M:2:ADDRESS_CLASS_NAME_TO_TYPE_FLAGS:int:address_class_name_to_type_flags:char *name, int *type_flags_ptr:name, type_flags_ptr
EOF
}
extern int
address_space_name_to_int (char *space_identifier)
{
+ struct gdbarch *gdbarch = current_gdbarch;
int type_flags;
/* Check for known address space delimiters. */
if (!strcmp (space_identifier, "code"))
return TYPE_FLAG_CODE_SPACE;
else if (!strcmp (space_identifier, "data"))
return TYPE_FLAG_DATA_SPACE;
- else if (ADDRESS_CLASS_NAME_TO_TYPE_FLAGS_P ()
- && ADDRESS_CLASS_NAME_TO_TYPE_FLAGS (space_identifier, &type_flags))
+ else if (gdbarch_address_class_name_to_type_flags_p (gdbarch)
+ && gdbarch_address_class_name_to_type_flags (gdbarch,
+ space_identifier,
+ &type_flags))
return type_flags;
else
error ("Unknown address space specifier: \"%s\"", space_identifier);
extern char *
address_space_int_to_name (int space_flag)
{
+ struct gdbarch *gdbarch = current_gdbarch;
if (space_flag & TYPE_FLAG_CODE_SPACE)
return "code";
else if (space_flag & TYPE_FLAG_DATA_SPACE)
return "data";
else if ((space_flag & TYPE_FLAG_ADDRESS_CLASS_ALL)
- && ADDRESS_CLASS_TYPE_FLAGS_TO_NAME_P ())
- return ADDRESS_CLASS_TYPE_FLAGS_TO_NAME (space_flag);
+ && gdbarch_address_class_type_flags_to_name_p (gdbarch))
+ return gdbarch_address_class_type_flags_to_name (gdbarch, space_flag);
else
return NULL;
}