summaryrefslogtreecommitdiff
path: root/gcc/haifa-sched.c
diff options
context:
space:
mode:
authortbsaunde <tbsaunde@138bc75d-0d04-0410-961f-82ee72b054a4>2016-08-28 00:03:52 +0000
committertbsaunde <tbsaunde@138bc75d-0d04-0410-961f-82ee72b054a4>2016-08-28 00:03:52 +0000
commitddc43d91d12dab75980ff66a13dc464a1cdcce20 (patch)
tree19a384bcea386a3751160224101f27b43530e90c /gcc/haifa-sched.c
parentb243b563534bbbb9539be81c0decbd2fdf6a5aef (diff)
downloadgcc-ddc43d91d12dab75980ff66a13dc464a1cdcce20.tar.gz
haifa-sched.c: make ready_list an auto_vec<rtx_insn *>
gcc/ChangeLog: 2016-08-27 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> * haifa-sched.c (fix_recovery_deps): Make ready_list a vector. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@239799 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/haifa-sched.c')
-rw-r--r--gcc/haifa-sched.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/gcc/haifa-sched.c b/gcc/haifa-sched.c
index 84e42c0ac9b..c58b0ad399f 100644
--- a/gcc/haifa-sched.c
+++ b/gcc/haifa-sched.c
@@ -8600,9 +8600,8 @@ static void
fix_recovery_deps (basic_block rec)
{
rtx_insn *note, *insn, *jump;
- rtx_insn_list *ready_list = 0;
+ auto_vec<rtx_insn *, 10> ready_list;
bitmap_head in_ready;
- rtx_insn_list *link;
bitmap_initialize (&in_ready, 0);
@@ -8628,7 +8627,7 @@ fix_recovery_deps (basic_block rec)
sd_delete_dep (sd_it);
if (bitmap_set_bit (&in_ready, INSN_LUID (consumer)))
- ready_list = alloc_INSN_LIST (consumer, ready_list);
+ ready_list.safe_push (consumer);
}
else
{
@@ -8645,9 +8644,10 @@ fix_recovery_deps (basic_block rec)
bitmap_clear (&in_ready);
/* Try to add instructions to the ready or queue list. */
- for (link = ready_list; link; link = link->next ())
- try_ready (link->insn ());
- free_INSN_LIST_list (&ready_list);
+ unsigned int i;
+ rtx_insn *temp;
+ FOR_EACH_VEC_ELT_REVERSE (ready_list, i, temp)
+ try_ready (temp);
/* Fixing jump's dependences. */
insn = BB_HEAD (rec);