diff options
author | rearnsha <rearnsha@138bc75d-0d04-0410-961f-82ee72b054a4> | 2004-08-30 12:43:19 +0000 |
---|---|---|
committer | rearnsha <rearnsha@138bc75d-0d04-0410-961f-82ee72b054a4> | 2004-08-30 12:43:19 +0000 |
commit | af4ff459b178363655b0a47c14b07ae28c36c741 (patch) | |
tree | 7d88c1fadd72ff1cfc5933080011526cf3a5d718 /gcc/sched-deps.c | |
parent | 1d8fc210ec3dfcdea0d1f83885e75b4669ff9bc1 (diff) | |
download | gcc-af4ff459b178363655b0a47c14b07ae28c36c741.tar.gz |
* sched-deps.c (get_condition): Partially revert previous, by never
trying to extract the condition from a condjump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@86763 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/sched-deps.c')
-rw-r--r-- | gcc/sched-deps.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/gcc/sched-deps.c b/gcc/sched-deps.c index 2c551cfabfb..b76e217df81 100644 --- a/gcc/sched-deps.c +++ b/gcc/sched-deps.c @@ -153,6 +153,11 @@ get_condition (rtx insn) return 0; src = SET_SRC (pc_set (insn)); +#if 0 + /* The previous code here was completely invalid and could never extract + the condition from a jump. This code does the correct thing, but that + triggers latent bugs later in the scheduler on ports with conditional + execution. So this is disabled for now. */ if (XEXP (src, 2) == pc_rtx) return XEXP (src, 0); else if (XEXP (src, 1) == pc_rtx) @@ -165,8 +170,9 @@ get_condition (rtx insn) return gen_rtx_fmt_ee (revcode, GET_MODE (cond), XEXP (cond, 0), XEXP (cond, 1)); } - else - return 0; +#endif + + return 0; } /* Return nonzero if conditions COND1 and COND2 can never be both true. */ |