--- a/src/hotspot/share/opto/chaitin.cpp Fri Jan 25 11:45:26 2019 +0000
+++ b/src/hotspot/share/opto/chaitin.cpp Fri Jan 25 14:10:28 2019 +0100
@@ -756,6 +756,16 @@
lrg._is_float = 1;
}
+ // Check for twice prior spilling. Once prior spilling might have
+ // spilled 'soft', 2nd prior spill should have spilled 'hard' and
+ // further spilling is unlikely to make progress.
+ if (_spilled_once.test(n->_idx)) {
+ lrg._was_spilled1 = 1;
+ if (_spilled_twice.test(n->_idx)) {
+ lrg._was_spilled2 = 1;
+ }
+ }
+
#ifndef PRODUCT
// Collect bits not used by product code, but which may be useful for
// debugging.
@@ -768,16 +778,6 @@
copy_src._has_copy = 1;
}
- // Check for twice prior spilling. Once prior spilling might have
- // spilled 'soft', 2nd prior spill should have spilled 'hard' and
- // further spilling is unlikely to make progress.
- if (_spilled_once.test(n->_idx)) {
- lrg._was_spilled1 = 1;
- if (_spilled_twice.test(n->_idx)) {
- lrg._was_spilled2 = 1;
- }
- }
-
if (trace_spilling() && lrg._def != NULL) {
// collect defs for MultiDef printing
if (lrg._defs == NULL) {