1.1 --- a/src/cpu/x86/vm/c1_LIRAssembler_x86.cpp Wed Sep 18 09:31:01 2013 +0200 1.2 +++ b/src/cpu/x86/vm/c1_LIRAssembler_x86.cpp Wed Sep 18 14:10:21 2013 -0700 1.3 @@ -1724,14 +1724,6 @@ 1.4 } 1.5 1.6 assert_different_registers(obj, k_RInfo, klass_RInfo); 1.7 - if (!k->is_loaded()) { 1.8 - klass2reg_with_patching(k_RInfo, op->info_for_patch()); 1.9 - } else { 1.10 -#ifdef _LP64 1.11 - __ mov_metadata(k_RInfo, k->constant_encoding()); 1.12 -#endif // _LP64 1.13 - } 1.14 - assert(obj != k_RInfo, "must be different"); 1.15 1.16 __ cmpptr(obj, (int32_t)NULL_WORD); 1.17 if (op->should_profile()) { 1.18 @@ -1748,6 +1740,14 @@ 1.19 } else { 1.20 __ jcc(Assembler::equal, *obj_is_null); 1.21 } 1.22 + 1.23 + if (!k->is_loaded()) { 1.24 + klass2reg_with_patching(k_RInfo, op->info_for_patch()); 1.25 + } else { 1.26 +#ifdef _LP64 1.27 + __ mov_metadata(k_RInfo, k->constant_encoding()); 1.28 +#endif // _LP64 1.29 + } 1.30 __ verify_oop(obj); 1.31 1.32 if (op->fast_check()) {