summaryrefslogtreecommitdiffstats
path: root/gdb/config/d10v
diff options
context:
space:
mode:
authorAndrew Cagney <cagney@redhat.com>1998-02-06 07:26:11 +0000
committerAndrew Cagney <cagney@redhat.com>1998-02-06 07:26:11 +0000
commit608addd4404b51b7d283e095cc9bf3bb3c3895f5 (patch)
tree527fa0065b7fd127265232d985318149d5d17f15 /gdb/config/d10v
parent1430b6ed3a210ad84f4534340e228e31b138b163 (diff)
downloadppe42-binutils-608addd4404b51b7d283e095cc9bf3bb3c3895f5.tar.gz
ppe42-binutils-608addd4404b51b7d283e095cc9bf3bb3c3895f5.zip
* config/d10v/tm-d10v.h (D10V_CONVERT_IADDR_TO_RAW,
D10V_CONVERT_DADDR_TO_RAW): Define. * d10v-tdep.c (d10v_push_arguments): Re-write. Pass arguments in registers, regardless of their size, when they fit.
Diffstat (limited to 'gdb/config/d10v')
-rw-r--r--gdb/config/d10v/tm-d10v.h7
1 files changed, 5 insertions, 2 deletions
diff --git a/gdb/config/d10v/tm-d10v.h b/gdb/config/d10v/tm-d10v.h
index bbcd182c63..36eb1d4e1c 100644
--- a/gdb/config/d10v/tm-d10v.h
+++ b/gdb/config/d10v/tm-d10v.h
@@ -143,8 +143,11 @@ extern CORE_ADDR d10v_skip_prologue ();
#define D10V_MAKE_DADDR(x) ( (x) & 0x3000000 ? (x) : ((x) | DMEM_START))
#define D10V_MAKE_IADDR(x) ( (x) & 0x3000000 ? (x) : (((x) << 2) | IMEM_START))
-#define D10V_DADDR_P(x) ( ((x) & 0x3000000) == DMEM_START)
-#define D10V_IADDR_P(x) ( ((x) & 0x3000000) == IMEM_START))
+#define D10V_DADDR_P(X) (((X) & 0x3000000) == DMEM_START)
+#define D10V_IADDR_P(X) (((X) & 0x3000000) == IMEM_START)
+
+#define D10V_CONVERT_IADDR_TO_RAW(X) (((X) & ~0x3000000) >> 2)
+#define D10V_CONVERT_DADDR_TO_RAW(X) (((X) & ~0x3000000))
#define ARG1_REGNUM R0_REGNUM
#define ARGN_REGNUM 3
OpenPOWER on IntegriCloud