Index: src/compiler/code-generator.h |
diff --git a/src/compiler/code-generator.h b/src/compiler/code-generator.h |
index 1083e66e023b0d350d50ba2798a8358a15cb167c..5633eafdbb0a1b795cddfd0435aa1ab0d96cbf66 100644 |
--- a/src/compiler/code-generator.h |
+++ b/src/compiler/code-generator.h |
@@ -102,6 +102,11 @@ class CodeGenerator final : public GapResolver::Assembler { |
void AssembleSourcePosition(Instruction* instr); |
void AssembleGaps(Instruction* instr); |
+ // Returns true if a instruction needs to adjust the stack pointer before |
+ // execution. The stack slot index to the empty slot above the adjusted stack |
+ // pointer is returned in |slot|. |
+ bool GetSlotAboveSPAfterGap(Instruction* instr, int* slot); |
+ |
// =========================================================================== |
// ============= Architecture-specific code generation methods. ============== |
// =========================================================================== |
@@ -124,18 +129,18 @@ class CodeGenerator final : public GapResolver::Assembler { |
// to tear down a stack frame. |
void AssembleReturn(); |
- // Generates code to deconstruct a the caller's frame, including arguments. |
- void AssembleDeconstructActivationRecord(int stack_param_delta); |
- |
void AssembleDeconstructFrame(); |
// Generates code to manipulate the stack in preparation for a tail call. |
- void AssemblePrepareTailCall(int stack_param_delta); |
+ void AssemblePrepareTailCall(); |
// Generates code to pop current frame if it is an arguments adaptor frame. |
void AssemblePopArgumentsAdaptorFrame(Register args_reg, Register scratch1, |
Register scratch2, Register scratch3); |
+ void AssemblePreGaps(Instruction* instr); |
Mircea Trofin
2016/06/30 15:32:34
Code comment on what these do.
danno
2016/07/01 07:31:57
Done.
|
+ void AssemblePostGaps(Instruction* instr); |
+ |
// =========================================================================== |
// ============== Architecture-specific gap resolver methods. ================ |
// =========================================================================== |
@@ -188,12 +193,6 @@ class CodeGenerator final : public GapResolver::Assembler { |
DeoptimizationExit* AddDeoptimizationExit(Instruction* instr, |
size_t frame_state_offset); |
- // Converts the delta in the number of stack parameter passed from a tail |
- // caller to the callee into the distance (in pointers) the SP must be |
- // adjusted, taking frame elision and other relevant factors into |
- // consideration. |
- int TailCallFrameStackSlotDelta(int stack_param_delta); |
- |
// =========================================================================== |
struct DeoptimizationState : ZoneObject { |