diff options
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/ira-color.c | 3 | ||||
-rw-r--r-- | gcc/tree-ssa-loop-im.c | 2 |
3 files changed, 7 insertions, 3 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index abd0e31..0d90827 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2018-01-14 Cory Fields <cory-nospam-@coryfields.com> + + * tree-ssa-loop-im.c (sort_bbs_in_loop_postorder_cmp): Stabilize sort. + * ira-color (allocno_hard_regs_compare): Likewise. + 2018-01-14 Nathan Rossi <nathan@nathanrossi.com> PR target/83013 diff --git a/gcc/ira-color.c b/gcc/ira-color.c index c8b6ab4..26b18f3 100644 --- a/gcc/ira-color.c +++ b/gcc/ira-color.c @@ -300,8 +300,7 @@ allocno_hard_regs_compare (const void *v1p, const void *v2p) return 1; else if (hv2->cost < hv1->cost) return -1; - else - return 0; + return SORTGT (allocno_hard_regs_hasher::hash(hv2), allocno_hard_regs_hasher::hash(hv1)); } diff --git a/gcc/tree-ssa-loop-im.c b/gcc/tree-ssa-loop-im.c index 7d95621..7864fbd 100644 --- a/gcc/tree-ssa-loop-im.c +++ b/gcc/tree-ssa-loop-im.c @@ -1496,7 +1496,7 @@ sort_bbs_in_loop_postorder_cmp (const void *bb1_, const void *bb2_) struct loop *loop1 = bb1->loop_father; struct loop *loop2 = bb2->loop_father; if (loop1->num == loop2->num) - return 0; + return bb1->index - bb2->index; return bb_loop_postorder[loop1->num] < bb_loop_postorder[loop2->num] ? -1 : 1; } |