This is the mail archive of the gdb-patches@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[PATCH] sim: bfin: do not extend accumulator in LSHIFT insns


From: Robin Getz <robin.getz@analog.com>

The logical shift insn does not sign extend before shifting, so
we shouldn't either.

Committed.

Signed-off-by: Robin Getz <robin.getz@analog.com>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>

2011-06-18  Robin Getz  <robin.getz@analog.com>

	* bfin-sim.c (decode_dsp32shift_0): Use get_unextended_acc
	rather than get_extended_acc in LSHIFT insns.
---
 sim/bfin/bfin-sim.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/sim/bfin/bfin-sim.c b/sim/bfin/bfin-sim.c
index 20602b7..2c71f6c 100644
--- a/sim/bfin/bfin-sim.c
+++ b/sim/bfin/bfin-sim.c
@@ -5230,7 +5230,7 @@ decode_dsp32shift_0 (SIM_CPU *cpu, bu16 iw0, bu16 iw1)
 
       HLs = !!HLs;
       TRACE_INSN (cpu, "A%i = LSHIFT A%i BY R%i.L;", HLs, HLs, src0);
-      val = get_extended_acc (cpu, HLs);
+      val = get_unextended_acc (cpu, HLs);
 
       if (shft <= 0)
 	val = lshiftrt (cpu, val, -shft, 40);
-- 
1.7.5.3


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]