diff options
author | Alexandre Oliva <aoliva@redhat.com> | 2010-06-04 16:43:42 +0000 |
---|---|---|
committer | Jakub Jelinek <jakub@gcc.gnu.org> | 2010-06-04 18:43:42 +0200 |
commit | 39e7207ad9ffdf6d8059a28be8c940e78ef0fe7c (patch) | |
tree | 2a10de1ed4ebf3dc4f8016918bf866e53a26e1d0 /gcc/sched-deps.c | |
parent | 0fa43fb73b386b98e9c92d85905633f81d0c326e (diff) | |
download | gcc-39e7207ad9ffdf6d8059a28be8c940e78ef0fe7c.zip gcc-39e7207ad9ffdf6d8059a28be8c940e78ef0fe7c.tar.gz gcc-39e7207ad9ffdf6d8059a28be8c940e78ef0fe7c.tar.bz2 |
re PR rtl-optimization/44013 (VTA produces wrong code)
PR rtl-optimization/44013
* sched-deps.c (add_dependence_list_and_free): Don't free lists
when processing debug insns.
From-SVN: r160281
Diffstat (limited to 'gcc/sched-deps.c')
-rw-r--r-- | gcc/sched-deps.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/gcc/sched-deps.c b/gcc/sched-deps.c index 556c38a..4577c8e 100644 --- a/gcc/sched-deps.c +++ b/gcc/sched-deps.c @@ -1407,7 +1407,10 @@ add_dependence_list_and_free (struct deps_desc *deps, rtx insn, rtx *listp, { rtx list, next; - if (deps->readonly) + /* We don't want to short-circuit dependencies involving debug + insns, because they may cause actual dependencies to be + disregarded. */ + if (deps->readonly || DEBUG_INSN_P (insn)) { add_dependence_list (insn, *listp, uncond, dep_type); return; |