From: Mike Frysinger Date: Sat, 28 Mar 2015 18:55:11 +0000 (-0400) Subject: sim: sh: fix broken handling in DSR reg X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=02131c7ff660a5ca08147899429e6e7780d737aa;p=binutils-gdb.git sim: sh: fix broken handling in DSR reg 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. --- diff --git a/sim/sh/ChangeLog b/sim/sh/ChangeLog index 3e0fff15159..46b8e530f19 100644 --- a/sim/sh/ChangeLog +++ b/sim/sh/ChangeLog @@ -1,3 +1,7 @@ +2015-03-28 Mike Frysinger + + * gencode.c (ppi_gensim): Add missing */. Change case 4 to case 5. + 2015-03-28 Mike Frysinger * Makefile.in (gencode): Add $(BUILD_CFLAGS), $(BUILD_LDFLAGS), diff --git a/sim/sh/gencode.c b/sim/sh/gencode.c index 0fb1b87c24f..bcaeb6c33a0 100644 --- a/sim/sh/gencode.c +++ b/sim/sh/gencode.c @@ -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");