Commit 3daa26d0 by Richard Biener Committed by Richard Biener

gimple-fold.h (gimple_fold_builtin): Remove.

2014-08-04  Richard Biener  <rguenther@suse.de>

	* gimple-fold.h (gimple_fold_builtin): Remove.
	* gimple-fold.c (gimple_fold_builtin): Make static.
	* tree-ssa-ccp.c (pass_fold_builtins::execute): Use
	fold_stmt, not gimple_fold_builtin.

From-SVN: r213585
parent 24d4b3d5
2014-08-04 Richard Biener <rguenther@suse.de>
* gimple-fold.h (gimple_fold_builtin): Remove.
* gimple-fold.c (gimple_fold_builtin): Make static.
* tree-ssa-ccp.c (pass_fold_builtins::execute): Use
fold_stmt, not gimple_fold_builtin.
2014-08-04 Martin Liska <mliska@suse.cz>
* cgraph.h (csi_end_p): Removed.
......
......@@ -873,7 +873,7 @@ get_maxval_strlen (tree arg, tree *length, bitmap visited, int type)
Note that some builtins expand into inline code that may not
be valid in GIMPLE. Callers must take care. */
tree
static tree
gimple_fold_builtin (gimple stmt)
{
tree result, val[3];
......
......@@ -25,7 +25,6 @@ along with GCC; see the file COPYING3. If not see
extern tree canonicalize_constructor_val (tree, tree);
extern tree get_symbol_constant_value (tree);
extern void gimplify_and_update_call_from_tree (gimple_stmt_iterator *, tree);
extern tree gimple_fold_builtin (gimple);
extern bool fold_stmt (gimple_stmt_iterator *);
extern bool fold_stmt_inplace (gimple_stmt_iterator *);
extern tree maybe_fold_and_comparisons (enum tree_code, tree, tree,
......
......@@ -2655,7 +2655,7 @@ pass_fold_builtins::execute (function *fun)
for (i = gsi_start_bb (bb); !gsi_end_p (i); )
{
gimple stmt, old_stmt;
tree callee, result;
tree callee;
enum built_in_function fcode;
stmt = gsi_stmt (i);
......@@ -2680,20 +2680,20 @@ pass_fold_builtins::execute (function *fun)
gsi_next (&i);
continue;
}
callee = gimple_call_fndecl (stmt);
if (!callee || DECL_BUILT_IN_CLASS (callee) != BUILT_IN_NORMAL)
{
gsi_next (&i);
continue;
}
fcode = DECL_FUNCTION_CODE (callee);
result = gimple_fold_builtin (stmt);
if (result)
gimple_remove_stmt_histograms (fun, stmt);
if (!result)
fcode = DECL_FUNCTION_CODE (callee);
if (fold_stmt (&i))
;
else
{
tree result = NULL_TREE;
switch (DECL_FUNCTION_CODE (callee))
{
case BUILT_IN_CONSTANT_P:
......@@ -2729,13 +2729,20 @@ pass_fold_builtins::execute (function *fun)
break;
/* FALLTHRU */
default:
default:;
}
if (!result)
{
gsi_next (&i);
continue;
}
if (result == NULL_TREE)
break;
if (!update_call_from_tree (&i, result))
gimplify_and_update_call_from_tree (&i, result);
}
todoflags |= TODO_update_address_taken;
if (dump_file && (dump_flags & TDF_DETAILS))
{
......@@ -2744,12 +2751,6 @@ pass_fold_builtins::execute (function *fun)
}
old_stmt = stmt;
if (!update_call_from_tree (&i, result))
{
gimplify_and_update_call_from_tree (&i, result);
todoflags |= TODO_update_address_taken;
}
stmt = gsi_stmt (i);
update_stmt (stmt);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment