expr.c (java_stack_swap): Revert gcc_assert patch.
authorAndreas Tobler <a.tobler@schweiz.ch>
Sat, 4 Feb 2006 00:21:55 +0000 (01:21 +0100)
committerAndreas Tobler <andreast@gcc.gnu.org>
Sat, 4 Feb 2006 00:21:55 +0000 (01:21 +0100)
2006-02-04  Andreas Tobler  <a.tobler@schweiz.ch>

* expr.c (java_stack_swap): Revert gcc_assert patch.

From-SVN: r110579

gcc/java/ChangeLog
gcc/java/expr.c

index 95b380797a3f86102ef02b55463053bf35a76f39..a218b80263dcbe833003b1bf505f60e55e008c80 100644 (file)
@@ -1,3 +1,7 @@
+2006-02-04  Andreas Tobler  <a.tobler@schweiz.ch>
+
+       * expr.c (java_stack_swap): Revert gcc_assert patch.
+
 2006-02-03  Ben Elliston  <bje@au.ibm.com>
 
        * java-gimplify.c: Use gcc_assert and gcc_unreachable throughout.
index c28f6b253359b6a48c9fe2c4d2fd03fee5a9835a..6d8926cdef4ee2d4327da945152e12c6b437594a 100644 (file)
@@ -629,12 +629,14 @@ java_stack_swap (void)
   tree temp;
   tree decl1, decl2;
 
+  if (stack_pointer < 2
+      || (type1 = stack_type_map[stack_pointer - 1]) == TYPE_UNKNOWN
+      || (type2 = stack_type_map[stack_pointer - 2]) == TYPE_UNKNOWN
+      || type1 == TYPE_SECOND || type2 == TYPE_SECOND
+      || TYPE_IS_WIDE (type1) || TYPE_IS_WIDE (type2))
+    /* Bad stack swap.  */
+    abort ();
   /* Bad stack swap.  */
-  gcc_assert (stack_pointer >= 2
-             && (type1 = stack_type_map[stack_pointer - 1]) != TYPE_UNKNOWN
-             && (type2 = stack_type_map[stack_pointer - 2]) != TYPE_UNKNOWN
-             && (type1 != TYPE_SECOND && type2 != TYPE_SECOND)
-             && (! TYPE_IS_WIDE (type1) && ! TYPE_IS_WIDE (type2)));
 
   flush_quick_stack ();
   decl1 = find_stack_slot (stack_pointer - 1, type1);