src/cpu/x86/vm/c1_LIRAssembler_x86.cpp

changeset 6723
0bf37f737702
parent 6539
876390ee9b6f
child 6876
710a3c8b516e
child 8316
626f594dffa6
equal deleted inserted replaced
6721:ad51f24671c2 6723:0bf37f737702
286 // rcx: osr buffer 286 // rcx: osr buffer
287 // 287 //
288 288
289 // build frame 289 // build frame
290 ciMethod* m = compilation()->method(); 290 ciMethod* m = compilation()->method();
291 __ build_frame(initial_frame_size_in_bytes()); 291 __ build_frame(initial_frame_size_in_bytes(), bang_size_in_bytes());
292 292
293 // OSR buffer is 293 // OSR buffer is
294 // 294 //
295 // locals[nlocals-1..0] 295 // locals[nlocals-1..0]
296 // monitors[0..number_of_locks] 296 // monitors[0..number_of_locks]
374 __ mov_metadata(reg, o); 374 __ mov_metadata(reg, o);
375 patching_epilog(patch, lir_patch_normal, reg, info); 375 patching_epilog(patch, lir_patch_normal, reg, info);
376 } 376 }
377 377
378 // This specifies the rsp decrement needed to build the frame 378 // This specifies the rsp decrement needed to build the frame
379 int LIR_Assembler::initial_frame_size_in_bytes() { 379 int LIR_Assembler::initial_frame_size_in_bytes() const {
380 // if rounding, must let FrameMap know! 380 // if rounding, must let FrameMap know!
381 381
382 // The frame_map records size in slots (32bit word) 382 // The frame_map records size in slots (32bit word)
383 383
384 // subtract two words to account for return address and link 384 // subtract two words to account for return address and link

mercurial