aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree-inline.c
diff options
context:
space:
mode:
authorJakub Jelinek <jakub@redhat.com>2008-07-09 21:32:54 +0200
committerJakub Jelinek <jakub@gcc.gnu.org>2008-07-09 21:32:54 +0200
commitd406b663d0e9973eeb9211409fe35d70b973db34 (patch)
tree36739d69af4b92f19e771bb69a776ef920375013 /gcc/tree-inline.c
parentb0a0ab2d51723c6f19db57f9732d4c4ca7278f3d (diff)
downloadgcc-d406b663d0e9973eeb9211409fe35d70b973db34.zip
gcc-d406b663d0e9973eeb9211409fe35d70b973db34.tar.gz
gcc-d406b663d0e9973eeb9211409fe35d70b973db34.tar.bz2
gimplify.c (struct gimplify_ctx): Move to tree-gimple.h.
* gimplify.c (struct gimplify_ctx): Move to tree-gimple.h. (push_gimplify_context): Don't allocate temp_htab nor c itself here. Add c argument. (pop_gimplify_context): Check c->temp_htab instead of optimize whether htab_delete should be called. Don't free c. (lookup_tmp_var): Create temp_htab lazily. (gimplify_scan_omp_clauses, gimplify_omp_parallel, gimplify_omp_task, gimplify_body, force_gimple_operand): Adjust push_gimplify_context callers. * omp-low.c (lower_omp_sections, lower_omp_single, lower_omp_master, lower_omp_ordered, lower_omp_critical, lower_omp_for, create_task_copyfn, lower_omp_taskreg, execute_lower_omp): * tree-ssa-ccp.c (convert_to_gimple_builtin): Likewise. * tree-sra.c (generate_element_init): Likewise. * tree-mudflap.c (execute_mudflap_function_ops, execute_mudflap_function_decls): Likewise. * tree-inline.c (setup_one_parameter, optimize_inline_calls): Likewise. * tree-gimple.h (struct gimplify_ctx): New type. (push_gimplify_context): Adjust prototype. From-SVN: r137666
Diffstat (limited to 'gcc/tree-inline.c')
-rw-r--r--gcc/tree-inline.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/gcc/tree-inline.c b/gcc/tree-inline.c
index 0f1a8bd..c0f4c88 100644
--- a/gcc/tree-inline.c
+++ b/gcc/tree-inline.c
@@ -1590,8 +1590,9 @@ setup_one_parameter (copy_body_data *id, tree p, tree value, tree fn,
|| !is_gimple_reg (var))
{
tree_stmt_iterator i;
+ struct gimplify_ctx gctx;
- push_gimplify_context ();
+ push_gimplify_context (&gctx);
gimplify_stmt (&init_stmt);
if (gimple_in_ssa_p (cfun)
&& init_stmt && TREE_CODE (init_stmt) == STATEMENT_LIST)
@@ -2986,6 +2987,8 @@ optimize_inline_calls (tree fn)
tree prev_fn;
basic_block bb;
int last = n_basic_blocks;
+ struct gimplify_ctx gctx;
+
/* There is no point in performing inlining if errors have already
occurred -- and we might crash if we try to inline invalid
code. */
@@ -3012,7 +3015,7 @@ optimize_inline_calls (tree fn)
id.transform_lang_insert_block = NULL;
id.statements_to_fold = pointer_set_create ();
- push_gimplify_context ();
+ push_gimplify_context (&gctx);
/* We make no attempts to keep dominance info up-to-date. */
free_dominance_info (CDI_DOMINATORS);