--- a/hotspot/src/cpu/sparc/vm/c1_Runtime1_sparc.cpp Thu Jan 20 18:24:04 2011 -0800
+++ b/hotspot/src/cpu/sparc/vm/c1_Runtime1_sparc.cpp Fri Jan 21 02:07:11 2011 -0800
@@ -343,9 +343,10 @@
// returned.
restore_live_registers(sasm);
- __ restore();
- __ br(Assembler::always, false, Assembler::pt, deopt_blob->unpack_with_reexecution(), relocInfo::runtime_call_type);
- __ delayed()->nop();
+
+ AddressLiteral dest(deopt_blob->unpack_with_reexecution());
+ __ jump_to(dest, O0);
+ __ delayed()->restore();
__ bind(no_deopt);
restore_live_registers(sasm);