OLD | NEW |
1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 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 #ifndef V8_MIPS_MACRO_ASSEMBLER_MIPS_H_ | 5 #ifndef V8_MIPS_MACRO_ASSEMBLER_MIPS_H_ |
6 #define V8_MIPS_MACRO_ASSEMBLER_MIPS_H_ | 6 #define V8_MIPS_MACRO_ASSEMBLER_MIPS_H_ |
7 | 7 |
8 #include "src/assembler.h" | 8 #include "src/assembler.h" |
9 #include "src/globals.h" | 9 #include "src/globals.h" |
10 #include "src/mips/assembler-mips.h" | 10 #include "src/mips/assembler-mips.h" |
(...skipping 791 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
802 // register dst. | 802 // register dst. |
803 void StoreToSafepointRegisterSlot(Register src, Register dst); | 803 void StoreToSafepointRegisterSlot(Register src, Register dst); |
804 // Load the value of the src register from its safepoint stack slot | 804 // Load the value of the src register from its safepoint stack slot |
805 // into register dst. | 805 // into register dst. |
806 void LoadFromSafepointRegisterSlot(Register dst, Register src); | 806 void LoadFromSafepointRegisterSlot(Register dst, Register src); |
807 | 807 |
808 // MIPS32 R2 instruction macro. | 808 // MIPS32 R2 instruction macro. |
809 void Ins(Register rt, Register rs, uint16_t pos, uint16_t size); | 809 void Ins(Register rt, Register rs, uint16_t pos, uint16_t size); |
810 void Ext(Register rt, Register rs, uint16_t pos, uint16_t size); | 810 void Ext(Register rt, Register rs, uint16_t pos, uint16_t size); |
811 | 811 |
| 812 // Int64Lowering instructions |
| 813 void AddPair(Register dst_low, Register dst_high, Register left_low, |
| 814 Register left_high, Register right_low, Register right_high); |
| 815 |
| 816 void SubPair(Register dst_low, Register dst_high, Register left_low, |
| 817 Register left_high, Register right_low, Register right_high); |
| 818 |
| 819 void ShlPair(Register dst_low, Register dst_high, Register src_low, |
| 820 Register src_high, Register shift); |
| 821 |
| 822 void ShlPair(Register dst_low, Register dst_high, Register src_low, |
| 823 Register src_high, uint32_t shift); |
| 824 |
| 825 void ShrPair(Register dst_low, Register dst_high, Register src_low, |
| 826 Register src_high, Register shift); |
| 827 |
| 828 void ShrPair(Register dst_low, Register dst_high, Register src_low, |
| 829 Register src_high, uint32_t shift); |
| 830 |
| 831 void SarPair(Register dst_low, Register dst_high, Register src_low, |
| 832 Register src_high, Register shift); |
| 833 |
| 834 void SarPair(Register dst_low, Register dst_high, Register src_low, |
| 835 Register src_high, uint32_t shift); |
| 836 |
812 // --------------------------------------------------------------------------- | 837 // --------------------------------------------------------------------------- |
813 // FPU macros. These do not handle special cases like NaN or +- inf. | 838 // FPU macros. These do not handle special cases like NaN or +- inf. |
814 | 839 |
815 // Convert unsigned word to double. | 840 // Convert unsigned word to double. |
816 void Cvt_d_uw(FPURegister fd, Register rs, FPURegister scratch); | 841 void Cvt_d_uw(FPURegister fd, Register rs, FPURegister scratch); |
817 | 842 |
818 // Convert single to unsigned word. | 843 // Convert single to unsigned word. |
819 void Trunc_uw_s(FPURegister fd, FPURegister fs, FPURegister scratch); | 844 void Trunc_uw_s(FPURegister fd, FPURegister fs, FPURegister scratch); |
820 void Trunc_uw_s(FPURegister fd, Register rs, FPURegister scratch); | 845 void Trunc_uw_s(FPURegister fd, Register rs, FPURegister scratch); |
821 | 846 |
(...skipping 1022 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1844 #define __FILE_LINE__ __FILE__ ":" CODE_COVERAGE_TOSTRING(__LINE__) | 1869 #define __FILE_LINE__ __FILE__ ":" CODE_COVERAGE_TOSTRING(__LINE__) |
1845 #define ACCESS_MASM(masm) masm->stop(__FILE_LINE__); masm-> | 1870 #define ACCESS_MASM(masm) masm->stop(__FILE_LINE__); masm-> |
1846 #else | 1871 #else |
1847 #define ACCESS_MASM(masm) masm-> | 1872 #define ACCESS_MASM(masm) masm-> |
1848 #endif | 1873 #endif |
1849 | 1874 |
1850 } // namespace internal | 1875 } // namespace internal |
1851 } // namespace v8 | 1876 } // namespace v8 |
1852 | 1877 |
1853 #endif // V8_MIPS_MACRO_ASSEMBLER_MIPS_H_ | 1878 #endif // V8_MIPS_MACRO_ASSEMBLER_MIPS_H_ |
OLD | NEW |