| 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 |