aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree-inline.c
diff options
context:
space:
mode:
authorDehao Chen <dehao@google.com>2013-10-08 08:34:28 +0000
committerRamana Radhakrishnan <ramana@gcc.gnu.org>2013-10-08 08:34:28 +0000
commitef6179d186ee9a2ebe034d328a17764e703273ca (patch)
treede5cdd4d03391a85830a0ee4606ffde80d981fb9 /gcc/tree-inline.c
parent07d964d518f6990bf4d493672b1ab1567b3e4199 (diff)
downloadgcc-ef6179d186ee9a2ebe034d328a17764e703273ca.zip
gcc-ef6179d186ee9a2ebe034d328a17764e703273ca.tar.gz
gcc-ef6179d186ee9a2ebe034d328a17764e703273ca.tar.bz2
re PR tree-optimization/58619 (ICE building in gen_combined_adhoc_loc)
PR tree-optimization/58619 2013-10-08 Dehao Chen <dehao@google.com> * tree-inline.c (copy_phis_for_bb): Combine location data only if non-null. From-SVN: r203269
Diffstat (limited to 'gcc/tree-inline.c')
-rw-r--r--gcc/tree-inline.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/gcc/tree-inline.c b/gcc/tree-inline.c
index ebb4b91..ef8eba4 100644
--- a/gcc/tree-inline.c
+++ b/gcc/tree-inline.c
@@ -2090,7 +2090,10 @@ copy_phis_for_bb (basic_block bb, copy_body_data *id)
n = (tree *) pointer_map_contains (id->decl_map,
LOCATION_BLOCK (locus));
gcc_assert (n);
- locus = COMBINE_LOCATION_DATA (line_table, locus, *n);
+ if (*n)
+ locus = COMBINE_LOCATION_DATA (line_table, locus, *n);
+ else
+ locus = LOCATION_LOCUS (locus);
}
else
locus = LOCATION_LOCUS (locus);