aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gdb/ChangeLog6
-rw-r--r--gdb/config/mn10200/tm-mn10200.h8
2 files changed, 14 insertions, 0 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index bbf86fc..b12ff40 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,9 @@
+Wed Apr 23 11:18:45 1997 Jeffrey A Law (law@cygnus.com)
+
+ * config/mn10200/tm-mn10200.h (STORE_RETURN_VALUE): Pointers are
+ returned in $a0.
+ (EXTRACT_RETURN_VALUE): Likewise.
+
Tue Apr 22 11:58:15 1997 Fred Fish <fnf@cygnus.com>
* config/arm/tm-arm.h (TARGET_DOUBLE_FORMAT): Define to use
diff --git a/gdb/config/mn10200/tm-mn10200.h b/gdb/config/mn10200/tm-mn10200.h
index 9977fde..dfe95cb 100644
--- a/gdb/config/mn10200/tm-mn10200.h
+++ b/gdb/config/mn10200/tm-mn10200.h
@@ -129,6 +129,10 @@ extern CORE_ADDR mn10200_frame_saved_pc PARAMS ((struct frame_info *));
memcpy (VALBUF, REGBUF + REGISTER_BYTE (0), 2); \
memcpy (VALBUF + 2, REGBUF + REGISTER_BYTE (1), 2); \
} \
+ else if (TYPE_CODE (TYPE) == TYPE_CODE_PTR)\
+ { \
+ memcpy (VALBUF, REGBUF + REGISTER_BYTE (4), TYPE_LENGTH (TYPE)); \
+ } \
else \
{ \
memcpy (VALBUF, REGBUF + REGISTER_BYTE (0), TYPE_LENGTH (TYPE)); \
@@ -148,6 +152,10 @@ extern CORE_ADDR mn10200_frame_saved_pc PARAMS ((struct frame_info *));
write_register_bytes (REGISTER_BYTE (0), VALBUF, 2); \
write_register_bytes (REGISTER_BYTE (1), VALBUF + 2, 2); \
} \
+ else if (TYPE_CODE (TYPE) == TYPE_CODE_PTR)\
+ { \
+ write_register_bytes (REGISTER_BYTE (4), VALBUF, TYPE_LENGTH (TYPE)); \
+ } \
else \
{ \
write_register_bytes (REGISTER_BYTE (0), VALBUF, TYPE_LENGTH (TYPE)); \