< prev index next >

src/share/vm/classfile/javaClasses.hpp

Print this page

        

@@ -1168,26 +1168,20 @@
   friend class JavaClasses;
 
 private:
   static int _target_offset;
   static int _context_offset;
-  static int _default_context_offset;
-
 
   static void compute_offsets();
 
 public:
   // Accessors
   static oop              target(          oop site);
   static void         set_target(          oop site, oop target);
   static void         set_target_volatile( oop site, oop target);
 
-  static oop              context_volatile(oop site);
-  static void         set_context_volatile(oop site, oop context);
-  static bool         set_context_cas     (oop site, oop context, oop expected);
-
-  static oop default_context();
+  static oop              context(oop site);
 
   // Testers
   static bool is_subclass(Klass* klass) {
     return klass->is_subclass_of(SystemDictionary::CallSite_klass());
   }

@@ -1195,10 +1189,32 @@
 
   // Accessors for code generation:
   static int target_offset_in_bytes()           { return _target_offset; }
 };
 
+// Interface to java.lang.invoke.CallSite$Context objects
+
+class java_lang_invoke_CallSite_Context : AllStatic {
+  friend class JavaClasses;
+
+private:
+  static int _dependencies_offset;
+
+  static void compute_offsets();
+
+public:
+  // Accessors
+  static nmethodBucket* dependencies(oop context);
+  static void       set_dependencies(oop context, nmethodBucket* bucket);
+
+  // Testers
+  static bool is_subclass(Klass* klass) {
+    return klass->is_subclass_of(SystemDictionary::Context_klass());
+  }
+  static bool is_instance(oop obj);
+};
+
 // Interface to java.security.AccessControlContext objects
 
 class java_security_AccessControlContext: AllStatic {
  private:
   // Note that for this class the layout changed between JDK1.2 and JDK1.3,
< prev index next >