src/cpu/sparc/vm/c1_MacroAssembler_sparc.cpp
Index Unified diffs Context diffs Sdiffs Wdiffs Patch New Old Previous File Next File
*** old/src/cpu/sparc/vm/c1_MacroAssembler_sparc.cpp	Fri Jul 15 19:09:44 2011
--- new/src/cpu/sparc/vm/c1_MacroAssembler_sparc.cpp	Fri Jul 15 19:09:43 2011

*** 39,49 **** --- 39,49 ---- Label L; const Register temp_reg = G3_scratch; // Note: needs more testing of out-of-line vs. inline slow case verify_oop(receiver); load_klass(receiver, temp_reg); ! cmp_and_brx(temp_reg, iCache, Assembler::equal, true, Assembler::pt, L); ! cmp_and_brx_short(temp_reg, iCache, Assembler::equal, Assembler::pt, L); AddressLiteral ic_miss(SharedRuntime::get_ic_miss_stub()); jump_to(ic_miss, temp_reg); delayed()->nop(); align(CodeEntryAlignment); bind(L);
*** 138,148 **** --- 138,148 ---- verify_oop(Roop); biased_locking_exit(mark_addr, Rmark, done); } // Test first it it is a fast recursive unlock ld_ptr(Rbox, BasicLock::displaced_header_offset_in_bytes(), Rmark); ! br_null(Rmark, false, Assembler::pt, done); ! br_null_short(Rmark, Assembler::pt, done); if (!UseBiasedLocking) { // load object ld_ptr(Rbox, BasicObjectLock::obj_offset_in_bytes(), Roop); verify_oop(Roop); }
*** 226,236 **** --- 226,236 ---- // allocate space & initialize header if (!is_simm13(obj_size * wordSize)) { // would need to use extra register to load // object size => go the slow case for now - ba(slow_case, false); delayed()->nop(); return; } try_allocate(obj, noreg, obj_size * wordSize, t2, t3, slow_case);
*** 252,264 **** --- 252,264 ---- #ifdef ASSERT { Label ok; ld(klass, klassOopDesc::header_size() * HeapWordSize + Klass::layout_helper_offset_in_bytes(), t1); if (var_size_in_bytes != noreg) { ! cmp_and_brx(t1, var_size_in_bytes, Assembler::equal, false, Assembler::pt, ok); ! cmp_and_brx_short(t1, var_size_in_bytes, Assembler::equal, Assembler::pt, ok); } else { ! cmp_and_brx(t1, con_size_in_bytes, Assembler::equal, false, Assembler::pt, ok); ! cmp_and_brx_short(t1, con_size_in_bytes, Assembler::equal, Assembler::pt, ok); } stop("bad size in initialize_object"); should_not_reach_here(); bind(ok);
*** 380,390 **** --- 380,390 ---- verify_oop_addr(Address(SP, stack_offset + STACK_BIAS)); } void C1_MacroAssembler::verify_not_null_oop(Register r) { Label not_null; ! br_notnull(r, false, Assembler::pt, not_null); ! br_notnull_short(r, Assembler::pt, not_null); stop("non-null oop required"); bind(not_null); if (!VerifyOops) return; verify_oop(r); }

src/cpu/sparc/vm/c1_MacroAssembler_sparc.cpp
Index Unified diffs Context diffs Sdiffs Wdiffs Patch New Old Previous File Next File