diff options
author | Mike Frysinger <vapier@gentoo.org> | 2012-03-19 05:06:23 +0000 |
---|---|---|
committer | Mike Frysinger <vapier@gentoo.org> | 2012-03-19 05:06:23 +0000 |
commit | e62bb22a4b6fa21c1138ab1d3e999d84b27b5e2b (patch) | |
tree | 865ef2909a802b726b04fa1099b488da2e8ad0cb /sim/bfin/ChangeLog | |
parent | 509deab2dcc19550953aa1c886b0f0cac7f9b8bd (diff) | |
download | binutils-e62bb22a4b6fa21c1138ab1d3e999d84b27b5e2b.zip binutils-e62bb22a4b6fa21c1138ab1d3e999d84b27b5e2b.tar.gz binutils-e62bb22a4b6fa21c1138ab1d3e999d84b27b5e2b.tar.bz2 |
sim: bfin: fix corner case Logical shift issues
From: Robin Getz <robin.getz@analog.com>
Overflow with shift operations happens independently of saturation, but
we have the logic merged. Extend the lshift function so that callers
can tell it when to handle each independently, and then do so when it's
needed.
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/ChangeLog | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/sim/bfin/ChangeLog b/sim/bfin/ChangeLog index bac48f3..35863c9 100644 --- a/sim/bfin/ChangeLog +++ b/sim/bfin/ChangeLog @@ -1,3 +1,14 @@ +2012-03-19 Robin Getz <robin.getz@analog.com> + Mike Frysinger <vapier@gentoo.org> + + * bfin-sim.c (lshift): Add an overflow flag. Delete now unused + i, j, and tmp vars. Add a new v_i var. Split the overflow logic + out from the saturate logic. Do not set V ASTAT bits when working + with accumulators. + (decode_ALU2op_0): Add new argument to lshift call. + (decode_LOGI2op_0, decode_dsp32shift_0, decode_dsp32shiftimm_0): + Likewise. + 2012-03-18 Mike Frysinger <vapier@gentoo.org> * dv-bfin_ebiu_amc.c (struct bfin_ebiu_amc): Add bank_base. |