Mercurial > hg > graal-jvmci-8
comparison src/share/vm/runtime/frame.hpp @ 1138:dd57230ba8fe
6893268: additional dynamic language related optimizations in C2
Summary: C2 needs some additional optimizations to be able to handle MethodHandle invokes and invokedynamic instructions at the best performance.
Reviewed-by: kvn, never
author | twisti |
---|---|
date | Tue, 05 Jan 2010 15:21:25 +0100 |
parents | 148e5441d916 |
children | ba263cfb7611 |
comparison
equal
deleted
inserted
replaced
1137:97125851f396 | 1138:dd57230ba8fe |
---|---|
369 | 369 |
370 // Conversion from an VMReg to physical stack location | 370 // Conversion from an VMReg to physical stack location |
371 oop* oopmapreg_to_location(VMReg reg, const RegisterMap* regmap) const; | 371 oop* oopmapreg_to_location(VMReg reg, const RegisterMap* regmap) const; |
372 | 372 |
373 // Oops-do's | 373 // Oops-do's |
374 void oops_compiled_arguments_do(symbolHandle signature, bool is_static, const RegisterMap* reg_map, OopClosure* f); | 374 void oops_compiled_arguments_do(symbolHandle signature, bool has_receiver, const RegisterMap* reg_map, OopClosure* f); |
375 void oops_interpreted_do(OopClosure* f, const RegisterMap* map, bool query_oop_map_cache = true); | 375 void oops_interpreted_do(OopClosure* f, const RegisterMap* map, bool query_oop_map_cache = true); |
376 | 376 |
377 private: | 377 private: |
378 void oops_interpreted_locals_do(OopClosure *f, | 378 void oops_interpreted_locals_do(OopClosure *f, |
379 int max_locals, | 379 int max_locals, |
380 InterpreterOopMap *mask); | 380 InterpreterOopMap *mask); |
381 void oops_interpreted_expressions_do(OopClosure *f, symbolHandle signature, | 381 void oops_interpreted_expressions_do(OopClosure *f, symbolHandle signature, |
382 bool is_static, int max_stack, int max_locals, | 382 bool has_receiver, int max_stack, int max_locals, |
383 InterpreterOopMap *mask); | 383 InterpreterOopMap *mask); |
384 void oops_interpreted_arguments_do(symbolHandle signature, bool is_static, OopClosure* f); | 384 void oops_interpreted_arguments_do(symbolHandle signature, bool has_receiver, OopClosure* f); |
385 | 385 |
386 // Iteration of oops | 386 // Iteration of oops |
387 void oops_do_internal(OopClosure* f, CodeBlobClosure* cf, RegisterMap* map, bool use_interpreter_oop_map_cache); | 387 void oops_do_internal(OopClosure* f, CodeBlobClosure* cf, RegisterMap* map, bool use_interpreter_oop_map_cache); |
388 void oops_entry_do(OopClosure* f, const RegisterMap* map); | 388 void oops_entry_do(OopClosure* f, const RegisterMap* map); |
389 void oops_code_blob_do(OopClosure* f, CodeBlobClosure* cf, const RegisterMap* map); | 389 void oops_code_blob_do(OopClosure* f, CodeBlobClosure* cf, const RegisterMap* map); |