PR middle-end/28964
* cfgexpand.c (stack_var_size_cmp): Use DECL_UID to make
sort of stack variables stable.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@117146
138bc75d-0d04-0410-961f-
82ee72b054a4
+2006-09-22 Richard Guenther <rguenther@suse.de>
+
+ PR middle-end/28964
+ * cfgexpand.c (stack_var_size_cmp): Use DECL_UID to make
+ sort of stack variables stable.
+
2006-09-22 Peter Bergner <bergner@vnet.ibm.com>
PR middle-end/28690
{
HOST_WIDE_INT sa = stack_vars[*(const size_t *)a].size;
HOST_WIDE_INT sb = stack_vars[*(const size_t *)b].size;
+ unsigned int uida = DECL_UID (stack_vars[*(const size_t *)a].decl);
+ unsigned int uidb = DECL_UID (stack_vars[*(const size_t *)b].decl);
if (sa < sb)
return -1;
if (sa > sb)
return 1;
+ /* For stack variables of the same size use the uid of the decl
+ to make the sort stable. */
+ if (uida < uidb)
+ return -1;
+ if (uida > uidb)
+ return 1;
return 0;
}