8015437: SPARC cbcond branch offset out of 10-bit range
Summary: Forced SPARC MacroAssembler eden_alloate to use long branch to slow case
Reviewed-by: kvn, twisti
--- a/hotspot/src/cpu/sparc/vm/macroAssembler_sparc.cpp Thu Jun 06 09:29:38 2013 -0700
+++ b/hotspot/src/cpu/sparc/vm/macroAssembler_sparc.cpp Fri Jun 07 07:33:35 2013 -0700
@@ -3540,7 +3540,8 @@
if (CMSIncrementalMode || !Universe::heap()->supports_inline_contig_alloc()) {
// No allocation in the shared eden.
- ba_short(slow_case);
+ ba(slow_case);
+ delayed()->nop();
} else {
// get eden boundaries
// note: we need both top & top_addr!