src/hotspot/cpu/aarch64/c1_LIRGenerator_aarch64.cpp
changeset 49933 c63bdf53a1a7
parent 49906 4bb58f644e4e
child 50153 9010b580d8a9
--- a/src/hotspot/cpu/aarch64/c1_LIRGenerator_aarch64.cpp	Mon Apr 30 17:50:05 2018 -0400
+++ b/src/hotspot/cpu/aarch64/c1_LIRGenerator_aarch64.cpp	Mon Apr 30 20:29:19 2018 -0400
@@ -1187,7 +1187,7 @@
   LIRItem obj(x->obj(), this);
 
   CodeEmitInfo* patching_info = NULL;
-  if (!x->klass()->is_loaded() || (PatchALot && !x->is_incompatible_class_change_check())) {
+  if (!x->klass()->is_loaded() || (PatchALot && !x->is_incompatible_class_change_check() && !x->is_invokespecial_receiver_check())) {
     // must do this before locking the destination register as an oop register,
     // and before the obj is loaded (the latter is for deoptimization)
     patching_info = state_for(x, x->state_before());