src/share/classes/java/lang/invoke/CallSite.java
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File 7088481 Cdiff src/share/classes/java/lang/invoke/CallSite.java

src/share/classes/java/lang/invoke/CallSite.java

Print this page

        

*** 85,98 **** */ abstract public class CallSite { static { MethodHandleImpl.initStatics(); } - // Fields used only by the JVM. Do not use or change. - private MemberName vmmethod; // supplied by the JVM (ref. to calling method) - private int vmindex; // supplied by the JVM (BCI within calling method) - // The actual payload of this call site: /*package-private*/ MethodHandle target; /** --- 85,94 ----
*** 150,177 **** public MethodType type() { // warning: do not call getTarget here, because CCS.getTarget can throw IllegalStateException return target.type(); } - /** Called from JVM (or low-level Java code) after the BSM returns the newly created CallSite. - * The parameters are JVM-specific. - */ - void initializeFromJVM(String name, - MethodType type, - MemberName callerMethod, - int callerBCI) { - if (this.vmmethod != null) { - // FIXME - throw new BootstrapMethodError("call site has already been linked to an invokedynamic instruction"); - } - if (!this.type().equals(type)) { - throw wrongTargetType(target, type); - } - this.vmindex = callerBCI; - this.vmmethod = callerMethod; - } - /** * Returns the target method of the call site, according to the * behavior defined by this call site's specific class. * The immediate subclasses of {@code CallSite} document the * class-specific behaviors of this method. --- 146,155 ----
src/share/classes/java/lang/invoke/CallSite.java
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File