| 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 5682 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 5693 set_register(r11, callee_saved_value + 11); | 5693 set_register(r11, callee_saved_value + 11); |
| 5694 set_register(r12, callee_saved_value + 12); | 5694 set_register(r12, callee_saved_value + 12); |
| 5695 set_register(r13, callee_saved_value + 13); | 5695 set_register(r13, callee_saved_value + 13); |
| 5696 | 5696 |
| 5697 // Start the simulation | 5697 // Start the simulation |
| 5698 Execute(); | 5698 Execute(); |
| 5699 | 5699 |
| 5700 // Check that the non-volatile registers have been preserved. | 5700 // Check that the non-volatile registers have been preserved. |
| 5701 #ifndef V8_TARGET_ARCH_S390X | 5701 #ifndef V8_TARGET_ARCH_S390X |
| 5702 if (reg_arg_count < 5) { | 5702 if (reg_arg_count < 5) { |
| 5703 DCHECK_EQ(callee_saved_value + 6, get_low_register<int32_t>(r6)); | 5703 DCHECK_EQ(callee_saved_value + 6, get_low_register<uint32_t>(r6)); |
| 5704 } | 5704 } |
| 5705 DCHECK_EQ(callee_saved_value + 7, get_low_register<int32_t>(r7)); | 5705 DCHECK_EQ(callee_saved_value + 7, get_low_register<uint32_t>(r7)); |
| 5706 DCHECK_EQ(callee_saved_value + 8, get_low_register<int32_t>(r8)); | 5706 DCHECK_EQ(callee_saved_value + 8, get_low_register<uint32_t>(r8)); |
| 5707 DCHECK_EQ(callee_saved_value + 9, get_low_register<int32_t>(r9)); | 5707 DCHECK_EQ(callee_saved_value + 9, get_low_register<uint32_t>(r9)); |
| 5708 DCHECK_EQ(callee_saved_value + 10, get_low_register<int32_t>(r10)); | 5708 DCHECK_EQ(callee_saved_value + 10, get_low_register<uint32_t>(r10)); |
| 5709 DCHECK_EQ(callee_saved_value + 11, get_low_register<int32_t>(r11)); | 5709 DCHECK_EQ(callee_saved_value + 11, get_low_register<uint32_t>(r11)); |
| 5710 DCHECK_EQ(callee_saved_value + 12, get_low_register<int32_t>(r12)); | 5710 DCHECK_EQ(callee_saved_value + 12, get_low_register<uint32_t>(r12)); |
| 5711 DCHECK_EQ(callee_saved_value + 13, get_low_register<int32_t>(r13)); | 5711 DCHECK_EQ(callee_saved_value + 13, get_low_register<uint32_t>(r13)); |
| 5712 #else | 5712 #else |
| 5713 if (reg_arg_count < 5) { | 5713 if (reg_arg_count < 5) { |
| 5714 DCHECK_EQ(callee_saved_value + 6, get_register(r6)); | 5714 DCHECK_EQ(callee_saved_value + 6, get_register(r6)); |
| 5715 } | 5715 } |
| 5716 DCHECK_EQ(callee_saved_value + 7, get_register(r7)); | 5716 DCHECK_EQ(callee_saved_value + 7, get_register(r7)); |
| 5717 DCHECK_EQ(callee_saved_value + 8, get_register(r8)); | 5717 DCHECK_EQ(callee_saved_value + 8, get_register(r8)); |
| 5718 DCHECK_EQ(callee_saved_value + 9, get_register(r9)); | 5718 DCHECK_EQ(callee_saved_value + 9, get_register(r9)); |
| 5719 DCHECK_EQ(callee_saved_value + 10, get_register(r10)); | 5719 DCHECK_EQ(callee_saved_value + 10, get_register(r10)); |
| 5720 DCHECK_EQ(callee_saved_value + 11, get_register(r11)); | 5720 DCHECK_EQ(callee_saved_value + 11, get_register(r11)); |
| 5721 DCHECK_EQ(callee_saved_value + 12, get_register(r12)); | 5721 DCHECK_EQ(callee_saved_value + 12, get_register(r12)); |
| (...skipping 87 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 5809 set_register(r11, callee_saved_value + 11); | 5809 set_register(r11, callee_saved_value + 11); |
| 5810 set_register(r12, callee_saved_value + 12); | 5810 set_register(r12, callee_saved_value + 12); |
| 5811 set_register(r13, callee_saved_value + 13); | 5811 set_register(r13, callee_saved_value + 13); |
| 5812 | 5812 |
| 5813 // Start the simulation | 5813 // Start the simulation |
| 5814 Execute(); | 5814 Execute(); |
| 5815 | 5815 |
| 5816 // Check that the non-volatile registers have been preserved. | 5816 // Check that the non-volatile registers have been preserved. |
| 5817 #ifndef V8_TARGET_ARCH_S390X | 5817 #ifndef V8_TARGET_ARCH_S390X |
| 5818 if (reg_arg_count < 5) { | 5818 if (reg_arg_count < 5) { |
| 5819 DCHECK_EQ(callee_saved_value + 6, get_low_register<int32_t>(r6)); | 5819 DCHECK_EQ(callee_saved_value + 6, get_low_register<uint32_t>(r6)); |
| 5820 } | 5820 } |
| 5821 DCHECK_EQ(callee_saved_value + 7, get_low_register<int32_t>(r7)); | 5821 DCHECK_EQ(callee_saved_value + 7, get_low_register<uint32_t>(r7)); |
| 5822 DCHECK_EQ(callee_saved_value + 8, get_low_register<int32_t>(r8)); | 5822 DCHECK_EQ(callee_saved_value + 8, get_low_register<uint32_t>(r8)); |
| 5823 DCHECK_EQ(callee_saved_value + 9, get_low_register<int32_t>(r9)); | 5823 DCHECK_EQ(callee_saved_value + 9, get_low_register<uint32_t>(r9)); |
| 5824 DCHECK_EQ(callee_saved_value + 10, get_low_register<int32_t>(r10)); | 5824 DCHECK_EQ(callee_saved_value + 10, get_low_register<uint32_t>(r10)); |
| 5825 DCHECK_EQ(callee_saved_value + 11, get_low_register<int32_t>(r11)); | 5825 DCHECK_EQ(callee_saved_value + 11, get_low_register<uint32_t>(r11)); |
| 5826 DCHECK_EQ(callee_saved_value + 12, get_low_register<int32_t>(r12)); | 5826 DCHECK_EQ(callee_saved_value + 12, get_low_register<uint32_t>(r12)); |
| 5827 DCHECK_EQ(callee_saved_value + 13, get_low_register<int32_t>(r13)); | 5827 DCHECK_EQ(callee_saved_value + 13, get_low_register<uint32_t>(r13)); |
| 5828 #else | 5828 #else |
| 5829 if (reg_arg_count < 5) { | 5829 if (reg_arg_count < 5) { |
| 5830 DCHECK_EQ(callee_saved_value + 6, get_register(r6)); | 5830 DCHECK_EQ(callee_saved_value + 6, get_register(r6)); |
| 5831 } | 5831 } |
| 5832 DCHECK_EQ(callee_saved_value + 7, get_register(r7)); | 5832 DCHECK_EQ(callee_saved_value + 7, get_register(r7)); |
| 5833 DCHECK_EQ(callee_saved_value + 8, get_register(r8)); | 5833 DCHECK_EQ(callee_saved_value + 8, get_register(r8)); |
| 5834 DCHECK_EQ(callee_saved_value + 9, get_register(r9)); | 5834 DCHECK_EQ(callee_saved_value + 9, get_register(r9)); |
| 5835 DCHECK_EQ(callee_saved_value + 10, get_register(r10)); | 5835 DCHECK_EQ(callee_saved_value + 10, get_register(r10)); |
| 5836 DCHECK_EQ(callee_saved_value + 11, get_register(r11)); | 5836 DCHECK_EQ(callee_saved_value + 11, get_register(r11)); |
| 5837 DCHECK_EQ(callee_saved_value + 12, get_register(r12)); | 5837 DCHECK_EQ(callee_saved_value + 12, get_register(r12)); |
| 5838 DCHECK_EQ(callee_saved_value + 13, get_register(r13)); | 5838 DCHECK_EQ(callee_saved_value + 13, get_register(r13)); |
| 5839 #endif | 5839 #endif |
| 5840 | 5840 |
| 5841 // Restore non-volatile registers with the original value. | 5841 // Restore non-volatile registers with the original value. |
| 5842 set_register(r6, r6_val); | 5842 set_register(r6, r6_val); |
| 5843 set_register(r7, r7_val); | 5843 set_register(r7, r7_val); |
| 5844 set_register(r8, r8_val); | 5844 set_register(r8, r8_val); |
| 5845 set_register(r9, r9_val); | 5845 set_register(r9, r9_val); |
| 5846 set_register(r10, r10_val); | 5846 set_register(r10, r10_val); |
| 5847 set_register(r11, r11_val); | 5847 set_register(r11, r11_val); |
| 5848 set_register(r12, r12_val); | 5848 set_register(r12, r12_val); |
| 5849 set_register(r13, r13_val); | 5849 set_register(r13, r13_val); |
| 5850 // Pop stack passed arguments. | 5850 // Pop stack passed arguments. |
| 5851 | 5851 |
| 5852 #ifndef V8_TARGET_ARCH_S390X | 5852 #ifndef V8_TARGET_ARCH_S390X |
| 5853 DCHECK_EQ(entry_stack, get_low_register<int32_t>(sp)); | 5853 DCHECK_EQ(entry_stack, get_low_register<uint32_t>(sp)); |
| 5854 #else | 5854 #else |
| 5855 DCHECK_EQ(entry_stack, get_register(sp)); | 5855 DCHECK_EQ(entry_stack, get_register(sp)); |
| 5856 #endif | 5856 #endif |
| 5857 set_register(sp, original_stack); | 5857 set_register(sp, original_stack); |
| 5858 | 5858 |
| 5859 // Return value register | 5859 // Return value register |
| 5860 intptr_t result = get_register(r2); | 5860 intptr_t result = get_register(r2); |
| 5861 return result; | 5861 return result; |
| 5862 } | 5862 } |
| 5863 | 5863 |
| (...skipping 6773 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 12637 return 0; | 12637 return 0; |
| 12638 } | 12638 } |
| 12639 | 12639 |
| 12640 #undef EVALUATE | 12640 #undef EVALUATE |
| 12641 | 12641 |
| 12642 } // namespace internal | 12642 } // namespace internal |
| 12643 } // namespace v8 | 12643 } // namespace v8 |
| 12644 | 12644 |
| 12645 #endif // USE_SIMULATOR | 12645 #endif // USE_SIMULATOR |
| 12646 #endif // V8_TARGET_ARCH_S390 | 12646 #endif // V8_TARGET_ARCH_S390 |
| OLD | NEW |