--- a/src/hotspot/share/opto/reg_split.cpp Thu Feb 14 12:54:56 2019 +0100
+++ b/src/hotspot/share/opto/reg_split.cpp Thu Feb 14 14:31:32 2019 +0100
@@ -1192,9 +1192,8 @@
(deflrg._direct_conflict || deflrg._must_spill)) ||
// Check for LRG being up in a register and we are inside a high
// pressure area. Spill it down immediately.
- (defup && is_high_pressure(b,&deflrg,insidx))) ) {
+ (defup && is_high_pressure(b,&deflrg,insidx) && !n->is_SpillCopy())) ) {
assert( !n->rematerialize(), "" );
- assert( !n->is_SpillCopy(), "" );
// Do a split at the def site.
maxlrg = split_DEF( n, b, insidx, maxlrg, Reachblock, debug_defs, splits, slidx );
// If it wasn't split bail