diff options
author | Bernd Schmidt <bernds@codesourcery.com> | 2011-10-21 18:38:44 +0000 |
---|---|---|
committer | Bernd Schmidt <bernds@gcc.gnu.org> | 2011-10-21 18:38:44 +0000 |
commit | f561ef0f49c397e6cf62f234752445a9168f1367 (patch) | |
tree | e204e2088b4ff2ec53e8ecca8f7dd6f84f2fe793 /gcc | |
parent | fe66170d5b3b327c3d9cf27def4a8c05aafc2e45 (diff) | |
download | gcc-f561ef0f49c397e6cf62f234752445a9168f1367.zip gcc-f561ef0f49c397e6cf62f234752445a9168f1367.tar.gz gcc-f561ef0f49c397e6cf62f234752445a9168f1367.tar.bz2 |
re PR bootstrap/50825 (bootstrap fails at stage1 libgcc from r180302)
PR bootstrap/50825
* sched-deps.c (add_dependence): If not doing predication, promote
REG_DEP_CONTROL to REG_DEP_ANTI.
From-SVN: r180310
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/sched-deps.c | 4 |
2 files changed, 10 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 9d3269f..bc6fdd9 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2011-10-21 Bernd Schmidt <bernds@codesourcery.com> + + PR bootstrap/50825 + * sched-deps.c (add_dependence): If not doing predication, promote + REG_DEP_CONTROL to REG_DEP_ANTI. + 2011-10-21 Georg-Johann Lay <avr@gjlay.de> * config/avr/avr.h (LEGITIMIZE_RELOAD_ADDRESS): Pass address of X diff --git a/gcc/sched-deps.c b/gcc/sched-deps.c index b669cd3..a778721 100644 --- a/gcc/sched-deps.c +++ b/gcc/sched-deps.c @@ -1505,6 +1505,10 @@ sd_debug_lists (rtx insn, sd_list_types_def types) void add_dependence (rtx con, rtx pro, enum reg_note dep_type) { + if (dep_type == REG_DEP_CONTROL + && !(current_sched_info->flags & DO_PREDICATION)) + dep_type = REG_DEP_ANTI; + /* A REG_DEP_CONTROL dependence may be eliminated through predication, so we must also make the insn dependent on the setter of the condition. */ |