2003-05-23 Andrew Cagney <cagney@redhat.com>

* p-valprint.c (pascal_val_print): Replace extract_address with
	the inline equivalent extract_unsigned_integer.
	* jv-valprint.c (java_value_print): Ditto.
	* ada-valprint.c (ada_val_print_1): Ditto.
	* ada-lang.h (EXTRACT_ADDRESS): Ditto.
This commit is contained in:
Andrew Cagney 2003-05-24 03:21:42 +00:00
parent 8d0fd02a11
commit b276f1bbc9
5 changed files with 38 additions and 15 deletions

View file

@ -1,3 +1,11 @@
2003-05-23 Andrew Cagney <cagney@redhat.com>
* p-valprint.c (pascal_val_print): Replace extract_address with
the inline equivalent extract_unsigned_integer.
* jv-valprint.c (java_value_print): Ditto.
* ada-valprint.c (ada_val_print_1): Ditto.
* ada-lang.h (EXTRACT_ADDRESS): Ditto.
2003-05-23 Theodore A. Roth <troth@openavr.org> 2003-05-23 Theodore A. Roth <troth@openavr.org>
* blockframe.c (frameless_look_for_prologue): Remove unused * blockframe.c (frameless_look_for_prologue): Remove unused

View file

@ -27,9 +27,9 @@ struct partial_symbol;
struct block; struct block;
/* A macro to reorder the bytes of an address depending on the endiannes /* A macro to reorder the bytes of an address depending on the
of the target */ endiannes of the target. */
#define EXTRACT_ADDRESS(x) ((void *) extract_address (&(x), sizeof (x))) #define EXTRACT_ADDRESS(x) ((void *) extract_unsigned_integer (&(x), sizeof (x)))
/* A macro to reorder the bytes of an int depending on the endiannes /* A macro to reorder the bytes of an int depending on the endiannes
of the target */ of the target */
#define EXTRACT_INT(x) ((int) extract_signed_integer (&(x), sizeof (x))) #define EXTRACT_INT(x) ((int) extract_signed_integer (&(x), sizeof (x)))

View file

@ -742,9 +742,11 @@ ada_val_print_1 (struct type *type, char *valaddr0, int embedded_offset,
if (addressprint) if (addressprint)
{ {
fprintf_filtered (stream, "@"); fprintf_filtered (stream, "@");
/* Extract an address, assume that the address is unsigned. */
print_address_numeric print_address_numeric
(extract_address (valaddr, (extract_unsigned_integer (valaddr,
TARGET_PTR_BIT / HOST_CHAR_BIT), 1, stream); TARGET_PTR_BIT / HOST_CHAR_BIT),
1, stream);
if (deref_ref) if (deref_ref)
fputs_filtered (": ", stream); fputs_filtered (": ", stream);
} }

View file

@ -110,14 +110,22 @@ java_value_print (struct value *val, struct ui_file *stream, int format,
{ {
read_memory (address, buf, sizeof (buf)); read_memory (address, buf, sizeof (buf));
address += TARGET_PTR_BIT / HOST_CHAR_BIT; address += TARGET_PTR_BIT / HOST_CHAR_BIT;
element = extract_address (buf, sizeof (buf)); /* FIXME: cagney/2003-05-24: Bogus or what. It
pulls a host sized pointer out of the target and
then extracts that as an address (while assuming
that the address is unsigned)! */
element = extract_unsigned_integer (buf, sizeof (buf));
} }
for (reps = 1; i + reps < length; reps++) for (reps = 1; i + reps < length; reps++)
{ {
read_memory (address, buf, sizeof (buf)); read_memory (address, buf, sizeof (buf));
address += TARGET_PTR_BIT / HOST_CHAR_BIT; address += TARGET_PTR_BIT / HOST_CHAR_BIT;
next_element = extract_address (buf, sizeof (buf)); /* FIXME: cagney/2003-05-24: Bogus or what. It
pulls a host sized pointer out of the target and
then extracts that as an address (while assuming
that the address is unsigned)! */
next_element = extract_unsigned_integer (buf, sizeof (buf));
if (next_element != element) if (next_element != element)
break; break;
} }
@ -468,7 +476,8 @@ java_val_print (struct type *type, char *valaddr, int embedded_offset,
/* Print the unmangled name if desired. */ /* Print the unmangled name if desired. */
/* Print vtable entry - we only get here if we ARE using /* Print vtable entry - we only get here if we ARE using
-fvtable_thunks. (Otherwise, look under TYPE_CODE_STRUCT.) */ -fvtable_thunks. (Otherwise, look under TYPE_CODE_STRUCT.) */
print_address_demangle (extract_address (valaddr, TYPE_LENGTH (type)), /* Extract an address, assume that it is unsigned. */
print_address_demangle (extract_unsigned_integer (valaddr, TYPE_LENGTH (type)),
stream, demangle); stream, demangle);
break; break;
} }

View file

@ -141,7 +141,8 @@ pascal_val_print (struct type *type, char *valaddr, int embedded_offset,
/* Print the unmangled name if desired. */ /* Print the unmangled name if desired. */
/* Print vtable entry - we only get here if we ARE using /* Print vtable entry - we only get here if we ARE using
-fvtable_thunks. (Otherwise, look under TYPE_CODE_STRUCT.) */ -fvtable_thunks. (Otherwise, look under TYPE_CODE_STRUCT.) */
print_address_demangle (extract_address (valaddr + embedded_offset, TYPE_LENGTH (type)), /* Extract the address, assume that it is unsigned. */
print_address_demangle (extract_unsigned_integer (valaddr + embedded_offset, TYPE_LENGTH (type)),
stream, demangle); stream, demangle);
break; break;
} }
@ -272,9 +273,11 @@ pascal_val_print (struct type *type, char *valaddr, int embedded_offset,
if (addressprint) if (addressprint)
{ {
fprintf_filtered (stream, "@"); fprintf_filtered (stream, "@");
/* Extract the address, assume that it is unsigned. */
print_address_numeric print_address_numeric
(extract_address (valaddr + embedded_offset, (extract_unsigned_integer (valaddr + embedded_offset,
TARGET_PTR_BIT / HOST_CHAR_BIT), 1, stream); TARGET_PTR_BIT / HOST_CHAR_BIT),
1, stream);
if (deref_ref) if (deref_ref)
fputs_filtered (": ", stream); fputs_filtered (": ", stream);
} }
@ -312,10 +315,11 @@ pascal_val_print (struct type *type, char *valaddr, int embedded_offset,
/* Print the unmangled name if desired. */ /* Print the unmangled name if desired. */
/* Print vtable entry - we only get here if NOT using /* Print vtable entry - we only get here if NOT using
-fvtable_thunks. (Otherwise, look under TYPE_CODE_PTR.) */ -fvtable_thunks. (Otherwise, look under TYPE_CODE_PTR.) */
print_address_demangle (extract_address ( /* Extract the address, assume that it is unsigned. */
valaddr + embedded_offset + TYPE_FIELD_BITPOS (type, VTBL_FNADDR_OFFSET) / 8, print_address_demangle
TYPE_LENGTH (TYPE_FIELD_TYPE (type, VTBL_FNADDR_OFFSET))), (extract_unsigned_integer (valaddr + embedded_offset + TYPE_FIELD_BITPOS (type, VTBL_FNADDR_OFFSET) / 8,
stream, demangle); TYPE_LENGTH (TYPE_FIELD_TYPE (type, VTBL_FNADDR_OFFSET))),
stream, demangle);
} }
else else
{ {