* lra-assigns.c (pseudo_compare_func): Fix comparison step based on
non_spilled_static_chain_regno_p.
From-SVN: r250395
+2017-07-20 Alexander Monakov <amonakov@ispras.ru>
+
+ * lra-assigns.c (pseudo_compare_func): Fix comparison step based on
+ non_spilled_static_chain_regno_p.
+
2017-07-20 Alexander Monakov <amonakov@ispras.ru>
* gimple-ssa-store-merging.c (sort_by_bitpos): Return 0 on equal bitpos.
/* Assign hard reg to static chain pointer first pseudo when
non-local goto is used. */
- if (non_spilled_static_chain_regno_p (r1))
- return -1;
- else if (non_spilled_static_chain_regno_p (r2))
- return 1;
+ if ((diff = (non_spilled_static_chain_regno_p (r2)
+ - non_spilled_static_chain_regno_p (r1))) != 0)
+ return diff;
/* Prefer to assign more frequently used registers first. */
if ((diff = lra_reg_info[r2].freq - lra_reg_info[r1].freq) != 0)