Index: src/compiler/arm64/code-generator-arm64.cc |
diff --git a/src/compiler/arm64/code-generator-arm64.cc b/src/compiler/arm64/code-generator-arm64.cc |
index 37d3161dc4870cf71137a2398251e0dce5834e52..975268fb87f9a0cd000d20ae842e533581fc45e0 100644 |
--- a/src/compiler/arm64/code-generator-arm64.cc |
+++ b/src/compiler/arm64/code-generator-arm64.cc |
@@ -626,6 +626,13 @@ void CodeGenerator::AssembleArchInstruction(Instruction* instr) { |
case kArchFramePointer: |
__ mov(i.OutputRegister(), fp); |
break; |
+ case kArchParentFramePointer: |
+ if (frame_access_state()->frame()->needs_frame()) { |
+ __ ldr(i.OutputRegister(), MemOperand(fp, 0)); |
+ } else { |
+ __ mov(i.OutputRegister(), fp); |
+ } |
+ break; |
case kArchTruncateDoubleToI: |
__ TruncateDoubleToI(i.OutputRegister(), i.InputDoubleRegister(0)); |
break; |