| Index: src/code-stubs-hydrogen.cc
|
| diff --git a/src/code-stubs-hydrogen.cc b/src/code-stubs-hydrogen.cc
|
| index da9ec6a141138688a1d08193910359f72c34b98e..74bd93f8805b768fbcb9806d2da04f754c80dfff 100644
|
| --- a/src/code-stubs-hydrogen.cc
|
| +++ b/src/code-stubs-hydrogen.cc
|
| @@ -78,18 +78,16 @@ bool CodeStubGraphBuilderBase::BuildGraph() {
|
| set_current_block(next_block);
|
|
|
| int major_key = stub()->MajorKey();
|
| - CodeStubInterfaceDescriptor** descriptors =
|
| - info_.isolate()->code_stub_interface_descriptors();
|
| - if (descriptors[major_key] == NULL) {
|
| - descriptors[major_key] = stub()->GetInterfaceDescriptor(info_.isolate());
|
| + CodeStubInterfaceDescriptor* descriptor =
|
| + info_.isolate()->code_stub_interface_descriptor(major_key);
|
| + if (descriptor->register_param_count_ < 0) {
|
| + stub()->InitializeInterfaceDescriptor(info_.isolate(), descriptor);
|
| }
|
| -
|
| - CodeStubInterfaceDescriptor* descriptor = descriptors[major_key];
|
| - parameters_.Reset(new HParameter*[descriptor->number_of_register_params]);
|
| + parameters_.Reset(new HParameter*[descriptor->register_param_count_]);
|
|
|
| HGraph* graph = this->graph();
|
| Zone* zone = this->zone();
|
| - for (int i = 0; i < descriptor->number_of_register_params; ++i) {
|
| + for (int i = 0; i < descriptor->register_param_count_; ++i) {
|
| HParameter* param = new(zone) HParameter(i);
|
| AddInstruction(param);
|
| graph->start_environment()->Push(param);
|
|
|