71 int _interpreter_throwout_count;
72
73 bool _uses_monitors;
74 bool _balanced_monitors;
75 bool _is_c1_compilable;
76 bool _is_c2_compilable;
77 bool _can_be_statically_bound;
78
79 // Lazy fields, filled in on demand
80 address _code;
81 ciExceptionHandler** _exception_handlers;
82
83 // Optional liveness analyzer.
84 MethodLiveness* _liveness;
85 #if defined(COMPILER2) || defined(SHARK)
86 ciTypeFlow* _flow;
87 BCEscapeAnalyzer* _bcea;
88 #endif
89
90 ciMethod(methodHandle h_m);
91 ciMethod(ciInstanceKlass* holder, ciSymbol* name, ciSymbol* signature);
92
93 methodOop get_methodOop() const {
94 methodOop m = (methodOop)get_oop();
95 assert(m != NULL, "illegal use of unloaded method");
96 return m;
97 }
98
99 oop loader() const { return _holder->loader(); }
100
101 const char* type_string() { return "ciMethod"; }
102
103 void print_impl(outputStream* st);
104
105 void load_code();
106
107 void check_is_loaded() const { assert(is_loaded(), "not loaded"); }
108
109 bool ensure_method_data(methodHandle h_m);
110
111 void code_at_put(int bci, Bytecodes::Code code) {
|
71 int _interpreter_throwout_count;
72
73 bool _uses_monitors;
74 bool _balanced_monitors;
75 bool _is_c1_compilable;
76 bool _is_c2_compilable;
77 bool _can_be_statically_bound;
78
79 // Lazy fields, filled in on demand
80 address _code;
81 ciExceptionHandler** _exception_handlers;
82
83 // Optional liveness analyzer.
84 MethodLiveness* _liveness;
85 #if defined(COMPILER2) || defined(SHARK)
86 ciTypeFlow* _flow;
87 BCEscapeAnalyzer* _bcea;
88 #endif
89
90 ciMethod(methodHandle h_m);
91 ciMethod(ciInstanceKlass* holder, ciSymbol* name, ciSymbol* signature, ciInstanceKlass* accessor);
92
93 methodOop get_methodOop() const {
94 methodOop m = (methodOop)get_oop();
95 assert(m != NULL, "illegal use of unloaded method");
96 return m;
97 }
98
99 oop loader() const { return _holder->loader(); }
100
101 const char* type_string() { return "ciMethod"; }
102
103 void print_impl(outputStream* st);
104
105 void load_code();
106
107 void check_is_loaded() const { assert(is_loaded(), "not loaded"); }
108
109 bool ensure_method_data(methodHandle h_m);
110
111 void code_at_put(int bci, Bytecodes::Code code) {
|