aboutsummaryrefslogtreecommitdiff
path: root/sim/bfin/ChangeLog
diff options
context:
space:
mode:
authorMike Frysinger <vapier@gentoo.org>2012-04-09 05:52:38 +0000
committerMike Frysinger <vapier@gentoo.org>2012-04-09 05:52:38 +0000
commitef0b041e050c0a7f489a1a68ca284db910742cbc (patch)
tree0c8740d1ccca32910b961366de109578247316df /sim/bfin/ChangeLog
parente0dc84cdd48bcc964f0b509ffdfa942ec0cc73ed (diff)
downloadfsf-binutils-gdb-ef0b041e050c0a7f489a1a68ca284db910742cbc.zip
fsf-binutils-gdb-ef0b041e050c0a7f489a1a68ca284db910742cbc.tar.gz
fsf-binutils-gdb-ef0b041e050c0a7f489a1a68ca284db910742cbc.tar.bz2
sim: bfin: fix ASTAT/correctness issues with arithmetic shifts
This improves some of the arithmetic shifts to better match the hardware (especially wrt ASTAT behavior). We hit areas where the published documentation is thin so we have to rely on tests run on the hardware to figure out how things should behave. Signed-off-by: Robin Getz <robin.getz@analog.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Diffstat (limited to 'sim/bfin/ChangeLog')
-rw-r--r--sim/bfin/ChangeLog7
1 files changed, 7 insertions, 0 deletions
diff --git a/sim/bfin/ChangeLog b/sim/bfin/ChangeLog
index cf6beb1..14cb28d 100644
--- a/sim/bfin/ChangeLog
+++ b/sim/bfin/ChangeLog
@@ -1,3 +1,10 @@
+2012-04-09 Robin Getz <robin.getz@analog.com>
+
+ * bfin-sim.c (sgn_extend): New helper.
+ (decode_dsp32shiftimm_0): Call lshift when newimmag is more
+ than 16, otherwise call ashiftrt. Set ASTAT fields as needed.
+ For accumulator shifts, call new sgn_extend helper.
+
2012-04-08 Mike Frysinger <vapier@gentoo.org>
* bfin-sim.c (illegal_instruction_or_combination): New helper.