summaryrefslogtreecommitdiff
path: root/gcc/var-tracking.c
diff options
context:
space:
mode:
authorjakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4>2011-08-29 08:55:02 +0000
committerjakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4>2011-08-29 08:55:02 +0000
commit0b1ba96ba15a19e5690e356ccb113e0ce6b30eba (patch)
treefa1121f57aac0a2f23ed443c7bccefb364ee3eda /gcc/var-tracking.c
parentf4532fe18e528451ef84f0d67fe17f5d644300de (diff)
downloadgcc-0b1ba96ba15a19e5690e356ccb113e0ce6b30eba.tar.gz
PR debug/50215
* var-tracking.c (create_entry_value): Call cselib_lookup_from_insn before adding ENTRY_VALUE to val->locs. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178167 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/var-tracking.c')
-rw-r--r--gcc/var-tracking.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/gcc/var-tracking.c b/gcc/var-tracking.c
index f67b3f5d183..ae45e5215ed 100644
--- a/gcc/var-tracking.c
+++ b/gcc/var-tracking.c
@@ -8488,13 +8488,13 @@ create_entry_value (rtx rtl, cselib_val *val)
cselib_val *val2;
struct elt_loc_list *el;
el = (struct elt_loc_list *) ggc_alloc_cleared_atomic (sizeof (*el));
- el->next = val->locs;
el->loc = gen_rtx_ENTRY_VALUE (GET_MODE (rtl));
ENTRY_VALUE_EXP (el->loc) = rtl;
- el->setting_insn = get_insns ();
- val->locs = el;
val2 = cselib_lookup_from_insn (el->loc, GET_MODE (rtl), true,
VOIDmode, get_insns ());
+ el->next = val->locs;
+ el->setting_insn = get_insns ();
+ val->locs = el;
if (val2
&& val2 != val
&& val2->locs