This is the mail archive of the
gdb-patches@sources.redhat.com
mailing list for the GDB project.
[patch] Fix build probs; change address_class* to pure multi-arch
- From: Andrew Cagney <ac131313 at redhat dot com>
- To: Kevin Buettner <kevinb at redhat dot com>,gdb-patches at sources dot redhat dot com
- Date: Fri, 25 Oct 2002 11:59:19 -0400
- Subject: [patch] Fix build probs; change address_class* to pure multi-arch
Hello,
Per my suggestion to Kevin, this patch fixes the current build problems
with the non multi-arch targets.
http://sources.redhat.com/ml/gdb-patches/2002-10/msg00391.html
Commited.
Andrew
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.
Index: gdbarch.sh
===================================================================
RCS file: /cvs/src/src/gdb/gdbarch.sh,v
retrieving revision 1.165
diff -u -r1.165 gdbarch.sh
--- gdbarch.sh 16 Oct 2002 20:50:21 -0000 1.165
+++ gdbarch.sh 25 Oct 2002 15:52:21 -0000
@@ -665,8 +665,8 @@
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
}
Index: gdbtypes.c
===================================================================
RCS file: /cvs/src/src/gdb/gdbtypes.c,v
retrieving revision 1.60
diff -u -r1.60 gdbtypes.c
--- gdbtypes.c 16 Oct 2002 20:50:22 -0000 1.60
+++ gdbtypes.c 25 Oct 2002 15:52:22 -0000
@@ -397,14 +397,17 @@
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);
@@ -416,13 +419,14 @@
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;
}