< prev index next >

src/hotspot/share/prims/universalNativeInvoker.hpp

Print this page
@@ -22,29 +22,21 @@
   */
  
  #ifndef SHARE_VM_PRIMS_UNIVERSALNATIVEINVOKER_HPP
  #define SHARE_VM_PRIMS_UNIVERSALNATIVEINVOKER_HPP
  
- #include "runtime/stubCodeGenerator.hpp"
  #include "prims/foreign_globals.hpp"
  
- class ProgrammableInvoker: AllStatic {
- private:
-   static constexpr CodeBuffer::csize_t native_invoker_size = 1024;
- 
-   class Generator : StubCodeGenerator {
-   private:
-     const ABIDescriptor* _abi;
-     const BufferLayout* _layout;
-   public:
-     Generator(CodeBuffer* code, const ABIDescriptor* abi, const BufferLayout* layout);
+ class RuntimeStub;
  
-     void generate();
-   };
+ class ProgrammableInvoker: AllStatic {
  public:
-   using Stub = void(*)(address);
- 
-   static void invoke_native(Stub stub, address buff, JavaThread* thread);
-   static address generate_adapter(jobject abi, jobject layout);
+   static RuntimeStub* make_native_invoker(BasicType*,
+                                           int num_args,
+                                           BasicType ret_bt,
+                                           const ABIDescriptor& abi,
+                                           const GrowableArray<VMReg>& input_registers,
+                                           const GrowableArray<VMReg>& output_registers,
+                                           bool needs_return_buffer);
  };
  
  #endif // SHARE_VM_PRIMS_UNIVERSALNATIVEINVOKER_HPP
< prev index next >