src/share/vm/ci/ciMethodHandle.hpp

changeset 3969
1d7922586cf6
parent 3245
e0658a9b3f87
child 4153
b9a9ed0f8eeb
     1.1 --- a/src/share/vm/ci/ciMethodHandle.hpp	Mon Jul 23 13:04:59 2012 -0700
     1.2 +++ b/src/share/vm/ci/ciMethodHandle.hpp	Tue Jul 24 10:51:00 2012 -0700
     1.3 @@ -25,61 +25,20 @@
     1.4  #ifndef SHARE_VM_CI_CIMETHODHANDLE_HPP
     1.5  #define SHARE_VM_CI_CIMETHODHANDLE_HPP
     1.6  
     1.7 -#include "ci/ciCallProfile.hpp"
     1.8 +#include "ci/ciClassList.hpp"
     1.9  #include "ci/ciInstance.hpp"
    1.10 -#include "prims/methodHandles.hpp"
    1.11  
    1.12  // ciMethodHandle
    1.13  //
    1.14  // The class represents a java.lang.invoke.MethodHandle object.
    1.15  class ciMethodHandle : public ciInstance {
    1.16 -private:
    1.17 -  ciMethod*      _callee;
    1.18 -  ciMethod*      _caller;
    1.19 -  ciCallProfile  _profile;
    1.20 -  ciMethod*      _method_handle_adapter;
    1.21 -  ciMethod*      _invokedynamic_adapter;
    1.22 -
    1.23 -  // Return an adapter for this MethodHandle.
    1.24 -  ciMethod* get_adapter_impl(bool is_invokedynamic);
    1.25 -  ciMethod* get_adapter(     bool is_invokedynamic);
    1.26 -
    1.27 -protected:
    1.28 -  void print_chain_impl() NOT_DEBUG_RETURN;
    1.29 -
    1.30  public:
    1.31 -  ciMethodHandle(instanceHandle h_i) :
    1.32 -    ciInstance(h_i),
    1.33 -    _callee(NULL),
    1.34 -    _caller(NULL),
    1.35 -    _method_handle_adapter(NULL),
    1.36 -    _invokedynamic_adapter(NULL)
    1.37 -  {}
    1.38 +  ciMethodHandle(instanceHandle h_i) : ciInstance(h_i) {}
    1.39  
    1.40    // What kind of ciObject is this?
    1.41    bool is_method_handle() const { return true; }
    1.42  
    1.43 -  void set_callee(ciMethod* m)                  { _callee  = m;       }
    1.44 -  void set_caller(ciMethod* m)                  { _caller  = m;       }
    1.45 -  void set_call_profile(ciCallProfile profile)  { _profile = profile; }
    1.46 -
    1.47 -  // Return an adapter for a MethodHandle call.
    1.48 -  ciMethod* get_method_handle_adapter() {
    1.49 -    if (_method_handle_adapter == NULL) {
    1.50 -      _method_handle_adapter = get_adapter(false);
    1.51 -    }
    1.52 -    return _method_handle_adapter;
    1.53 -  }
    1.54 -
    1.55 -  // Return an adapter for an invokedynamic call.
    1.56 -  ciMethod* get_invokedynamic_adapter() {
    1.57 -    if (_invokedynamic_adapter == NULL) {
    1.58 -      _invokedynamic_adapter = get_adapter(true);
    1.59 -    }
    1.60 -    return _invokedynamic_adapter;
    1.61 -  }
    1.62 -
    1.63 -  void print_chain() NOT_DEBUG_RETURN;
    1.64 +  ciMethod* get_vmtarget() const;
    1.65  };
    1.66  
    1.67  #endif // SHARE_VM_CI_CIMETHODHANDLE_HPP

mercurial