Chromium Code Reviews| 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..e730866982c671c73b2175ff00a3bc2f3febdf93 100644 |
| --- a/src/compiler/instruction-selector-impl.h |
| +++ b/src/compiler/instruction-selector-impl.h |
| @@ -346,22 +346,27 @@ 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; |
| + std::vector<Node*> output_nodes; |
|
Benedikt Meurer
2014/08/21 08:19:29
Can we allocate in the Zone instead? I.e. use zone
Jarin
2014/08/21 09:54:42
Done.
|
| + std::vector<InstructionOperand*> outputs; |
| + std::vector<InstructionOperand*> instruction_args; |
| + std::vector<Node*> pushed_nodes; |
| int input_count() { return descriptor->InputCount(); } |
|
Benedikt Meurer
2014/08/21 08:19:29
const
Jarin
2014/08/21 09:54:41
Done.
|
| - int control_count() { return descriptor->CanLazilyDeoptimize() ? 2 : 0; } |
| + int frame_state_count() { return descriptor->FrameStateCount(); } |
|
Benedikt Meurer
2014/08/21 08:19:29
const
Jarin
2014/08/21 09:54:42
Done.
|
| + |
| + int frame_state_value_count() { |
|
Benedikt Meurer
2014/08/21 08:19:29
const
Jarin
2014/08/21 09:54:41
Done.
|
| + return (frame_state_descriptor == NULL) |
| + ? 0 |
| + : (frame_state_descriptor->size() + 1); |
| + } |
| - int fixed_and_control_count() { return fixed_count + control_count(); } |
| + int control_count() { return descriptor->CanLazilyDeoptimize() ? 2 : 0; } |
| }; |
| } // namespace compiler |