From: Jeff Law Date: Wed, 10 Jul 1996 04:15:17 +0000 (+0000) Subject: * compile.c (sim_resume): Fix all rotate-by-2-bits insns. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=9745c59321bef13f823d84294ea47d67c5522379;p=binutils-gdb.git * compile.c (sim_resume): Fix all rotate-by-2-bits insns. --- diff --git a/sim/h8300/ChangeLog b/sim/h8300/ChangeLog index 4550b6a8237..42c7bce7d6d 100644 --- a/sim/h8300/ChangeLog +++ b/sim/h8300/ChangeLog @@ -1,3 +1,7 @@ +Tue Jul 9 22:15:39 1996 Jeffrey A Law (law@cygnus.com) + + * compile.c (sim_resume): Fix all rotate-by-2-bits insns. + Tue Jul 2 23:08:45 1996 Jeffrey A Law (law@cygnus.com) * run.c (main): Don't "load" sections which don't have diff --git a/sim/h8300/compile.c b/sim/h8300/compile.c index 7159af2b37d..247a53a15ee 100644 --- a/sim/h8300/compile.c +++ b/sim/h8300/compile.c @@ -1264,16 +1264,16 @@ sim_resume (step, siggnal) t = rd & hm; c = rd & 2; v = 0; rd >>= 2; rd |= t | t >> 1 ); OSHIFTS (O_ROTL, c = rd & hm; v = 0; rd <<= 1; rd |= C, - c = rd & (hm >> 1); v = 0; rd <<= 2; rd |= C); + c = rd & hm; v = 0; rd <<= 1; rd |= C; c = rd & hm; rd <<= 1; rd |= C); OSHIFTS (O_ROTR, c = rd & 1; v = 0; rd = (unsigned int) rd >> 1; if (c) rd |= hm, - c = rd & 2; v = 0; rd = (unsigned int) rd >> 2; if (c) rd |= hm); + c = rd & 1; v = 0; rd = (unsigned int) rd >> 1; if (c) rd |= hm; c = rd & 1; rd = (unsigned int) rd >> 1; if (c) rd |= hm); OSHIFTS (O_ROTXL, t = rd & hm; rd <<= 1; rd |= C; c = t; v = 0, - t = rd & (hm >> 1); rd <<= 2; rd |= C; c = t; v = 0); + t = rd & hm; rd <<= 1; rd |= C; c = t; v = 0; t = rd & hm; rd <<= 1; rd |= C; c = t); OSHIFTS (O_ROTXR, t = rd & 1; rd = (unsigned int) rd >> 1; if (C) rd |= hm; c = t; v = 0, - t = rd & 2; rd = (unsigned int) rd >> 2; if (C) rd |= hm; c = t; v = 0); + t = rd & 1; rd = (unsigned int) rd >> 1; if (C) rd |= hm; c = t; v = 0; t = rd & 1; rd = (unsigned int) rd >> 1; if (C) rd |= hm; c = t); case O (O_JMP, SB): {