OSDN Git Service

2004-10-13 Frank Ch. Eigler <fche@redhat.com>
authorfche <fche@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 13 Oct 2004 18:18:18 +0000 (18:18 +0000)
committerfche <fche@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 13 Oct 2004 18:18:18 +0000 (18:18 +0000)
* toplev.c (compile_file): Call mudflap_finish_file from here ...
* c-decl.c (c_write_global_declarations): ... instead of here ...
* cp/decl.c (cp_finish_file): ... and here.
* tree-mudflap.c (mudflap_enqueue_decl): Reword a warning message.

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

gcc/ChangeLog
gcc/c-decl.c
gcc/cp/decl2.c
gcc/toplev.c
gcc/tree-mudflap.c

index 17e62d0..d1c9fe0 100644 (file)
@@ -1,3 +1,10 @@
+2004-10-13  Frank Ch. Eigler  <fche@redhat.com>
+
+       * toplev.c (compile_file): Call mudflap_finish_file from here ...
+       * c-decl.c (c_write_global_declarations): ... instead of here ...
+       * cp/decl.c (cp_finish_file): ... and here.
+       * tree-mudflap.c (mudflap_enqueue_decl): Reword a warning message.
+
 2004-10-13  Andrew Pinski  <pinskia@physics.uc.edu>
 
        * tree-ssa-dom.c (record_range): Free the element if we are not
 2004-10-13  Andrew Pinski  <pinskia@physics.uc.edu>
 
        * tree-ssa-dom.c (record_range): Free the element if we are not
index 4d6d24b..b548f85 100644 (file)
@@ -7300,11 +7300,6 @@ c_write_global_declarations (void)
   /* We're done parsing; proceed to optimize and emit assembly.
      FIXME: shouldn't be the front end's responsibility to call this.  */
   cgraph_optimize ();
   /* We're done parsing; proceed to optimize and emit assembly.
      FIXME: shouldn't be the front end's responsibility to call this.  */
   cgraph_optimize ();
-
-  /* Presently this has to happen after cgraph_optimize.
-     FIXME: shouldn't be the front end's responsibility to call this.  */
-  if (flag_mudflap)
-    mudflap_finish_file ();
 }
 
 #include "gt-c-decl.h"
 }
 
 #include "gt-c-decl.h"
index 7a55907..6562f28 100644 (file)
@@ -3066,11 +3066,6 @@ cp_finish_file (void)
   cgraph_finalize_compilation_unit ();
   cgraph_optimize ();
 
   cgraph_finalize_compilation_unit ();
   cgraph_optimize ();
 
-  /* Emit mudflap static registration function.  This must be done
-     after all the user functions have been expanded.  */
-  if (flag_mudflap)
-    mudflap_finish_file ();
-
   /* Now, issue warnings about static, but not defined, functions,
      etc., and emit debugging information.  */
   walk_namespaces (wrapup_globals_for_namespace, /*data=*/&reconsider);
   /* Now, issue warnings about static, but not defined, functions,
      etc., and emit debugging information.  */
   walk_namespaces (wrapup_globals_for_namespace, /*data=*/&reconsider);
index eaeeeca..31dbbe1 100644 (file)
@@ -80,6 +80,7 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA
 #include "coverage.h"
 #include "value-prof.h"
 #include "alloc-pool.h"
 #include "coverage.h"
 #include "value-prof.h"
 #include "alloc-pool.h"
+#include "tree-mudflap.h"
 
 #if defined (DWARF2_UNWIND_INFO) || defined (DWARF2_DEBUGGING_INFO)
 #include "dwarf2out.h"
 
 #if defined (DWARF2_UNWIND_INFO) || defined (DWARF2_DEBUGGING_INFO)
 #include "dwarf2out.h"
@@ -1004,6 +1005,10 @@ compile_file (void)
      functions in this compilation unit were deferred.  */
   coverage_finish ();
 
      functions in this compilation unit were deferred.  */
   coverage_finish ();
 
+  /* Likewise for mudflap static object registrations.  */
+  if (flag_mudflap)
+    mudflap_finish_file ();
+
   /* Write out any pending weak symbol declarations.  */
 
   weak_finish ();
   /* Write out any pending weak symbol declarations.  */
 
   weak_finish ();
index bc42de7..f4d3d47 100644 (file)
@@ -1215,7 +1215,7 @@ mudflap_enqueue_decl (tree obj)
       for (i = 0; i < VARRAY_ACTIVE_SIZE (deferred_static_decls); i++)
         if (VARRAY_TREE (deferred_static_decls, i) == obj)
           {
       for (i = 0; i < VARRAY_ACTIVE_SIZE (deferred_static_decls); i++)
         if (VARRAY_TREE (deferred_static_decls, i) == obj)
           {
-            warning ("mudflap cannot track lifetime of %qs",
+            warning ("mudflap cannot track unknown size extern %qs",
                      IDENTIFIER_POINTER (DECL_NAME (obj)));
             return;
           }
                      IDENTIFIER_POINTER (DECL_NAME (obj)));
             return;
           }