OSDN Git Service

2006-02-04 Andreas Tobler <a.tobler@schweiz.ch>
authorandreast <andreast@138bc75d-0d04-0410-961f-82ee72b054a4>
Sat, 4 Feb 2006 00:21:55 +0000 (00:21 +0000)
committerandreast <andreast@138bc75d-0d04-0410-961f-82ee72b054a4>
Sat, 4 Feb 2006 00:21:55 +0000 (00:21 +0000)
* expr.c (java_stack_swap): Revert gcc_assert patch.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@110579 138bc75d-0d04-0410-961f-82ee72b054a4

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

index 95b3807..a218b80 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 c28f6b2..6d8926c 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);