sim: sh: fix broken handling in DSR reg
authorMike Frysinger <vapier@gentoo.org>
Sat, 28 Mar 2015 18:55:11 +0000 (14:55 -0400)
committerMike Frysinger <vapier@gentoo.org>
Sat, 28 Mar 2015 21:45:30 +0000 (17:45 -0400)
A missing */ caused a case statement to be incorrect masked out which
also hide an error where the wrong value was being checked.  Fix both.

sim/sh/ChangeLog
sim/sh/gencode.c

index 3e0fff15159c84b35a28e2c535280e7b39c3d16a..46b8e530f19dcefc8cd70ec907f80099e8698929 100644 (file)
@@ -1,3 +1,7 @@
+2015-03-28  Mike Frysinger  <vapier@gentoo.org>
+
+       * gencode.c (ppi_gensim): Add missing */.  Change case 4 to case 5.
+
 2015-03-28  Mike Frysinger  <vapier@gentoo.org>
 
        * Makefile.in (gencode): Add $(BUILD_CFLAGS), $(BUILD_LDFLAGS),
index 0fb1b87c24f61623bea88c4952cc4840d2fb304f..bcaeb6c33a012f21734e963aa91357661c8195a4 100644 (file)
@@ -3359,11 +3359,11 @@ ppi_gensim (void)
   printf ("      DSR |= res_grd >> 7 & 1;\n");
   printf ("    case 2: /* Zero Value Mode */\n");
   printf ("      DSR |= DSR >> 6 & 1;\n");
-  printf ("    case 3: /* Overflow mode\n");
+  printf ("    case 3: /* Overflow mode */\n");
   printf ("      DSR |= overflow >> 4;\n");
   printf ("    case 4: /* Signed Greater Than Mode */\n");
   printf ("      DSR |= DSR >> 7 & 1;\n");
-  printf ("    case 4: /* Signed Greater Than Or Equal Mode */\n");
+  printf ("    case 5: /* Signed Greater Than Or Equal Mode */\n");
   printf ("      DSR |= greater_equal >> 7;\n");
   printf ("    }\n");
   printf (" assign_z:\n");