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 1263 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1274 CHECK(r5.is(RegExpExecDescriptor::StringEndRegister())); | 1274 CHECK(r5.is(RegExpExecDescriptor::StringEndRegister())); |
1275 CHECK(r4.is(RegExpExecDescriptor::StringStartRegister())); | 1275 CHECK(r4.is(RegExpExecDescriptor::StringStartRegister())); |
1276 | 1276 |
1277 // Argument 2 (r3): Previous index. | 1277 // Argument 2 (r3): Previous index. |
1278 CHECK(r3.is(RegExpExecDescriptor::LastIndexRegister())); | 1278 CHECK(r3.is(RegExpExecDescriptor::LastIndexRegister())); |
1279 | 1279 |
1280 // Argument 1 (r2): Subject string. | 1280 // Argument 1 (r2): Subject string. |
1281 CHECK(r2.is(RegExpExecDescriptor::StringRegister())); | 1281 CHECK(r2.is(RegExpExecDescriptor::StringRegister())); |
1282 | 1282 |
1283 // Locate the code entry and call it. | 1283 // Locate the code entry and call it. |
1284 Register code_reg = RegExpDescriptor::CodeRegister(); | 1284 Register code_reg = RegExpExecDescriptor::CodeRegister(); |
1285 __ AddP(code_reg, Operand(Code::kHeaderSize - kHeapObjectTag)); | 1285 __ AddP(code_reg, Operand(Code::kHeaderSize - kHeapObjectTag)); |
1286 | 1286 |
1287 DirectCEntryStub stub(isolate()); | 1287 DirectCEntryStub stub(isolate()); |
1288 stub.GenerateCall(masm, code_reg); | 1288 stub.GenerateCall(masm, code_reg); |
1289 | 1289 |
1290 __ LeaveExitFrame(false, no_reg, true); | 1290 __ LeaveExitFrame(false, no_reg, true); |
1291 | 1291 |
1292 // Return the smi-tagged result. | 1292 // Return the smi-tagged result. |
1293 __ SmiTag(r2); | 1293 __ SmiTag(r2); |
1294 __ Ret(); | 1294 __ Ret(); |
(...skipping 1828 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3123 CallApiFunctionAndReturn(masm, api_function_address, thunk_ref, | 3123 CallApiFunctionAndReturn(masm, api_function_address, thunk_ref, |
3124 kStackUnwindSpace, NULL, return_value_operand, NULL); | 3124 kStackUnwindSpace, NULL, return_value_operand, NULL); |
3125 } | 3125 } |
3126 | 3126 |
3127 #undef __ | 3127 #undef __ |
3128 | 3128 |
3129 } // namespace internal | 3129 } // namespace internal |
3130 } // namespace v8 | 3130 } // namespace v8 |
3131 | 3131 |
3132 #endif // V8_TARGET_ARCH_S390 | 3132 #endif // V8_TARGET_ARCH_S390 |
OLD | NEW |