< prev index next >

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

Print this page




 175 
 176 
 177 // Constant pool cache
 178 
 179 inline ConstantPoolCache** frame::interpreter_frame_cache_addr() const {
 180   return (ConstantPoolCache**)addr_at(interpreter_frame_cache_offset);
 181 }
 182 
 183 // Method
 184 
 185 inline Method** frame::interpreter_frame_method_addr() const {
 186   return (Method**)addr_at(interpreter_frame_method_offset);
 187 }
 188 
 189 // Mirror
 190 
 191 inline oop* frame::interpreter_frame_mirror_addr() const {
 192   return (oop*)addr_at(interpreter_frame_mirror_offset);
 193 }
 194 




 195 // top of expression stack
 196 inline intptr_t* frame::interpreter_frame_tos_address() const {
 197   intptr_t* last_sp = interpreter_frame_last_sp();
 198   if (last_sp == NULL) {
 199     return sp();
 200   } else {
 201     // sp() may have been extended or shrunk by an adapter.  At least
 202     // check that we don't fall behind the legal region.
 203     // For top deoptimized frame last_sp == interpreter_frame_monitor_end.
 204     assert(last_sp <= (intptr_t*) interpreter_frame_monitor_end(), "bad tos");
 205     return last_sp;
 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::pd_oop_map_offset_adjustment() const {
 214   return 0;




 175 
 176 
 177 // Constant pool cache
 178 
 179 inline ConstantPoolCache** frame::interpreter_frame_cache_addr() const {
 180   return (ConstantPoolCache**)addr_at(interpreter_frame_cache_offset);
 181 }
 182 
 183 // Method
 184 
 185 inline Method** frame::interpreter_frame_method_addr() const {
 186   return (Method**)addr_at(interpreter_frame_method_offset);
 187 }
 188 
 189 // Mirror
 190 
 191 inline oop* frame::interpreter_frame_mirror_addr() const {
 192   return (oop*)addr_at(interpreter_frame_mirror_offset);
 193 }
 194 
 195 inline intptr_t** frame::interpreter_frame_vt_alloc_ptr_addr() const {
 196   return (intptr_t**)addr_at(interpreter_frame_vt_alloc_ptr_offset);
 197 }
 198 
 199 // top of expression stack
 200 inline intptr_t* frame::interpreter_frame_tos_address() const {
 201   intptr_t* last_sp = interpreter_frame_last_sp();
 202   if (last_sp == NULL) {
 203     return sp();
 204   } else {
 205     // sp() may have been extended or shrunk by an adapter.  At least
 206     // check that we don't fall behind the legal region.
 207     // For top deoptimized frame last_sp == interpreter_frame_monitor_end.
 208     assert(last_sp <= (intptr_t*) interpreter_frame_monitor_end(), "bad tos");
 209     return last_sp;
 210   }
 211 }
 212 
 213 inline oop* frame::interpreter_frame_temp_oop_addr() const {
 214   return (oop *)(fp() + interpreter_frame_oop_temp_offset);
 215 }
 216 
 217 inline int frame::pd_oop_map_offset_adjustment() const {
 218   return 0;


< prev index next >