summaryrefslogtreecommitdiffstats
path: root/gcc/tree-inline.c
diff options
context:
space:
mode:
authorhubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4>2005-05-13 13:57:19 +0000
committerhubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4>2005-05-13 13:57:19 +0000
commiteb0fefdb9683c4842532535b6051be0d762223d1 (patch)
tree0103e79ff875c3089dc30563ad5cc977bee6de6e /gcc/tree-inline.c
parent4b8784dc6196a68be5fc99cfbee99a6af08a0414 (diff)
downloadppe42-gcc-eb0fefdb9683c4842532535b6051be0d762223d1.tar.gz
ppe42-gcc-eb0fefdb9683c4842532535b6051be0d762223d1.zip
* gcc.dg/builtins-43.c: Use gimple dump instead of generic.
* gcc.dg/fold-xor-?.c: Likewise. * gcc.dg/pr15784-?.c: Likewise. * gcc.dg/pr20922-?.c: Likewise. * gcc.dg/tree-ssa/20050128-1.c: Likewise. * gcc.dg/tree-ssa/pr17598.c: Likewise. * gcc.dg/tree-ssa/pr20470.c: Likewise. * tree-inline.c (copy_body_r): Simplify substituted ADDR_EXPRs. * tree-optimize.c (pass_gimple): Kill. (init_tree_optimization_passes): Kill pass_gimple. * tree-cfg.c (build_tree_cfg): Do verify_stmts to check that we are gimple. * tree-dump.c (dump_files): Rename .generic to .gimple.* git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99658 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/tree-inline.c')
-rw-r--r--gcc/tree-inline.c14
1 files changed, 4 insertions, 10 deletions
diff --git a/gcc/tree-inline.c b/gcc/tree-inline.c
index 696e7b49336..5873d6257e9 100644
--- a/gcc/tree-inline.c
+++ b/gcc/tree-inline.c
@@ -566,21 +566,15 @@ copy_body_r (tree *tp, int *walk_subtrees, void *data)
{
/* Get rid of *& from inline substitutions that can happen when a
pointer argument is an ADDR_EXPR. */
- tree decl = TREE_OPERAND (*tp, 0), value;
+ tree decl = TREE_OPERAND (*tp, 0);
splay_tree_node n;
n = splay_tree_lookup (id->decl_map, (splay_tree_key) decl);
if (n)
{
- value = (tree) n->value;
- STRIP_NOPS (value);
- if (TREE_CODE (value) == ADDR_EXPR
- && (lang_hooks.types_compatible_p
- (TREE_TYPE (*tp), TREE_TYPE (TREE_OPERAND (value, 0)))))
- {
- *tp = TREE_OPERAND (value, 0);
- return copy_body_r (tp, walk_subtrees, data);
- }
+ *tp = build_fold_indirect_ref ((tree)n->value);
+ *walk_subtrees = 0;
+ return NULL;
}
}
OpenPOWER on IntegriCloud