< prev index next >

src/hotspot/cpu/arm/frame_arm.inline.hpp

Print this page




 213 // (the max_stack arguments are used by the GC; see class FrameClosure)
 214 
 215 inline intptr_t* frame::interpreter_frame_expression_stack() const {
 216   intptr_t* monitor_end = (intptr_t*) interpreter_frame_monitor_end();
 217   return monitor_end-1;
 218 }
 219 
 220 
 221 inline jint frame::interpreter_frame_expression_stack_direction() { return -1; }
 222 
 223 
 224 // Entry frames
 225 
 226 inline JavaCallWrapper** frame::entry_frame_call_wrapper_addr() const {
 227  return (JavaCallWrapper**)addr_at(entry_frame_call_wrapper_offset);
 228 }
 229 
 230 
 231 // Compiled frames
 232 
 233 inline bool frame::volatile_across_calls(Register reg) {
 234   return true;
 235 }
 236 
 237 inline oop frame::saved_oop_result(RegisterMap* map) const {
 238   oop* result_adr = (oop*) map->location(R0->as_VMReg());
 239   guarantee(result_adr != NULL, "bad register save location");
 240   return (*result_adr);
 241 }
 242 
 243 inline void frame::set_saved_oop_result(RegisterMap* map, oop obj) {
 244   oop* result_adr = (oop*) map->location(R0->as_VMReg());
 245   guarantee(result_adr != NULL, "bad register save location");
 246   *result_adr = obj;
 247 }
 248 
 249 #endif // CPU_ARM_VM_FRAME_ARM_INLINE_HPP


 213 // (the max_stack arguments are used by the GC; see class FrameClosure)
 214 
 215 inline intptr_t* frame::interpreter_frame_expression_stack() const {
 216   intptr_t* monitor_end = (intptr_t*) interpreter_frame_monitor_end();
 217   return monitor_end-1;
 218 }
 219 
 220 
 221 inline jint frame::interpreter_frame_expression_stack_direction() { return -1; }
 222 
 223 
 224 // Entry frames
 225 
 226 inline JavaCallWrapper** frame::entry_frame_call_wrapper_addr() const {
 227  return (JavaCallWrapper**)addr_at(entry_frame_call_wrapper_offset);
 228 }
 229 
 230 
 231 // Compiled frames
 232 




 233 inline oop frame::saved_oop_result(RegisterMap* map) const {
 234   oop* result_adr = (oop*) map->location(R0->as_VMReg());
 235   guarantee(result_adr != NULL, "bad register save location");
 236   return (*result_adr);
 237 }
 238 
 239 inline void frame::set_saved_oop_result(RegisterMap* map, oop obj) {
 240   oop* result_adr = (oop*) map->location(R0->as_VMReg());
 241   guarantee(result_adr != NULL, "bad register save location");
 242   *result_adr = obj;
 243 }
 244 
 245 #endif // CPU_ARM_VM_FRAME_ARM_INLINE_HPP
< prev index next >