| Index: src/full-codegen/ia32/full-codegen-ia32.cc
|
| diff --git a/src/full-codegen/ia32/full-codegen-ia32.cc b/src/full-codegen/ia32/full-codegen-ia32.cc
|
| index 40a3753aaaaf67c2d418fccf90878adb5d28e66b..9051fcc81dfe8dba2366d10a4afe649739928952 100644
|
| --- a/src/full-codegen/ia32/full-codegen-ia32.cc
|
| +++ b/src/full-codegen/ia32/full-codegen-ia32.cc
|
| @@ -196,7 +196,8 @@ void FullCodeGenerator::Generate() {
|
| int num_parameters = info->scope()->num_parameters();
|
| int first_parameter = info->scope()->has_this_declaration() ? -1 : 0;
|
| for (int i = first_parameter; i < num_parameters; i++) {
|
| - Variable* var = (i == -1) ? scope()->receiver() : scope()->parameter(i);
|
| + Variable* var =
|
| + (i == -1) ? info->scope()->receiver() : info->scope()->parameter(i);
|
| if (var->IsContextSlot()) {
|
| int parameter_offset = StandardFrameConstants::kCallerSPOffset +
|
| (num_parameters - 1 - i) * kPointerSize;
|
| @@ -230,7 +231,7 @@ void FullCodeGenerator::Generate() {
|
|
|
| // Possibly set up a local binding to the this function which is used in
|
| // derived constructors with super calls.
|
| - Variable* this_function_var = scope()->this_function_var();
|
| + Variable* this_function_var = info->scope()->this_function_var();
|
| if (this_function_var != nullptr) {
|
| Comment cmnt(masm_, "[ This function");
|
| if (!function_in_register) {
|
| @@ -241,7 +242,7 @@ void FullCodeGenerator::Generate() {
|
| }
|
|
|
| // Possibly set up a local binding to the new target value.
|
| - Variable* new_target_var = scope()->new_target_var();
|
| + Variable* new_target_var = info->scope()->new_target_var();
|
| if (new_target_var != nullptr) {
|
| Comment cmnt(masm_, "[ new.target");
|
| SetVar(new_target_var, edx, ebx, ecx);
|
| @@ -249,7 +250,7 @@ void FullCodeGenerator::Generate() {
|
|
|
| // Possibly allocate RestParameters
|
| int rest_index;
|
| - Variable* rest_param = scope()->rest_parameter(&rest_index);
|
| + Variable* rest_param = info->scope()->rest_parameter(&rest_index);
|
| if (rest_param) {
|
| Comment cmnt(masm_, "[ Allocate rest parameter array");
|
| if (!function_in_register) {
|
| @@ -261,7 +262,7 @@ void FullCodeGenerator::Generate() {
|
| SetVar(rest_param, eax, ebx, edx);
|
| }
|
|
|
| - Variable* arguments = scope()->arguments();
|
| + Variable* arguments = info->scope()->arguments();
|
| if (arguments != NULL) {
|
| // Arguments object must be allocated after the context object, in
|
| // case the "arguments" or ".arguments" variables are in the context.
|
| @@ -292,7 +293,7 @@ void FullCodeGenerator::Generate() {
|
| BailoutState::NO_REGISTERS);
|
| {
|
| Comment cmnt(masm_, "[ Declarations");
|
| - VisitDeclarations(scope()->declarations());
|
| + VisitDeclarations(info->scope()->declarations());
|
| }
|
|
|
| // Assert that the declarations do not use ICs. Otherwise the debugger
|
| @@ -3525,7 +3526,7 @@ void FullCodeGenerator::LoadContextField(Register dst, int context_index) {
|
|
|
|
|
| void FullCodeGenerator::PushFunctionArgumentForContextAllocation() {
|
| - Scope* closure_scope = scope()->ClosureScope();
|
| + DeclarationScope* closure_scope = scope()->GetClosureScope();
|
| if (closure_scope->is_script_scope() ||
|
| closure_scope->is_module_scope()) {
|
| // Contexts nested in the native context have a canonical empty function
|
|
|