1.1 --- a/src/cpu/sparc/vm/c1_Runtime1_sparc.cpp Thu Jul 21 08:38:25 2011 -0700 1.2 +++ b/src/cpu/sparc/vm/c1_Runtime1_sparc.cpp Thu Jul 21 11:25:07 2011 -0700 1.3 @@ -71,8 +71,7 @@ 1.4 { Label L; 1.5 Address exception_addr(G2_thread, Thread::pending_exception_offset()); 1.6 ld_ptr(exception_addr, Gtemp); 1.7 - br_null(Gtemp, false, pt, L); 1.8 - delayed()->nop(); 1.9 + br_null_short(Gtemp, pt, L); 1.10 Address vm_result_addr(G2_thread, JavaThread::vm_result_offset()); 1.11 st_ptr(G0, vm_result_addr); 1.12 Address vm_result_addr_2(G2_thread, JavaThread::vm_result_2_offset()); 1.13 @@ -333,9 +332,7 @@ 1.14 assert(deopt_blob != NULL, "deoptimization blob must have been created"); 1.15 1.16 Label no_deopt; 1.17 - __ tst(O0); 1.18 - __ brx(Assembler::equal, false, Assembler::pt, no_deopt); 1.19 - __ delayed()->nop(); 1.20 + __ br_null_short(O0, Assembler::pt, no_deopt); 1.21 1.22 // return to the deoptimization handler entry for unpacking and rexecute 1.23 // if we simply returned the we'd deopt as if any call we patched had just 1.24 @@ -402,18 +399,15 @@ 1.25 if (id == fast_new_instance_init_check_id) { 1.26 // make sure the klass is initialized 1.27 __ ld(G5_klass, instanceKlass::init_state_offset_in_bytes() + sizeof(oopDesc), G3_t1); 1.28 - __ cmp(G3_t1, instanceKlass::fully_initialized); 1.29 - __ br(Assembler::notEqual, false, Assembler::pn, slow_path); 1.30 - __ delayed()->nop(); 1.31 + __ cmp_and_br_short(G3_t1, instanceKlass::fully_initialized, Assembler::notEqual, Assembler::pn, slow_path); 1.32 } 1.33 #ifdef ASSERT 1.34 // assert object can be fast path allocated 1.35 { 1.36 Label ok, not_ok; 1.37 __ ld(G5_klass, Klass::layout_helper_offset_in_bytes() + sizeof(oopDesc), G1_obj_size); 1.38 - __ cmp(G1_obj_size, 0); // make sure it's an instance (LH > 0) 1.39 - __ br(Assembler::lessEqual, false, Assembler::pn, not_ok); 1.40 - __ delayed()->nop(); 1.41 + // make sure it's an instance (LH > 0) 1.42 + __ cmp_and_br_short(G1_obj_size, 0, Assembler::lessEqual, Assembler::pn, not_ok); 1.43 __ btst(Klass::_lh_instance_slow_path_bit, G1_obj_size); 1.44 __ br(Assembler::zero, false, Assembler::pn, ok); 1.45 __ delayed()->nop(); 1.46 @@ -501,9 +495,7 @@ 1.47 int tag = ((id == new_type_array_id) 1.48 ? Klass::_lh_array_tag_type_value 1.49 : Klass::_lh_array_tag_obj_value); 1.50 - __ cmp(G3_t1, tag); 1.51 - __ brx(Assembler::equal, false, Assembler::pt, ok); 1.52 - __ delayed()->nop(); 1.53 + __ cmp_and_brx_short(G3_t1, tag, Assembler::equal, Assembler::pt, ok); 1.54 __ stop("assert(is an array klass)"); 1.55 __ should_not_reach_here(); 1.56 __ bind(ok); 1.57 @@ -519,9 +511,7 @@ 1.58 1.59 // check that array length is small enough for fast path 1.60 __ set(C1_MacroAssembler::max_array_allocation_length, G3_t1); 1.61 - __ cmp(G4_length, G3_t1); 1.62 - __ br(Assembler::greaterUnsigned, false, Assembler::pn, slow_path); 1.63 - __ delayed()->nop(); 1.64 + __ cmp_and_br_short(G4_length, G3_t1, Assembler::greaterUnsigned, Assembler::pn, slow_path); 1.65 1.66 // if we got here then the TLAB allocation failed, so try 1.67 // refilling the TLAB or allocating directly from eden.