OLD | NEW |
1 // Copyright 2015 the V8 project authors. All rights reserved. | 1 // Copyright 2015 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_S390 | 5 #if V8_TARGET_ARCH_S390 |
6 | 6 |
7 #include "src/ast/scopes.h" | 7 #include "src/ast/scopes.h" |
8 #include "src/code-factory.h" | 8 #include "src/code-factory.h" |
9 #include "src/code-stubs.h" | 9 #include "src/code-stubs.h" |
10 #include "src/codegen.h" | 10 #include "src/codegen.h" |
(...skipping 2561 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2572 | 2572 |
2573 // Push the arguments. | 2573 // Push the arguments. |
2574 for (int i = 0; i < arg_count; i++) { | 2574 for (int i = 0; i < arg_count; i++) { |
2575 VisitForStackValue(args->at(i)); | 2575 VisitForStackValue(args->at(i)); |
2576 } | 2576 } |
2577 | 2577 |
2578 // Push a copy of the function (found below the arguments) and | 2578 // Push a copy of the function (found below the arguments) and |
2579 // resolve eval. | 2579 // resolve eval. |
2580 __ LoadP(r3, MemOperand(sp, (arg_count + 1) * kPointerSize), r0); | 2580 __ LoadP(r3, MemOperand(sp, (arg_count + 1) * kPointerSize), r0); |
2581 __ push(r3); | 2581 __ push(r3); |
2582 EmitResolvePossiblyDirectEval(arg_count); | 2582 EmitResolvePossiblyDirectEval(expr); |
2583 | 2583 |
2584 // Touch up the stack with the resolved function. | 2584 // Touch up the stack with the resolved function. |
2585 __ StoreP(r2, MemOperand(sp, (arg_count + 1) * kPointerSize), r0); | 2585 __ StoreP(r2, MemOperand(sp, (arg_count + 1) * kPointerSize), r0); |
2586 | 2586 |
2587 PrepareForBailoutForId(expr->EvalId(), NO_REGISTERS); | 2587 PrepareForBailoutForId(expr->EvalId(), NO_REGISTERS); |
2588 | 2588 |
2589 // Record source position for debugger. | 2589 // Record source position for debugger. |
2590 SetCallPosition(expr); | 2590 SetCallPosition(expr); |
2591 __ LoadP(r3, MemOperand(sp, (arg_count + 1) * kPointerSize), r0); | 2591 __ LoadP(r3, MemOperand(sp, (arg_count + 1) * kPointerSize), r0); |
2592 __ mov(r2, Operand(arg_count)); | 2592 __ mov(r2, Operand(arg_count)); |
(...skipping 1277 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3870 DCHECK(kOSRBranchInstruction == br_instr); | 3870 DCHECK(kOSRBranchInstruction == br_instr); |
3871 | 3871 |
3872 DCHECK(interrupt_address == | 3872 DCHECK(interrupt_address == |
3873 isolate->builtins()->OnStackReplacement()->entry()); | 3873 isolate->builtins()->OnStackReplacement()->entry()); |
3874 return ON_STACK_REPLACEMENT; | 3874 return ON_STACK_REPLACEMENT; |
3875 } | 3875 } |
3876 | 3876 |
3877 } // namespace internal | 3877 } // namespace internal |
3878 } // namespace v8 | 3878 } // namespace v8 |
3879 #endif // V8_TARGET_ARCH_S390 | 3879 #endif // V8_TARGET_ARCH_S390 |
OLD | NEW |