* compile.c (sim_resume): Fix all rotate-by-2-bits insns.
authorJeff Law <law@redhat.com>
Wed, 10 Jul 1996 04:15:17 +0000 (04:15 +0000)
committerJeff Law <law@redhat.com>
Wed, 10 Jul 1996 04:15:17 +0000 (04:15 +0000)
sim/h8300/ChangeLog
sim/h8300/compile.c

index 4550b6a8237eb0b5fb43aad2a07288903e368ffb..42c7bce7d6da80d320a57cd20eb61f6736c91303 100644 (file)
@@ -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
index 7159af2b37dad444dddccacfa2ecedc20888a615..247a53a15eef87743bff92208d8894b63101825c 100644 (file)
@@ -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):
          {