]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
tree-mudflap.c (ml_decl_cache_locals, [...]): add newly referenced vars.
authorJan Hubicka <jh@suse.cz>
Sun, 24 Dec 2006 10:17:15 +0000 (11:17 +0100)
committerJan Hubicka <hubicka@gcc.gnu.org>
Sun, 24 Dec 2006 10:17:15 +0000 (10:17 +0000)
* tree-mudflap.c (ml_decl_cache_locals, md_build_check_statement_for):
add newly referenced vars.

From-SVN: r120188

gcc/ChangeLog
gcc/tree-mudflap.c

index 61925fa37052e675b032029fa77a5a0aee367e56..dc885b7db54ab4322ac4511ea724a8eedc244411 100644 (file)
@@ -1,3 +1,8 @@
+2006-12-24  Jan Hubicka  <jh@suse.cz>
+
+       * tree-mudflap.c (ml_decl_cache_locals, md_build_check_statement_for):
+       add newly referenced vars.
+
 2006-12-24  Kazu Hirata  <kazu@codesourcery.com>
 
        * basic-block.h: Remove the prototype for
index 4d80c19d385d63b7c8ba3bd7de4d281e972e47f3..209dc00ab77ccd9f1e59bed6daa613253f5ca9cd 100644 (file)
@@ -460,12 +460,14 @@ mf_decl_cache_locals (void)
      globals into the cache variables.  */
   t = build2 (GIMPLE_MODIFY_STMT, TREE_TYPE (mf_cache_shift_decl_l),
               mf_cache_shift_decl_l, mf_cache_shift_decl);
+  add_referenced_var (mf_cache_shift_decl);
   SET_EXPR_LOCATION (t, DECL_SOURCE_LOCATION (current_function_decl));
   gimplify_to_stmt_list (&t);
   shift_init_stmts = t;
 
   t = build2 (GIMPLE_MODIFY_STMT, TREE_TYPE (mf_cache_mask_decl_l),
               mf_cache_mask_decl_l, mf_cache_mask_decl);
+  add_referenced_var (mf_cache_mask_decl);
   SET_EXPR_LOCATION (t, DECL_SOURCE_LOCATION (current_function_decl));
   gimplify_to_stmt_list (&t);
   mask_init_stmts = t;
@@ -571,13 +573,17 @@ mf_build_check_statement_for (tree base, tree limit,
                                             & __mf_mask].  */
   t = build2 (RSHIFT_EXPR, mf_uintptr_type, mf_base,
               (flag_mudflap_threads ? mf_cache_shift_decl : mf_cache_shift_decl_l));
+  add_referenced_var (mf_cache_shift_decl);
   t = build2 (BIT_AND_EXPR, mf_uintptr_type, t,
               (flag_mudflap_threads ? mf_cache_mask_decl : mf_cache_mask_decl_l));
+  add_referenced_var (mf_cache_mask_decl);
   t = build4 (ARRAY_REF,
               TREE_TYPE (TREE_TYPE (mf_cache_array_decl)),
               mf_cache_array_decl, t, NULL_TREE, NULL_TREE);
+  add_referenced_var (mf_cache_array_decl);
   t = build1 (ADDR_EXPR, mf_cache_structptr_type, t);
   t = build2 (GIMPLE_MODIFY_STMT, void_type_node, mf_elem, t);
+  add_referenced_var (mf_elem);
   SET_EXPR_LOCUS (t, locus);
   gimplify_to_stmt_list (&t);
   tsi_link_after (&tsi, t, TSI_CONTINUE_LINKING);
@@ -601,6 +607,7 @@ mf_build_check_statement_for (tree base, tree limit,
               build1 (INDIRECT_REF, mf_cache_struct_type, mf_elem),
               TYPE_FIELDS (mf_cache_struct_type), NULL_TREE);
   t = build2 (GT_EXPR, boolean_type_node, t, mf_base);
+  add_referenced_var (mf_base);
 
   /* Construct '__mf_elem->high < __mf_limit'.