> * decl.c (init_decl_processing): Mark throw_node as a noreturn > function with...
authorAnthony Green <green@cygnus.com>
Thu, 9 Dec 1999 12:32:48 +0000 (12:32 +0000)
committerAnthony Green <green@gcc.gnu.org>
Thu, 9 Dec 1999 12:32:48 +0000 (12:32 +0000)
  >     * decl.c (init_decl_processing): Mark throw_node as a noreturn
  >     function with side effects.
  >     (init_decl_processing): Mark all memory allocating DECLs with
  >     DECL_IS_MALLOC.

From-SVN: r30845

gcc/java/ChangeLog
gcc/java/decl.c

index bf90f870a310ab0f00c1fea76b4fcce3ff5a170f..f8df0fe9255b309b3ca9ea817f879d9b237174af 100644 (file)
@@ -1,3 +1,10 @@
+1999-12-5  Anthony Green  <green@cygnus.com>
+
+       * decl.c (init_decl_processing): Mark throw_node as a noreturn
+       function with side effects.
+       (init_decl_processing): Mark all memory allocating DECLs with
+       DECL_IS_MALLOC.
+
 Wed Dec  1 04:25:06 1999  Alexandre Petit-Bianco  <apbianco@cygnus.com>
 
         * except.c (expand_end_java_handler): Call
index ab22211bde41daf2bee8ddf38b4214746b923ff3..4d6ecbd579c213c566401eab67e8d8cfc1d5a644 100644 (file)
@@ -699,6 +699,7 @@ init_decl_processing ()
   alloc_object_node = builtin_function ("_Jv_AllocObject",
                                        build_function_type (ptr_type_node, t),
                                        0, NOT_BUILT_IN, NULL_PTR);
+  DECL_IS_MALLOC (alloc_object_node) = 1;
   soft_initclass_node = builtin_function ("_Jv_InitClass",
                                          build_function_type (void_type_node,
                                                               t),
@@ -708,6 +709,9 @@ init_decl_processing ()
   throw_node = builtin_function ("_Jv_Throw",
                                 build_function_type (ptr_type_node, t),
                                 0, NOT_BUILT_IN, NULL_PTR);
+  /* Mark throw_node as a `noreturn' function with side effects.  */
+  TREE_THIS_VOLATILE (throw_node) = 1;
+  TREE_SIDE_EFFECTS (throw_node) = 1;
   t = build_function_type (int_type_node, endlink);
   soft_monitorenter_node 
     = builtin_function ("_Jv_MonitorEnter", t, 0, NOT_BUILT_IN,
@@ -722,6 +726,7 @@ init_decl_processing ()
       = builtin_function ("_Jv_NewArray",
                          build_function_type(ptr_type_node, t),
                          0, NOT_BUILT_IN, NULL_PTR);
+  DECL_IS_MALLOC (soft_newarray_node) = 1;
 
   t = tree_cons (NULL_TREE, int_type_node,
                 tree_cons (NULL_TREE, class_ptr_type,
@@ -730,6 +735,7 @@ init_decl_processing ()
       = builtin_function ("_Jv_NewObjectArray",
                          build_function_type (ptr_type_node, t),
                          0, NOT_BUILT_IN, NULL_PTR);
+  DECL_IS_MALLOC (soft_anewarray_node) = 1;
 
   t = tree_cons (NULL_TREE, ptr_type_node,
                 tree_cons (NULL_TREE, int_type_node, endlink));
@@ -737,12 +743,15 @@ init_decl_processing ()
       = builtin_function ("_Jv_NewMultiArray",
                          build_function_type (ptr_type_node, t),
                          0, NOT_BUILT_IN, NULL_PTR);
+  DECL_IS_MALLOC (soft_multianewarray_node) = 1;
 
   t = build_function_type (void_type_node, 
                           tree_cons (NULL_TREE, int_type_node, endlink));
   soft_badarrayindex_node
       = builtin_function ("_Jv_ThrowBadArrayIndex", t, 
                          0, NOT_BUILT_IN, NULL_PTR);
+  /* Mark soft_badarrayindex_node as a `noreturn' function with side
+     effects.  */
   TREE_THIS_VOLATILE (soft_badarrayindex_node) = 1;
   TREE_SIDE_EFFECTS (soft_badarrayindex_node) = 1;