summaryrefslogtreecommitdiff
path: root/gcc/haifa-sched.c
diff options
context:
space:
mode:
authormkuvyrkov <mkuvyrkov@138bc75d-0d04-0410-961f-82ee72b054a4>2014-05-22 07:25:48 +0000
committermkuvyrkov <mkuvyrkov@138bc75d-0d04-0410-961f-82ee72b054a4>2014-05-22 07:25:48 +0000
commit507af1c13e34764d40f217334513bacd4924e1f9 (patch)
tree0b3daa57eb64deffcaa18a86da8474cde31d369d /gcc/haifa-sched.c
parent0be66420fef315874028073c686e1a9d73b14ead (diff)
downloadgcc-507af1c13e34764d40f217334513bacd4924e1f9.tar.gz
Remove IA64 speculation tweaking flags
* config/ia64/ia64.c (ia64_set_sched_flags): Delete handling of speculation tuning flags. (msched-prefer-non-data-spec-insns,) (msched-prefer-non-control-spec-insns): Obsolete options. * haifa-sched.c (choose_ready): Remove handling of PREFER_NON_CONTROL_SPEC and PREFER_NON_DATA_SPEC. * sched-int.h (enum SPEC_SCHED_FLAGS): Remove PREFER_NON_CONTROL_SPEC and PREFER_NON_DATA_SPEC. * sel-sched.c (process_spec_exprs): Remove handling of PREFER_NON_CONTROL_SPEC and PREFER_NON_DATA_SPEC. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210746 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/haifa-sched.c')
-rw-r--r--gcc/haifa-sched.c52
1 files changed, 5 insertions, 47 deletions
diff --git a/gcc/haifa-sched.c b/gcc/haifa-sched.c
index c57093b7f66..f39c0476f00 100644
--- a/gcc/haifa-sched.c
+++ b/gcc/haifa-sched.c
@@ -5567,9 +5567,8 @@ choose_ready (struct ready_list *ready, bool first_cycle_insn_p,
else
{
/* Try to choose the better insn. */
- int index = 0, i, n;
+ int index = 0, i;
rtx insn;
- int try_data = 1, try_control = 1;
ds_t ts;
insn = ready_element (ready, 0);
@@ -5579,43 +5578,10 @@ choose_ready (struct ready_list *ready, bool first_cycle_insn_p,
return 0;
}
- if (spec_info
- && spec_info->flags & (PREFER_NON_DATA_SPEC
- | PREFER_NON_CONTROL_SPEC))
- {
- for (i = 0, n = ready->n_ready; i < n; i++)
- {
- rtx x;
- ds_t s;
-
- x = ready_element (ready, i);
- s = TODO_SPEC (x);
-
- if (spec_info->flags & PREFER_NON_DATA_SPEC
- && !(s & DATA_SPEC))
- {
- try_data = 0;
- if (!(spec_info->flags & PREFER_NON_CONTROL_SPEC)
- || !try_control)
- break;
- }
-
- if (spec_info->flags & PREFER_NON_CONTROL_SPEC
- && !(s & CONTROL_SPEC))
- {
- try_control = 0;
- if (!(spec_info->flags & PREFER_NON_DATA_SPEC) || !try_data)
- break;
- }
- }
- }
-
ts = TODO_SPEC (insn);
if ((ts & SPECULATIVE)
- && (((!try_data && (ts & DATA_SPEC))
- || (!try_control && (ts & CONTROL_SPEC)))
- || (targetm.sched.first_cycle_multipass_dfa_lookahead_guard_spec
- && !targetm.sched
+ && (targetm.sched.first_cycle_multipass_dfa_lookahead_guard_spec
+ && (!targetm.sched
.first_cycle_multipass_dfa_lookahead_guard_spec (insn))))
/* Discard speculative instruction that stands first in the ready
list. */
@@ -5624,16 +5590,8 @@ choose_ready (struct ready_list *ready, bool first_cycle_insn_p,
return 1;
}
- ready_try[0] = 0;
-
- for (i = 1; i < ready->n_ready; i++)
- {
- insn = ready_element (ready, i);
-
- ready_try [i]
- = ((!try_data && (TODO_SPEC (insn) & DATA_SPEC))
- || (!try_control && (TODO_SPEC (insn) & CONTROL_SPEC)));
- }
+ for (i = 0; i < ready->n_ready; i++)
+ ready_try [i] = 0;
/* Let the target filter the search space. */
for (i = 1; i < ready->n_ready; i++)