aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Biener <rguenther@suse.de>2021-06-11 08:04:41 +0200
committerRichard Biener <rguenther@suse.de>2021-06-11 09:29:35 +0200
commite9d322ced1433da8e7c69243cfa941ea462d6290 (patch)
tree5e707e0c0a5c9801fbff482847fac2db8cc4d593
parent367f52dcc24045b072aeb26bc301a2980b39241f (diff)
downloadgcc-e9d322ced1433da8e7c69243cfa941ea462d6290.zip
gcc-e9d322ced1433da8e7c69243cfa941ea462d6290.tar.gz
gcc-e9d322ced1433da8e7c69243cfa941ea462d6290.tar.bz2
Use stablesort for sorting association chain
This should preserve the original association order as much as possible for the initial SLP discovery attempt and also improve consistency. 2021-06-11 Richard Biener <rguenther@suse.de> * tree-vect-slp.c (vect_build_slp_tree_2): Use stablesort to sort operands of the associative chain.
-rw-r--r--gcc/tree-vect-slp.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/gcc/tree-vect-slp.c b/gcc/tree-vect-slp.c
index c4f8f38..6237a61 100644
--- a/gcc/tree-vect-slp.c
+++ b/gcc/tree-vect-slp.c
@@ -1865,7 +1865,7 @@ vect_build_slp_tree_2 (vec_info *vinfo, slp_tree node,
/* Now we have a set of chains with the same length. */
/* 1. pre-sort according to def_type and operation. */
for (unsigned lane = 0; lane < group_size; ++lane)
- chains[lane].sort (dt_sort_cmp, vinfo);
+ chains[lane].stablesort (dt_sort_cmp, vinfo);
if (dump_enabled_p ())
{
dump_printf_loc (MSG_NOTE, vect_location,