equal
deleted
inserted
replaced
131 int arg_size() const { |
131 int arg_size() const { |
132 check_is_loaded(); |
132 check_is_loaded(); |
133 return _signature->size() + (_flags.is_static() ? 0 : 1); |
133 return _signature->size() + (_flags.is_static() ? 0 : 1); |
134 } |
134 } |
135 // Report the number of elements on stack when invoking this method. |
135 // Report the number of elements on stack when invoking this method. |
136 // This is different than the regular arg_size because invokdynamic |
136 // This is different than the regular arg_size because invokedynamic |
137 // has an implicit receiver. |
137 // has an implicit receiver. |
138 int invoke_arg_size(Bytecodes::Code code) const { |
138 int invoke_arg_size(Bytecodes::Code code) const { |
139 int arg_size = _signature->size(); |
139 if (is_loaded()) { |
140 // Add a receiver argument, maybe: |
140 return arg_size(); |
141 if (code != Bytecodes::_invokestatic && |
141 } else { |
142 code != Bytecodes::_invokedynamic) { |
142 int arg_size = _signature->size(); |
143 arg_size++; |
143 // Add a receiver argument, maybe: |
|
144 if (code != Bytecodes::_invokestatic && |
|
145 code != Bytecodes::_invokedynamic) { |
|
146 arg_size++; |
|
147 } |
|
148 return arg_size; |
144 } |
149 } |
145 return arg_size; |
|
146 } |
150 } |
147 |
151 |
148 |
152 |
149 // Method code and related information. |
153 // Method code and related information. |
150 address code() { if (_code == NULL) load_code(); return _code; } |
154 address code() { if (_code == NULL) load_code(); return _code; } |
159 |
163 |
160 // Code size for inlining decisions. |
164 // Code size for inlining decisions. |
161 int code_size_for_inlining(); |
165 int code_size_for_inlining(); |
162 |
166 |
163 bool force_inline() { return get_methodOop()->force_inline(); } |
167 bool force_inline() { return get_methodOop()->force_inline(); } |
|
168 bool dont_inline() { return get_methodOop()->dont_inline(); } |
164 |
169 |
165 int comp_level(); |
170 int comp_level(); |
166 int highest_osr_comp_level(); |
171 int highest_osr_comp_level(); |
167 |
172 |
168 Bytecodes::Code java_code_at_bci(int bci) { |
173 Bytecodes::Code java_code_at_bci(int bci) { |
256 bool check_call(int refinfo_index, bool is_static) const; |
261 bool check_call(int refinfo_index, bool is_static) const; |
257 bool ensure_method_data(); // make sure it exists in the VM also |
262 bool ensure_method_data(); // make sure it exists in the VM also |
258 int scale_count(int count, float prof_factor = 1.); // make MDO count commensurate with IIC |
263 int scale_count(int count, float prof_factor = 1.); // make MDO count commensurate with IIC |
259 |
264 |
260 // JSR 292 support |
265 // JSR 292 support |
261 bool is_method_handle_invoke() const; |
266 bool is_method_handle_intrinsic() const; |
262 bool is_method_handle_adapter() const; |
267 bool is_compiled_lambda_form() const; |
263 ciInstance* method_handle_type(); |
268 bool has_member_arg() const; |
264 |
269 |
265 // What kind of ciObject is this? |
270 // What kind of ciObject is this? |
266 bool is_method() { return true; } |
271 bool is_method() { return true; } |
267 |
272 |
268 // Java access flags |
273 // Java access flags |