< prev index next >

src/jdk.vm.ci/share/classes/jdk.vm.ci.hotspot/src/jdk/vm/ci/hotspot/CompilerToVM.java

Print this page




 229      * a method.
 230      *
 231      * @param opcode the opcode of the instruction for which the lookup is being performed or
 232      *            {@code -1}. If non-negative, then resolution checks specific to the bytecode it
 233      *            denotes are performed if the method is already resolved. Should any of these
 234      *            checks fail, 0 is returned.
 235      * @return the resolved method entry, 0 otherwise
 236      */
 237     native HotSpotResolvedJavaMethodImpl lookupMethodInPool(HotSpotConstantPool constantPool, int cpi, byte opcode);
 238 
 239     /**
 240      * Ensures that the type referenced by the specified {@code JVM_CONSTANT_InvokeDynamic} entry at
 241      * index {@code cpi} in {@code constantPool} is loaded and initialized.
 242      *
 243      * The behavior of this method is undefined if {@code cpi} does not denote a
 244      * {@code JVM_CONSTANT_InvokeDynamic} entry.
 245      */
 246     native void resolveInvokeDynamicInPool(HotSpotConstantPool constantPool, int cpi);
 247 
 248     /**
 249      * Ensures that the type referenced by the entry for a <a
 250      * href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-2.html#jvms-2.9">signature
 251      * polymorphic</a> method at index {@code cpi} in {@code constantPool} is loaded and
 252      * initialized.
 253      *
 254      * The behavior of this method is undefined if {@code cpi} does not denote an entry representing
 255      * a signature polymorphic method.
 256      */
 257     native void resolveInvokeHandleInPool(HotSpotConstantPool constantPool, int cpi);
 258 
 259     /**
 260      * Gets the resolved type denoted by the entry at index {@code cpi} in {@code constantPool}.
 261      *
 262      * The behavior of this method is undefined if {@code cpi} does not denote an entry representing
 263      * a class.
 264      *
 265      * @throws LinkageError if resolution failed
 266      */
 267     native HotSpotResolvedObjectTypeImpl resolveTypeInPool(HotSpotConstantPool constantPool, int cpi) throws LinkageError;
 268 
 269     /**
 270      * Looks up and attempts to resolve the {@code JVM_CONSTANT_Field} entry at index {@code cpi} in




 229      * a method.
 230      *
 231      * @param opcode the opcode of the instruction for which the lookup is being performed or
 232      *            {@code -1}. If non-negative, then resolution checks specific to the bytecode it
 233      *            denotes are performed if the method is already resolved. Should any of these
 234      *            checks fail, 0 is returned.
 235      * @return the resolved method entry, 0 otherwise
 236      */
 237     native HotSpotResolvedJavaMethodImpl lookupMethodInPool(HotSpotConstantPool constantPool, int cpi, byte opcode);
 238 
 239     /**
 240      * Ensures that the type referenced by the specified {@code JVM_CONSTANT_InvokeDynamic} entry at
 241      * index {@code cpi} in {@code constantPool} is loaded and initialized.
 242      *
 243      * The behavior of this method is undefined if {@code cpi} does not denote a
 244      * {@code JVM_CONSTANT_InvokeDynamic} entry.
 245      */
 246     native void resolveInvokeDynamicInPool(HotSpotConstantPool constantPool, int cpi);
 247 
 248     /**
 249      * Ensures that the type referenced by the entry for a
 250      * <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-2.html#jvms-2.9">signature
 251      * polymorphic</a> method at index {@code cpi} in {@code constantPool} is loaded and
 252      * initialized.
 253      *
 254      * The behavior of this method is undefined if {@code cpi} does not denote an entry representing
 255      * a signature polymorphic method.
 256      */
 257     native void resolveInvokeHandleInPool(HotSpotConstantPool constantPool, int cpi);
 258 
 259     /**
 260      * Gets the resolved type denoted by the entry at index {@code cpi} in {@code constantPool}.
 261      *
 262      * The behavior of this method is undefined if {@code cpi} does not denote an entry representing
 263      * a class.
 264      *
 265      * @throws LinkageError if resolution failed
 266      */
 267     native HotSpotResolvedObjectTypeImpl resolveTypeInPool(HotSpotConstantPool constantPool, int cpi) throws LinkageError;
 268 
 269     /**
 270      * Looks up and attempts to resolve the {@code JVM_CONSTANT_Field} entry at index {@code cpi} in


< prev index next >