OSDN Git Service

2004-08-10 Bryce McKinlay <mckinlay@redhat.com>
authorbryce <bryce@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 10 Aug 2004 15:41:15 +0000 (15:41 +0000)
committerbryce <bryce@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 10 Aug 2004 15:41:15 +0000 (15:41 +0000)
* java-gimplify.c (java_gimplify_new_array_init): Use
create_tmp_var. Don't create BLOCK here or call
java_gimplify_block.

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

gcc/java/ChangeLog
gcc/java/java-gimplify.c

index 49c40ee..a1e5a05 100644 (file)
@@ -1,3 +1,8 @@
+2004-08-10  Bryce McKinlay  <mckinlay@redhat.com>
+
+       * java-gimplify.c (java_gimplify_new_array_init): Use create_tmp_var.
+       Don't create BLOCK here or call java_gimplify_block.
+
 2004-08-09  H.J. Lu  <hongjiu.lu@intel.com>
 
        * java-tree.h (flag_deprecated): Removed.
index 5dd69bf..2d3be99 100644 (file)
@@ -247,18 +247,12 @@ java_gimplify_new_array_init (tree exp)
   tree values = CONSTRUCTOR_ELTS (init);
 
   tree array_ptr_type = build_pointer_type (array_type);
-  tree block = build0 (BLOCK, array_ptr_type);
-  tree tmp = build_decl (VAR_DECL, get_identifier ("<tmp>"), array_ptr_type);
-  tree array = build_decl (VAR_DECL, get_identifier ("<array>"),
-                          array_ptr_type);
+  tree tmp = create_tmp_var (array_ptr_type, "array");
   tree body = build2 (MODIFY_EXPR, array_ptr_type, tmp,
                      build_new_array (element_type, length));
 
   int index = 0;
 
-  DECL_CONTEXT (array) = current_function_decl;
-  DECL_CONTEXT (tmp) = current_function_decl;
-
   /* FIXME: try to allocate array statically?  */
   while (values != NULL_TREE)
     {
@@ -276,12 +270,7 @@ java_gimplify_new_array_init (tree exp)
       values = TREE_CHAIN (values);
     }
 
-  body = build2 (COMPOUND_EXPR, array_ptr_type, body,
-                build2 (MODIFY_EXPR, array_ptr_type, array, tmp));
-  TREE_CHAIN (tmp) = array;
-  BLOCK_VARS (block) = tmp;
-  BLOCK_EXPR_BODY (block) = body;
-  return java_gimplify_block (block);
+  return build2 (COMPOUND_EXPR, array_ptr_type, body, tmp);
 }
 
 static tree