< prev index next >

src/share/vm/jvmci/jvmciCompilerToVM.hpp

Print this page




  77   static inline ConstantPool* asConstantPool(oop jvmci_constant_pool) {
  78     return (ConstantPool*) (address) HotSpotConstantPool::metaspaceConstantPool(jvmci_constant_pool);
  79   }
  80 
  81   static inline Klass* asKlass(jobject jvmci_type) {
  82     return java_lang_Class::as_Klass(HotSpotResolvedObjectTypeImpl::javaClass(jvmci_type));
  83   }
  84 
  85   static inline Klass* asKlass(Handle jvmci_type) {
  86     return java_lang_Class::as_Klass(HotSpotResolvedObjectTypeImpl::javaClass(jvmci_type));
  87   }
  88 
  89   static inline Klass* asKlass(oop jvmci_type) {
  90     return java_lang_Class::as_Klass(HotSpotResolvedObjectTypeImpl::javaClass(jvmci_type));
  91   }
  92 
  93   static inline MethodData* asMethodData(jlong metaspaceMethodData) {
  94     return (MethodData*) (address) metaspaceMethodData;
  95   }
  96 
  97   static oop get_jvmci_method(methodHandle method, TRAPS);
  98 
  99   static oop get_jvmci_type(KlassHandle klass, TRAPS);
 100 
 101   static void invalidate_installed_code(Handle installedCode, TRAPS);
 102 };
 103 
 104 class JavaArgumentUnboxer : public SignatureIterator {
 105  protected:
 106   JavaCallArguments*  _jca;
 107   arrayOop _args;
 108   int _index;
 109 
 110   oop next_arg(BasicType expectedType) {
 111     assert(_index < _args->length(), "out of bounds");
 112     oop arg=((objArrayOop) (_args))->obj_at(_index++);
 113     assert(expectedType == T_OBJECT || java_lang_boxing_object::is_instance(arg, expectedType), "arg type mismatch");
 114     return arg;
 115   }
 116 
 117  public:




  77   static inline ConstantPool* asConstantPool(oop jvmci_constant_pool) {
  78     return (ConstantPool*) (address) HotSpotConstantPool::metaspaceConstantPool(jvmci_constant_pool);
  79   }
  80 
  81   static inline Klass* asKlass(jobject jvmci_type) {
  82     return java_lang_Class::as_Klass(HotSpotResolvedObjectTypeImpl::javaClass(jvmci_type));
  83   }
  84 
  85   static inline Klass* asKlass(Handle jvmci_type) {
  86     return java_lang_Class::as_Klass(HotSpotResolvedObjectTypeImpl::javaClass(jvmci_type));
  87   }
  88 
  89   static inline Klass* asKlass(oop jvmci_type) {
  90     return java_lang_Class::as_Klass(HotSpotResolvedObjectTypeImpl::javaClass(jvmci_type));
  91   }
  92 
  93   static inline MethodData* asMethodData(jlong metaspaceMethodData) {
  94     return (MethodData*) (address) metaspaceMethodData;
  95   }
  96 
  97   static oop get_jvmci_method(const methodHandle& method, TRAPS);
  98 
  99   static oop get_jvmci_type(KlassHandle klass, TRAPS);
 100 
 101   static void invalidate_installed_code(Handle installedCode, TRAPS);
 102 };
 103 
 104 class JavaArgumentUnboxer : public SignatureIterator {
 105  protected:
 106   JavaCallArguments*  _jca;
 107   arrayOop _args;
 108   int _index;
 109 
 110   oop next_arg(BasicType expectedType) {
 111     assert(_index < _args->length(), "out of bounds");
 112     oop arg=((objArrayOop) (_args))->obj_at(_index++);
 113     assert(expectedType == T_OBJECT || java_lang_boxing_object::is_instance(arg, expectedType), "arg type mismatch");
 114     return arg;
 115   }
 116 
 117  public:


< prev index next >