hotspot/src/share/vm/c1/c1_Instruction.hpp
changeset 44738 11431bbc9549
parent 39263 d139a133ba27
child 46663 715d5f268f62
--- a/hotspot/src/share/vm/c1/c1_Instruction.hpp	Wed Apr 19 14:37:11 2017 +0200
+++ b/hotspot/src/share/vm/c1/c1_Instruction.hpp	Thu Dec 01 14:21:31 2016 -0500
@@ -372,6 +372,7 @@
     UnorderedIsTrueFlag,
     NeedsPatchingFlag,
     ThrowIncompatibleClassChangeErrorFlag,
+    InvokeSpecialReceiverCheckFlag,
     ProfileMDOFlag,
     IsLinkedInBlockFlag,
     NeedsRangeCheckFlag,
@@ -1454,6 +1455,16 @@
   bool is_incompatible_class_change_check() const {
     return check_flag(ThrowIncompatibleClassChangeErrorFlag);
   }
+  void set_invokespecial_receiver_check() {
+    set_flag(InvokeSpecialReceiverCheckFlag, true);
+  }
+  bool is_invokespecial_receiver_check() const {
+    return check_flag(InvokeSpecialReceiverCheckFlag);
+  }
+
+  virtual bool needs_exception_state() const {
+    return !is_invokespecial_receiver_check();
+  }
 
   ciType* declared_type() const;
 };