diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index b758a716442..c4a98be285f 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,10 @@
+2011-04-19  Pierre Muller  <muller@ics.u-strasbg.fr>
+	    Pedro Alves  <pedro@codesourcery.com>
+
+	* xstormy16-tdep.c (xstormy16_push_dummy_call): Add local
+	variables to simplify code and avoid == operator at end of
+	line as this is against GNU coding standards.
+
 2011-04-19  Pierre Muller  <muller@ics.u-strasbg.fr>
 
 	* solib-svr4.c (svr4_keep_data_in_core): Rename local variable
diff --git a/gdb/xstormy16-tdep.c b/gdb/xstormy16-tdep.c
index 53cbecdf9b6..bf32cbdac67 100644
--- a/gdb/xstormy16-tdep.c
+++ b/gdb/xstormy16-tdep.c
@@ -263,12 +263,13 @@ xstormy16_push_dummy_call (struct gdbarch *gdbarch,
       /* Put argument into registers wordwise.  */
       val = value_contents (args[i]);
       for (j = 0; j < typelen; j += xstormy16_reg_size)
-	regcache_cooked_write_unsigned (regcache, argreg++,
-			extract_unsigned_integer (val + j,
-						  typelen - j ==
-						  1 ? 1 :
-						  xstormy16_reg_size,
-						  byte_order));
+	{
+	  ULONGEST regval;
+	  int size = (typelen - j == 1) ? 1 : xstormy16_reg_size;
+
+	  regval = extract_unsigned_integer (val + j, size, byte_order);
+	  regcache_cooked_write_unsigned (regcache, argreg++, regval);
+	}
     }
 
   /* Align SP */