< prev index next >

src/jdk.internal.vm.ci/share/classes/jdk.vm.ci.meta/src/jdk/vm/ci/meta/MetaAccessProvider.java

Print this page




  66     ResolvedJavaField lookupJavaField(Field reflectionField);
  67 
  68     /**
  69      * Returns the resolved Java type of the given {@link JavaConstant} object.
  70      *
  71      * @return {@code null} if {@code constant.isNull() || !constant.kind.isObject()}
  72      */
  73     ResolvedJavaType lookupJavaType(JavaConstant constant);
  74 
  75     /**
  76      * Returns the number of bytes occupied by this constant value or constant object.
  77      *
  78      * @param constant the constant whose bytes should be measured
  79      * @return the number of bytes occupied by this constant
  80      */
  81     long getMemorySize(JavaConstant constant);
  82 
  83     /**
  84      * Parses a
  85      * <a href="http://docs.oracle.com/javase/specs/jvms/se7/html/jvms-4.html#jvms-4.3.3">method
  86      * descriptor</a> into a {@link Signature}. The behavior of this method is undefined if the
  87      * method descriptor is not well formed.

  88      */
  89     Signature parseMethodDescriptor(String methodDescriptor);
  90 
  91     /**
  92      * Encodes a deoptimization action and a deoptimization reason in an integer value.
  93      *
  94      * @param debugId an integer that can be used to track the origin of a deoptimization at
  95      *            runtime. There is no guarantee that the runtime will use this value. The runtime
  96      *            may even keep fewer than 32 bits.
  97      *
  98      * @return the encoded value as an integer
  99      */
 100     JavaConstant encodeDeoptActionAndReason(DeoptimizationAction action, DeoptimizationReason reason, int debugId);
 101 
 102     DeoptimizationReason decodeDeoptReason(JavaConstant constant);
 103 
 104     DeoptimizationAction decodeDeoptAction(JavaConstant constant);
 105 
 106     int decodeDebugId(JavaConstant constant);
 107 }


  66     ResolvedJavaField lookupJavaField(Field reflectionField);
  67 
  68     /**
  69      * Returns the resolved Java type of the given {@link JavaConstant} object.
  70      *
  71      * @return {@code null} if {@code constant.isNull() || !constant.kind.isObject()}
  72      */
  73     ResolvedJavaType lookupJavaType(JavaConstant constant);
  74 
  75     /**
  76      * Returns the number of bytes occupied by this constant value or constant object.
  77      *
  78      * @param constant the constant whose bytes should be measured
  79      * @return the number of bytes occupied by this constant
  80      */
  81     long getMemorySize(JavaConstant constant);
  82 
  83     /**
  84      * Parses a
  85      * <a href="http://docs.oracle.com/javase/specs/jvms/se7/html/jvms-4.html#jvms-4.3.3">method
  86      * descriptor</a> into a {@link Signature}.
  87      *
  88      * @throws IllegalArgumentException if the method descriptor is not well formed
  89      */
  90     Signature parseMethodDescriptor(String methodDescriptor);
  91 
  92     /**
  93      * Encodes a deoptimization action and a deoptimization reason in an integer value.
  94      *
  95      * @param debugId an integer that can be used to track the origin of a deoptimization at
  96      *            runtime. There is no guarantee that the runtime will use this value. The runtime
  97      *            may even keep fewer than 32 bits.
  98      *
  99      * @return the encoded value as an integer
 100      */
 101     JavaConstant encodeDeoptActionAndReason(DeoptimizationAction action, DeoptimizationReason reason, int debugId);
 102 
 103     DeoptimizationReason decodeDeoptReason(JavaConstant constant);
 104 
 105     DeoptimizationAction decodeDeoptAction(JavaConstant constant);
 106 
 107     int decodeDebugId(JavaConstant constant);
 108 }
< prev index next >