330 // 0 1 2 3 x x 4 5 6 ... | <- local indices
331 // ^ ^ sp() ( x x indicate link
332 // | | and return addr)
333 // arguments non-argument locals
334
335
336 VMReg FrameMap::fpu_regname (int n) {
337 // Return the OptoReg name for the fpu stack slot "n"
338 // A spilled fpu stack slot comprises to two single-word OptoReg's.
339 return as_FloatRegister(n)->as_VMReg();
340 }
341
342 LIR_Opr FrameMap::stack_pointer() {
343 return FrameMap::sp_opr;
344 }
345
346
347 // JSR 292
348 LIR_Opr FrameMap::method_handle_invoke_SP_save_opr() {
349 // assert(rfp == rbp_mh_SP_save, "must be same register");
350 return rfp_opr;
351 }
352
353
354 bool FrameMap::validate_frame() {
355 return true;
356 }
|
330 // 0 1 2 3 x x 4 5 6 ... | <- local indices
331 // ^ ^ sp() ( x x indicate link
332 // | | and return addr)
333 // arguments non-argument locals
334
335
336 VMReg FrameMap::fpu_regname (int n) {
337 // Return the OptoReg name for the fpu stack slot "n"
338 // A spilled fpu stack slot comprises to two single-word OptoReg's.
339 return as_FloatRegister(n)->as_VMReg();
340 }
341
342 LIR_Opr FrameMap::stack_pointer() {
343 return FrameMap::sp_opr;
344 }
345
346
347 // JSR 292
348 LIR_Opr FrameMap::method_handle_invoke_SP_save_opr() {
349 // assert(rfp == rbp_mh_SP_save, "must be same register");
350 return LIR_OprFact::illegalOpr; // Not needed on aarch64
351 }
352
353
354 bool FrameMap::validate_frame() {
355 return true;
356 }
|