OLD | NEW |
1 // Copyright 2014 the V8 project authors. All rights reserved. | 1 // Copyright 2014 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/code-stubs.h" | 7 #include "src/code-stubs.h" |
8 #include "src/api-arguments.h" | 8 #include "src/api-arguments.h" |
9 #include "src/base/bits.h" | 9 #include "src/base/bits.h" |
10 #include "src/bootstrapper.h" | 10 #include "src/bootstrapper.h" |
(...skipping 3005 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3016 __ LoadP(r3, MemOperand(fp, parameter_count_offset)); | 3016 __ LoadP(r3, MemOperand(fp, parameter_count_offset)); |
3017 if (function_mode() == JS_FUNCTION_STUB_MODE) { | 3017 if (function_mode() == JS_FUNCTION_STUB_MODE) { |
3018 __ AddP(r3, Operand(1)); | 3018 __ AddP(r3, Operand(1)); |
3019 } | 3019 } |
3020 masm->LeaveFrame(StackFrame::STUB_FAILURE_TRAMPOLINE); | 3020 masm->LeaveFrame(StackFrame::STUB_FAILURE_TRAMPOLINE); |
3021 __ ShiftLeftP(r3, r3, Operand(kPointerSizeLog2)); | 3021 __ ShiftLeftP(r3, r3, Operand(kPointerSizeLog2)); |
3022 __ la(sp, MemOperand(r3, sp)); | 3022 __ la(sp, MemOperand(r3, sp)); |
3023 __ Ret(); | 3023 __ Ret(); |
3024 } | 3024 } |
3025 | 3025 |
3026 void CallICTrampolineStub::Generate(MacroAssembler* masm) { | |
3027 __ EmitLoadTypeFeedbackVector(r4); | |
3028 CallICStub stub(isolate(), state()); | |
3029 __ Jump(stub.GetCode(), RelocInfo::CODE_TARGET); | |
3030 } | |
3031 | |
3032 void ProfileEntryHookStub::MaybeCallEntryHook(MacroAssembler* masm) { | 3026 void ProfileEntryHookStub::MaybeCallEntryHook(MacroAssembler* masm) { |
3033 if (masm->isolate()->function_entry_hook() != NULL) { | 3027 if (masm->isolate()->function_entry_hook() != NULL) { |
3034 PredictableCodeSizeScope predictable(masm, | 3028 PredictableCodeSizeScope predictable(masm, |
3035 #if V8_TARGET_ARCH_S390X | 3029 #if V8_TARGET_ARCH_S390X |
3036 40); | 3030 40); |
3037 #elif V8_HOST_ARCH_S390 | 3031 #elif V8_HOST_ARCH_S390 |
3038 36); | 3032 36); |
3039 #else | 3033 #else |
3040 32); | 3034 32); |
3041 #endif | 3035 #endif |
(...skipping 1239 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
4281 CallApiFunctionAndReturn(masm, api_function_address, thunk_ref, | 4275 CallApiFunctionAndReturn(masm, api_function_address, thunk_ref, |
4282 kStackUnwindSpace, NULL, return_value_operand, NULL); | 4276 kStackUnwindSpace, NULL, return_value_operand, NULL); |
4283 } | 4277 } |
4284 | 4278 |
4285 #undef __ | 4279 #undef __ |
4286 | 4280 |
4287 } // namespace internal | 4281 } // namespace internal |
4288 } // namespace v8 | 4282 } // namespace v8 |
4289 | 4283 |
4290 #endif // V8_TARGET_ARCH_S390 | 4284 #endif // V8_TARGET_ARCH_S390 |
OLD | NEW |