From 9c4bf6f3ddcba39cbc39ac9fb9373c5b1ba7987a Mon Sep 17 00:00:00 2001 From: Mike Frysinger Date: Thu, 24 Mar 2011 05:27:38 +0000 Subject: opcodes: blackfin: ignore (M) on MAC0-only dsp mac funcs If the MAC1 part of the insn is disabled, then the (M) flag is ignored. Rather than include it in the decode, move the MM clearing to the MAC0 portion of the code. Signed-off-by: Mike Frysinger --- opcodes/ChangeLog | 4 ++++ opcodes/bfin-dis.c | 5 ++++- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/opcodes/ChangeLog b/opcodes/ChangeLog index 6ef45255f02..734f824cd41 100644 --- a/opcodes/ChangeLog +++ b/opcodes/ChangeLog @@ -1,3 +1,7 @@ +2011-03-24 Mike Frysinger + + * bfin-dis.c (decode_dsp32mac_0): Move MM zeroing down to MAC0 logic. + 2011-03-22 Eric B. Weddington * avr-dis.c (avr_operand): Add opcode_str parameter. Check for diff --git a/opcodes/bfin-dis.c b/opcodes/bfin-dis.c index 2357a2a45de..130dfc7719e 100644 --- a/opcodes/bfin-dis.c +++ b/opcodes/bfin-dis.c @@ -3010,13 +3010,16 @@ decode_dsp32mac_0 (TIword iw0, TIword iw1, disassemble_info *outf) { if (MM) OUTS (outf, " (M)"); - MM = 0; OUTS (outf, ", "); } } if (w0 == 1 || op0 != 3) { + /* Clear MM option since it only matters for MAC1, and if we made + it this far, we've already shown it or we want to ignore it. */ + MM = 0; + if (w0) OUTS (outf, P ? dregs (dst) : dregs_lo (dst)); -- cgit v1.2.1