| 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 #include <stdarg.h> | 5 #include <stdarg.h> |
| 6 #include <stdlib.h> | 6 #include <stdlib.h> |
| 7 #include <cmath> | 7 #include <cmath> |
| 8 | 8 |
| 9 #if V8_TARGET_ARCH_S390 | 9 #if V8_TARGET_ARCH_S390 |
| 10 | 10 |
| (...skipping 5638 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 5649 dbg.Debug(); | 5649 dbg.Debug(); |
| 5650 } else { | 5650 } else { |
| 5651 ExecuteInstruction(instr); | 5651 ExecuteInstruction(instr); |
| 5652 } | 5652 } |
| 5653 program_counter = get_pc(); | 5653 program_counter = get_pc(); |
| 5654 } | 5654 } |
| 5655 } | 5655 } |
| 5656 } | 5656 } |
| 5657 | 5657 |
| 5658 void Simulator::CallInternal(byte* entry, int reg_arg_count) { | 5658 void Simulator::CallInternal(byte* entry, int reg_arg_count) { |
| 5659 // Adjust JS-based stack limit to C-based stack limit. |
| 5660 isolate_->stack_guard()->AdjustStackLimitForSimulator(); |
| 5661 |
| 5659 // Prepare to execute the code at entry | 5662 // Prepare to execute the code at entry |
| 5660 if (ABI_USES_FUNCTION_DESCRIPTORS) { | 5663 if (ABI_USES_FUNCTION_DESCRIPTORS) { |
| 5661 // entry is the function descriptor | 5664 // entry is the function descriptor |
| 5662 set_pc(*(reinterpret_cast<intptr_t*>(entry))); | 5665 set_pc(*(reinterpret_cast<intptr_t*>(entry))); |
| 5663 } else { | 5666 } else { |
| 5664 // entry is the instruction address | 5667 // entry is the instruction address |
| 5665 set_pc(reinterpret_cast<intptr_t>(entry)); | 5668 set_pc(reinterpret_cast<intptr_t>(entry)); |
| 5666 } | 5669 } |
| 5667 // Remember the values of non-volatile registers. | 5670 // Remember the values of non-volatile registers. |
| 5668 int64_t r6_val = get_register(r6); | 5671 int64_t r6_val = get_register(r6); |
| (...skipping 62 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 5731 set_register(r7, r7_val); | 5734 set_register(r7, r7_val); |
| 5732 set_register(r8, r8_val); | 5735 set_register(r8, r8_val); |
| 5733 set_register(r9, r9_val); | 5736 set_register(r9, r9_val); |
| 5734 set_register(r10, r10_val); | 5737 set_register(r10, r10_val); |
| 5735 set_register(r11, r11_val); | 5738 set_register(r11, r11_val); |
| 5736 set_register(r12, r12_val); | 5739 set_register(r12, r12_val); |
| 5737 set_register(r13, r13_val); | 5740 set_register(r13, r13_val); |
| 5738 } | 5741 } |
| 5739 | 5742 |
| 5740 intptr_t Simulator::Call(byte* entry, int argument_count, ...) { | 5743 intptr_t Simulator::Call(byte* entry, int argument_count, ...) { |
| 5744 // Adjust JS-based stack limit to C-based stack limit. |
| 5745 isolate_->stack_guard()->AdjustStackLimitForSimulator(); |
| 5746 |
| 5741 // Remember the values of non-volatile registers. | 5747 // Remember the values of non-volatile registers. |
| 5742 int64_t r6_val = get_register(r6); | 5748 int64_t r6_val = get_register(r6); |
| 5743 int64_t r7_val = get_register(r7); | 5749 int64_t r7_val = get_register(r7); |
| 5744 int64_t r8_val = get_register(r8); | 5750 int64_t r8_val = get_register(r8); |
| 5745 int64_t r9_val = get_register(r9); | 5751 int64_t r9_val = get_register(r9); |
| 5746 int64_t r10_val = get_register(r10); | 5752 int64_t r10_val = get_register(r10); |
| 5747 int64_t r11_val = get_register(r11); | 5753 int64_t r11_val = get_register(r11); |
| 5748 int64_t r12_val = get_register(r12); | 5754 int64_t r12_val = get_register(r12); |
| 5749 int64_t r13_val = get_register(r13); | 5755 int64_t r13_val = get_register(r13); |
| 5750 | 5756 |
| (...skipping 6808 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 12559 return 0; | 12565 return 0; |
| 12560 } | 12566 } |
| 12561 | 12567 |
| 12562 #undef EVALUATE | 12568 #undef EVALUATE |
| 12563 | 12569 |
| 12564 } // namespace internal | 12570 } // namespace internal |
| 12565 } // namespace v8 | 12571 } // namespace v8 |
| 12566 | 12572 |
| 12567 #endif // USE_SIMULATOR | 12573 #endif // USE_SIMULATOR |
| 12568 #endif // V8_TARGET_ARCH_S390 | 12574 #endif // V8_TARGET_ARCH_S390 |
| OLD | NEW |