| OLD | NEW | 
|---|
| 1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 the V8 project authors. All rights reserved. | 
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be | 
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. | 
| 4 | 4 | 
| 5 #if V8_TARGET_ARCH_ARM | 5 #if V8_TARGET_ARCH_ARM | 
| 6 | 6 | 
| 7 #include "src/full-codegen/full-codegen.h" | 7 #include "src/full-codegen/full-codegen.h" | 
| 8 #include "src/ast/compile-time-value.h" | 8 #include "src/ast/compile-time-value.h" | 
| 9 #include "src/ast/scopes.h" | 9 #include "src/ast/scopes.h" | 
| 10 #include "src/code-factory.h" | 10 #include "src/code-factory.h" | 
| (...skipping 182 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 193       __ Push(info->scope()->scope_info()); | 193       __ Push(info->scope()->scope_info()); | 
| 194       __ CallRuntime(Runtime::kNewScriptContext); | 194       __ CallRuntime(Runtime::kNewScriptContext); | 
| 195       PrepareForBailoutForId(BailoutId::ScriptContext(), | 195       PrepareForBailoutForId(BailoutId::ScriptContext(), | 
| 196                              BailoutState::TOS_REGISTER); | 196                              BailoutState::TOS_REGISTER); | 
| 197       // The new target value is not used, clobbering is safe. | 197       // The new target value is not used, clobbering is safe. | 
| 198       DCHECK_NULL(info->scope()->new_target_var()); | 198       DCHECK_NULL(info->scope()->new_target_var()); | 
| 199     } else { | 199     } else { | 
| 200       if (info->scope()->new_target_var() != nullptr) { | 200       if (info->scope()->new_target_var() != nullptr) { | 
| 201         __ push(r3);  // Preserve new target. | 201         __ push(r3);  // Preserve new target. | 
| 202       } | 202       } | 
| 203       FastNewFunctionContextStub stub(isolate()); | 203       FastNewFunctionContextStub stub(isolate(), | 
|  | 204                                       info->scope()->is_eval_scope()); | 
| 204       __ mov(FastNewFunctionContextDescriptor::SlotsRegister(), Operand(slots)); | 205       __ mov(FastNewFunctionContextDescriptor::SlotsRegister(), Operand(slots)); | 
| 205       __ CallStub(&stub); | 206       __ CallStub(&stub); | 
| 206       // Result of FastNewFunctionContextStub is always in new space. | 207       // Result of FastNewFunctionContextStub is always in new space. | 
| 207       need_write_barrier = false; | 208       need_write_barrier = false; | 
| 208       if (info->scope()->new_target_var() != nullptr) { | 209       if (info->scope()->new_target_var() != nullptr) { | 
| 209         __ pop(r3);  // Preserve new target. | 210         __ pop(r3);  // Preserve new target. | 
| 210       } | 211       } | 
| 211     } | 212     } | 
| 212     function_in_register_r1 = false; | 213     function_in_register_r1 = false; | 
| 213     // Context is returned in r0.  It replaces the context passed to us. | 214     // Context is returned in r0.  It replaces the context passed to us. | 
| (...skipping 3479 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 3693   DCHECK(interrupt_address == | 3694   DCHECK(interrupt_address == | 
| 3694          isolate->builtins()->OnStackReplacement()->entry()); | 3695          isolate->builtins()->OnStackReplacement()->entry()); | 
| 3695   return ON_STACK_REPLACEMENT; | 3696   return ON_STACK_REPLACEMENT; | 
| 3696 } | 3697 } | 
| 3697 | 3698 | 
| 3698 | 3699 | 
| 3699 }  // namespace internal | 3700 }  // namespace internal | 
| 3700 }  // namespace v8 | 3701 }  // namespace v8 | 
| 3701 | 3702 | 
| 3702 #endif  // V8_TARGET_ARCH_ARM | 3703 #endif  // V8_TARGET_ARCH_ARM | 
| OLD | NEW | 
|---|