| Index: src/compiler/instruction-selector-impl.h
|
| diff --git a/src/compiler/instruction-selector-impl.h b/src/compiler/instruction-selector-impl.h
|
| index 6421b23c739d46598c8085892546d64e37a532c8..92b4fb5daac5b1db33eb7315ae4d681051285482 100644
|
| --- a/src/compiler/instruction-selector-impl.h
|
| +++ b/src/compiler/instruction-selector-impl.h
|
| @@ -346,22 +346,29 @@ class FlagsContinuation V8_FINAL {
|
| // TODO(bmeurer): Get rid of the CallBuffer business and make
|
| // InstructionSelector::VisitCall platform independent instead.
|
| struct CallBuffer {
|
| - CallBuffer(Zone* zone, CallDescriptor* descriptor);
|
| + CallBuffer(Zone* zone, CallDescriptor* descriptor,
|
| + FrameStateDescriptor* frame_state);
|
|
|
| - int output_count;
|
| CallDescriptor* descriptor;
|
| - Node** output_nodes;
|
| - InstructionOperand** outputs;
|
| - InstructionOperand** fixed_and_control_args;
|
| - int fixed_count;
|
| - Node** pushed_nodes;
|
| - int pushed_count;
|
| + FrameStateDescriptor* frame_state_descriptor;
|
| + NodeVector output_nodes;
|
| + InstructionOperandVector outputs;
|
| + InstructionOperandVector instruction_args;
|
| + NodeVector pushed_nodes;
|
|
|
| - int input_count() { return descriptor->InputCount(); }
|
| + int input_count() const { return descriptor->InputCount(); }
|
|
|
| - int control_count() { return descriptor->CanLazilyDeoptimize() ? 2 : 0; }
|
| + int frame_state_count() const { return descriptor->FrameStateCount(); }
|
|
|
| - int fixed_and_control_count() { return fixed_count + control_count(); }
|
| + int frame_state_value_count() const {
|
| + return (frame_state_descriptor == NULL)
|
| + ? 0
|
| + : (frame_state_descriptor->size() + 1);
|
| + }
|
| +
|
| + int control_count() const {
|
| + return descriptor->CanLazilyDeoptimize() ? 2 : 0;
|
| + }
|
| };
|
|
|
| } // namespace compiler
|
|
|