From e551c2572e97cf7ab0a431f5a1f25207d9a4d179 Mon Sep 17 00:00:00 2001 From: Nick Clifton Date: Thu, 29 Aug 2002 16:59:20 +0000 Subject: Makefile.in: Add gen-zero-r0 option. sim-main.h (GPR_SET, GPR_CLEAR): Define. simops.c (OP_24007E0): Sign extend the imm9 operand of a mul instruction. --- sim/v850/ChangeLog | 9 +++++++++ sim/v850/Makefile.in | 1 + sim/v850/sim-main.h | 2 ++ sim/v850/simops.c | 2 +- 4 files changed, 13 insertions(+), 1 deletion(-) (limited to 'sim') diff --git a/sim/v850/ChangeLog b/sim/v850/ChangeLog index cb20ad5..c8b3aab 100644 --- a/sim/v850/ChangeLog +++ b/sim/v850/ChangeLog @@ -1,3 +1,12 @@ +2002-08-29 Nick Clifton + + From 2001-08-23 Catherine Moore + + * Makefile.in: Add gen-zero-r0 option. + * sim-main.h (GPR_SET, GPR_CLEAR): Define. + * simops.c (OP_24007E0): Sign extend the imm9 + operand of a mul instruction. + 2002-06-17 Andrew Cagney * simops.c (trace_result): Fix printf formatting. diff --git a/sim/v850/Makefile.in b/sim/v850/Makefile.in index 110cb17..89029d6 100644 --- a/sim/v850/Makefile.in +++ b/sim/v850/Makefile.in @@ -82,6 +82,7 @@ tmp-igen: $(IGEN_INSN) $(IGEN_DC) ../igen/igen ../igen/igen \ $(IGEN_TRACE) \ -G gen-direct-access \ + -G gen-zero-r0 \ -i $(IGEN_INSN) \ -o $(IGEN_DC) \ -x \ diff --git a/sim/v850/sim-main.h b/sim/v850/sim-main.h index 37ea31f..a16ec00 100644 --- a/sim/v850/sim-main.h +++ b/sim/v850/sim-main.h @@ -366,6 +366,8 @@ do { \ #endif +#define GPR_SET(N, VAL) (State.regs[(N)] = (VAL)) +#define GPR_CLEAR(N) (State.regs[(N)] = 0) extern void divun ( unsigned int N, unsigned long int als, diff --git a/sim/v850/simops.c b/sim/v850/simops.c index 9a83d07..d8a4d58 100644 --- a/sim/v850/simops.c +++ b/sim/v850/simops.c @@ -2458,7 +2458,7 @@ OP_24007E0 (void) { trace_input ("mul", OP_IMM_REG_REG, 0); - Multiply64 (true, (OP[3] & 0x1f) | ((OP[3] >> 13) & 0x1e0)); + Multiply64 (true, SEXT9 ((OP[3] & 0x1f) | ((OP[3] >> 13) & 0x1e0))); trace_output (OP_IMM_REG_REG); -- cgit v1.1