< prev index next >

src/hotspot/cpu/x86/frame_x86.inline.hpp

Print this page




 206   }
 207 }
 208 
 209 inline oop* frame::interpreter_frame_temp_oop_addr() const {
 210   return (oop *)(fp() + interpreter_frame_oop_temp_offset);
 211 }
 212 
 213 inline int frame::interpreter_frame_monitor_size() {
 214   return BasicObjectLock::size();
 215 }
 216 
 217 
 218 // expression stack
 219 // (the max_stack arguments are used by the GC; see class FrameClosure)
 220 
 221 inline intptr_t* frame::interpreter_frame_expression_stack() const {
 222   intptr_t* monitor_end = (intptr_t*) interpreter_frame_monitor_end();
 223   return monitor_end-1;
 224 }
 225 
 226 
 227 inline jint frame::interpreter_frame_expression_stack_direction() { return -1; }
 228 
 229 
 230 // Entry frames
 231 
 232 inline JavaCallWrapper** frame::entry_frame_call_wrapper_addr() const {
 233  return (JavaCallWrapper**)addr_at(entry_frame_call_wrapper_offset);
 234 }
 235 
 236 // Compiled frames
 237 
 238 inline oop frame::saved_oop_result(RegisterMap* map) const {
 239   oop* result_adr = (oop *)map->location(rax->as_VMReg());
 240   guarantee(result_adr != NULL, "bad register save location");
 241 
 242   return (*result_adr);
 243 }
 244 
 245 inline void frame::set_saved_oop_result(RegisterMap* map, oop obj) {
 246   oop* result_adr = (oop *)map->location(rax->as_VMReg());
 247   guarantee(result_adr != NULL, "bad register save location");
 248 
 249   *result_adr = obj;


 206   }
 207 }
 208 
 209 inline oop* frame::interpreter_frame_temp_oop_addr() const {
 210   return (oop *)(fp() + interpreter_frame_oop_temp_offset);
 211 }
 212 
 213 inline int frame::interpreter_frame_monitor_size() {
 214   return BasicObjectLock::size();
 215 }
 216 
 217 
 218 // expression stack
 219 // (the max_stack arguments are used by the GC; see class FrameClosure)
 220 
 221 inline intptr_t* frame::interpreter_frame_expression_stack() const {
 222   intptr_t* monitor_end = (intptr_t*) interpreter_frame_monitor_end();
 223   return monitor_end-1;
 224 }
 225 




 226 // Entry frames
 227 
 228 inline JavaCallWrapper** frame::entry_frame_call_wrapper_addr() const {
 229  return (JavaCallWrapper**)addr_at(entry_frame_call_wrapper_offset);
 230 }
 231 
 232 // Compiled frames
 233 
 234 inline oop frame::saved_oop_result(RegisterMap* map) const {
 235   oop* result_adr = (oop *)map->location(rax->as_VMReg());
 236   guarantee(result_adr != NULL, "bad register save location");
 237 
 238   return (*result_adr);
 239 }
 240 
 241 inline void frame::set_saved_oop_result(RegisterMap* map, oop obj) {
 242   oop* result_adr = (oop *)map->location(rax->as_VMReg());
 243   guarantee(result_adr != NULL, "bad register save location");
 244 
 245   *result_adr = obj;
< prev index next >