summaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorrguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4>2013-03-08 11:29:06 +0000
committerrguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4>2013-03-08 11:29:06 +0000
commitdc426203f0a57cdcaacac33e2bc1ecbf9f8e100c (patch)
tree4491ef3341d0f40be0dc705c5a8ca5c4a2d69ca8 /gcc
parent77cdcfa2dab26da622e5992fdad73bde0104107c (diff)
downloadgcc-dc426203f0a57cdcaacac33e2bc1ecbf9f8e100c.tar.gz
2013-03-08 Richard Biener <rguenther@suse.de>
* tree-inline.c (expand_call_inline): Do not associate a BLOCK with the location in BLOCK_SOURCE_LOCATION. * tree-cfg.c (verify_location): Verify BLOCK_SOURCE_LOCATION. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@196542 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/tree-cfg.c2
-rw-r--r--gcc/tree-inline.c2
3 files changed, 9 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index c44b13bf69c..4002376f8f9 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,11 @@
2013-03-08 Richard Biener <rguenther@suse.de>
+ * tree-inline.c (expand_call_inline): Do not associate
+ a BLOCK with the location in BLOCK_SOURCE_LOCATION.
+ * tree-cfg.c (verify_location): Verify BLOCK_SOURCE_LOCATION.
+
+2013-03-08 Richard Biener <rguenther@suse.de>
+
* tree-ssa-ter.c (is_replaceable_p): Do not TER across location
or block changes with -Og. Fix for location / block encoding
changes and PHI arguments with locations.
diff --git a/gcc/tree-cfg.c b/gcc/tree-cfg.c
index 83003fb8b44..7be44e42e4b 100644
--- a/gcc/tree-cfg.c
+++ b/gcc/tree-cfg.c
@@ -4511,6 +4511,8 @@ verify_location (pointer_set_t *blocks, location_t loc)
error ("location references block not in block tree");
return true;
}
+ if (block != NULL_TREE)
+ return verify_location (blocks, BLOCK_SOURCE_LOCATION (block));
return false;
}
diff --git a/gcc/tree-inline.c b/gcc/tree-inline.c
index 714bcf0fcb0..5121765fd35 100644
--- a/gcc/tree-inline.c
+++ b/gcc/tree-inline.c
@@ -3929,7 +3929,7 @@ expand_call_inline (basic_block bb, gimple stmt, copy_body_data *id)
{
id->block = make_node (BLOCK);
BLOCK_ABSTRACT_ORIGIN (id->block) = fn;
- BLOCK_SOURCE_LOCATION (id->block) = input_location;
+ BLOCK_SOURCE_LOCATION (id->block) = LOCATION_LOCUS (input_location);
prepend_lexical_block (gimple_block (stmt), id->block);
}