aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree.c
diff options
context:
space:
mode:
authorRichard Biener <rguenther@suse.de>2018-09-28 11:33:29 +0000
committerRichard Biener <rguenth@gcc.gnu.org>2018-09-28 11:33:29 +0000
commitdc16b00717f72aae2d93865a8007ff220b6f022f (patch)
treeccfb814b58f42d2c18830a1f2b72031aeede8e48 /gcc/tree.c
parent2bd4ca7ad508ec9b94f8c3442a6e39d5276d7915 (diff)
downloadgcc-dc16b00717f72aae2d93865a8007ff220b6f022f.zip
gcc-dc16b00717f72aae2d93865a8007ff220b6f022f.tar.gz
gcc-dc16b00717f72aae2d93865a8007ff220b6f022f.tar.bz2
tree.h (BLOCK_ORIGIN): New.
2018-09-28 Richard Biener <rguenther@suse.de> * tree.h (BLOCK_ORIGIN): New. * omp-expand.c (grid_expand_target_grid_body): Assign BLOCK_ORIGIN to BLOCK_ABSTRACT_ORIGIN. * tree-inline.c (remap_block): Likewise. * auto-profile.c (get_function_decl_from_block): Simplify by eliding the BLOCK_ABSTRACT_ORIGIN chasing. * langhooks.c (lhd_print_error_function): Likewise. * optinfo-emit-json.cc (optrecord_json_writer::inlining_chain_to): Likewise. * tree-ssa-live.c (remove_unused_scope_block_p): Likewise. * tree.c (block_nonartificial_location): Likewise. (block_ultimate_origin): Likewise. * tree-pretty-print.c (percent_K_format): Likewise. Remove no longer needed LTO case. cp/ * error.c (cp_print_error_function): Simplify by eliding the BLOCK_ABSTRACT_ORIGIN chasing. From-SVN: r264689
Diffstat (limited to 'gcc/tree.c')
-rw-r--r--gcc/tree.c17
1 files changed, 1 insertions, 16 deletions
diff --git a/gcc/tree.c b/gcc/tree.c
index 64d9e0b..2bd209b 100644
--- a/gcc/tree.c
+++ b/gcc/tree.c
@@ -11964,12 +11964,6 @@ block_nonartificial_location (tree block)
&& BLOCK_ABSTRACT_ORIGIN (block))
{
tree ao = BLOCK_ABSTRACT_ORIGIN (block);
-
- while (TREE_CODE (ao) == BLOCK
- && BLOCK_ABSTRACT_ORIGIN (ao)
- && BLOCK_ABSTRACT_ORIGIN (ao) != ao)
- ao = BLOCK_ABSTRACT_ORIGIN (ao);
-
if (TREE_CODE (ao) == FUNCTION_DECL)
{
/* If AO is an artificial inline, point RET to the
@@ -12150,16 +12144,7 @@ block_ultimate_origin (const_tree block)
return NULL_TREE;
else
{
- tree ret_val;
- tree lookahead = immediate_origin;
-
- do
- {
- ret_val = lookahead;
- lookahead = (TREE_CODE (ret_val) == BLOCK
- ? BLOCK_ABSTRACT_ORIGIN (ret_val) : NULL);
- }
- while (lookahead != NULL && lookahead != ret_val);
+ tree ret_val = immediate_origin;
/* The block's abstract origin chain may not be the *ultimate* origin of
the block. It could lead to a DECL that has an abstract origin set.