Mercurial > hg > truffle
comparison src/share/vm/runtime/frame.hpp @ 2177:3582bf76420e
6990754: Use native memory and reference counting to implement SymbolTable
Summary: move symbols from permgen into C heap and reference count them
Reviewed-by: never, acorn, jmasa, stefank
author | coleenp |
---|---|
date | Thu, 27 Jan 2011 16:11:27 -0800 |
parents | 09b4dd4f152b |
children | b92c45f2bc75 |
comparison
equal
deleted
inserted
replaced
2176:27e4ea99855d | 2177:3582bf76420e |
---|---|
259 BasicLock* get_native_monitor(); | 259 BasicLock* get_native_monitor(); |
260 oop get_native_receiver(); | 260 oop get_native_receiver(); |
261 | 261 |
262 // Find receiver for an invoke when arguments are just pushed on stack (i.e., callee stack-frame is | 262 // Find receiver for an invoke when arguments are just pushed on stack (i.e., callee stack-frame is |
263 // not setup) | 263 // not setup) |
264 oop interpreter_callee_receiver(symbolHandle signature) { return *interpreter_callee_receiver_addr(signature); } | 264 oop interpreter_callee_receiver(Symbol* signature) { return *interpreter_callee_receiver_addr(signature); } |
265 | 265 |
266 | 266 |
267 oop* interpreter_callee_receiver_addr(symbolHandle signature); | 267 oop* interpreter_callee_receiver_addr(Symbol* signature); |
268 | 268 |
269 | 269 |
270 // expression stack (may go up or down, direction == 1 or -1) | 270 // expression stack (may go up or down, direction == 1 or -1) |
271 public: | 271 public: |
272 intptr_t* interpreter_frame_expression_stack() const; | 272 intptr_t* interpreter_frame_expression_stack() const; |
384 | 384 |
385 // Conversion from an VMReg to physical stack location | 385 // Conversion from an VMReg to physical stack location |
386 oop* oopmapreg_to_location(VMReg reg, const RegisterMap* regmap) const; | 386 oop* oopmapreg_to_location(VMReg reg, const RegisterMap* regmap) const; |
387 | 387 |
388 // Oops-do's | 388 // Oops-do's |
389 void oops_compiled_arguments_do(symbolHandle signature, bool has_receiver, const RegisterMap* reg_map, OopClosure* f); | 389 void oops_compiled_arguments_do(Symbol* signature, bool has_receiver, const RegisterMap* reg_map, OopClosure* f); |
390 void oops_interpreted_do(OopClosure* f, const RegisterMap* map, bool query_oop_map_cache = true); | 390 void oops_interpreted_do(OopClosure* f, const RegisterMap* map, bool query_oop_map_cache = true); |
391 | 391 |
392 private: | 392 private: |
393 void oops_interpreted_arguments_do(symbolHandle signature, bool has_receiver, OopClosure* f); | 393 void oops_interpreted_arguments_do(Symbol* signature, bool has_receiver, OopClosure* f); |
394 | 394 |
395 // Iteration of oops | 395 // Iteration of oops |
396 void oops_do_internal(OopClosure* f, CodeBlobClosure* cf, RegisterMap* map, bool use_interpreter_oop_map_cache); | 396 void oops_do_internal(OopClosure* f, CodeBlobClosure* cf, RegisterMap* map, bool use_interpreter_oop_map_cache); |
397 void oops_entry_do(OopClosure* f, const RegisterMap* map); | 397 void oops_entry_do(OopClosure* f, const RegisterMap* map); |
398 void oops_code_blob_do(OopClosure* f, CodeBlobClosure* cf, const RegisterMap* map); | 398 void oops_code_blob_do(OopClosure* f, CodeBlobClosure* cf, const RegisterMap* map); |