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 643 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
654 Register scratch = at); | 654 Register scratch = at); |
655 | 655 |
656 void Pref(int32_t hint, const MemOperand& rs); | 656 void Pref(int32_t hint, const MemOperand& rs); |
657 | 657 |
658 | 658 |
659 // --------------------------------------------------------------------------- | 659 // --------------------------------------------------------------------------- |
660 // Pseudo-instructions. | 660 // Pseudo-instructions. |
661 | 661 |
662 void mov(Register rd, Register rt) { or_(rd, rt, zero_reg); } | 662 void mov(Register rd, Register rt) { or_(rd, rt, zero_reg); } |
663 | 663 |
| 664 void Ulh(Register rd, const MemOperand& rs); |
| 665 void Ulhu(Register rd, const MemOperand& rs); |
| 666 void Ush(Register rd, const MemOperand& rs, Register scratch); |
| 667 |
664 void Ulw(Register rd, const MemOperand& rs); | 668 void Ulw(Register rd, const MemOperand& rs); |
665 void Usw(Register rd, const MemOperand& rs); | 669 void Usw(Register rd, const MemOperand& rs); |
666 | 670 |
| 671 void Ulwc1(FPURegister fd, const MemOperand& rs, Register scratch); |
| 672 void Uswc1(FPURegister fd, const MemOperand& rs, Register scratch); |
| 673 |
| 674 void Uldc1(FPURegister fd, const MemOperand& rs, Register scratch); |
| 675 void Usdc1(FPURegister fd, const MemOperand& rs, Register scratch); |
| 676 |
667 // Load int32 in the rd register. | 677 // Load int32 in the rd register. |
668 void li(Register rd, Operand j, LiFlags mode = OPTIMIZE_SIZE); | 678 void li(Register rd, Operand j, LiFlags mode = OPTIMIZE_SIZE); |
669 inline void li(Register rd, int32_t j, LiFlags mode = OPTIMIZE_SIZE) { | 679 inline void li(Register rd, int32_t j, LiFlags mode = OPTIMIZE_SIZE) { |
670 li(rd, Operand(j), mode); | 680 li(rd, Operand(j), mode); |
671 } | 681 } |
672 void li(Register dst, Handle<Object> value, LiFlags mode = OPTIMIZE_SIZE); | 682 void li(Register dst, Handle<Object> value, LiFlags mode = OPTIMIZE_SIZE); |
673 | 683 |
674 // Push multiple registers on the stack. | 684 // Push multiple registers on the stack. |
675 // Registers are saved in numerical order, with higher numbered registers | 685 // Registers are saved in numerical order, with higher numbered registers |
676 // saved in higher memory addresses. | 686 // saved in higher memory addresses. |
(...skipping 1143 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1820 #define __FILE_LINE__ __FILE__ ":" CODE_COVERAGE_TOSTRING(__LINE__) | 1830 #define __FILE_LINE__ __FILE__ ":" CODE_COVERAGE_TOSTRING(__LINE__) |
1821 #define ACCESS_MASM(masm) masm->stop(__FILE_LINE__); masm-> | 1831 #define ACCESS_MASM(masm) masm->stop(__FILE_LINE__); masm-> |
1822 #else | 1832 #else |
1823 #define ACCESS_MASM(masm) masm-> | 1833 #define ACCESS_MASM(masm) masm-> |
1824 #endif | 1834 #endif |
1825 | 1835 |
1826 } // namespace internal | 1836 } // namespace internal |
1827 } // namespace v8 | 1837 } // namespace v8 |
1828 | 1838 |
1829 #endif // V8_MIPS_MACRO_ASSEMBLER_MIPS_H_ | 1839 #endif // V8_MIPS_MACRO_ASSEMBLER_MIPS_H_ |
OLD | NEW |