diff options
author | bstarynk <bstarynk@138bc75d-0d04-0410-961f-82ee72b054a4> | 2012-10-31 10:18:27 +0000 |
---|---|---|
committer | bstarynk <bstarynk@138bc75d-0d04-0410-961f-82ee72b054a4> | 2012-10-31 10:18:27 +0000 |
commit | d42d3fad6998402ea943bc2a3159cad09eb288d5 (patch) | |
tree | d70dbc97eb104b1c403ef6d4cff46da1ebf52c76 /gcc/var-tracking.c | |
parent | 8422fa6afbb619fc66678c664bfaf834691527fc (diff) | |
download | gcc-d42d3fad6998402ea943bc2a3159cad09eb288d5.tar.gz |
2012-10-31 Basile Starynkevitch <basile@starynkevitch.net>
MELT branch merged with trunk rev 193029 using svnmerge.py
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/melt-branch@193030 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/var-tracking.c')
-rw-r--r-- | gcc/var-tracking.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/gcc/var-tracking.c b/gcc/var-tracking.c index 25973a9776e..d5ab1d1e554 100644 --- a/gcc/var-tracking.c +++ b/gcc/var-tracking.c @@ -4921,7 +4921,9 @@ track_expr_p (tree expr, bool need_rtl) realdecl = expr; else if (!DECL_P (realdecl)) { - if (handled_component_p (realdecl)) + if (handled_component_p (realdecl) + || (TREE_CODE (realdecl) == MEM_REF + && TREE_CODE (TREE_OPERAND (realdecl, 0)) == ADDR_EXPR)) { HOST_WIDE_INT bitsize, bitpos, maxsize; tree innerdecl @@ -6746,11 +6748,11 @@ vt_find_locations (void) visited = sbitmap_alloc (last_basic_block); in_worklist = sbitmap_alloc (last_basic_block); in_pending = sbitmap_alloc (last_basic_block); - sbitmap_zero (in_worklist); + bitmap_clear (in_worklist); FOR_EACH_BB (bb) fibheap_insert (pending, bb_order[bb->index], bb); - sbitmap_ones (in_pending); + bitmap_ones (in_pending); while (success && !fibheap_empty (pending)) { @@ -6761,7 +6763,7 @@ vt_find_locations (void) in_pending = in_worklist; in_worklist = sbitmap_swap; - sbitmap_zero (visited); + bitmap_clear (visited); while (!fibheap_empty (worklist)) { |