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 662 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
673 Register scratch = at); | 673 Register scratch = at); |
674 | 674 |
675 void Pref(int32_t hint, const MemOperand& rs); | 675 void Pref(int32_t hint, const MemOperand& rs); |
676 | 676 |
677 | 677 |
678 // --------------------------------------------------------------------------- | 678 // --------------------------------------------------------------------------- |
679 // Pseudo-instructions. | 679 // Pseudo-instructions. |
680 | 680 |
681 void mov(Register rd, Register rt) { or_(rd, rt, zero_reg); } | 681 void mov(Register rd, Register rt) { or_(rd, rt, zero_reg); } |
682 | 682 |
| 683 void Ulh(Register rd, const MemOperand& rs); |
| 684 void Ulhu(Register rd, const MemOperand& rs); |
| 685 void Ush(Register rd, const MemOperand& rs, Register scratch); |
| 686 |
683 void Ulw(Register rd, const MemOperand& rs); | 687 void Ulw(Register rd, const MemOperand& rs); |
684 void Usw(Register rd, const MemOperand& rs); | 688 void Usw(Register rd, const MemOperand& rs); |
685 | 689 |
| 690 void Ulwc1(FPURegister fd, const MemOperand& rs, Register scratch); |
| 691 void Uswc1(FPURegister fd, const MemOperand& rs, Register scratch); |
| 692 |
| 693 void Uldc1(FPURegister fd, const MemOperand& rs, Register scratch); |
| 694 void Usdc1(FPURegister fd, const MemOperand& rs, Register scratch); |
| 695 |
686 // Load int32 in the rd register. | 696 // Load int32 in the rd register. |
687 void li(Register rd, Operand j, LiFlags mode = OPTIMIZE_SIZE); | 697 void li(Register rd, Operand j, LiFlags mode = OPTIMIZE_SIZE); |
688 inline void li(Register rd, int32_t j, LiFlags mode = OPTIMIZE_SIZE) { | 698 inline void li(Register rd, int32_t j, LiFlags mode = OPTIMIZE_SIZE) { |
689 li(rd, Operand(j), mode); | 699 li(rd, Operand(j), mode); |
690 } | 700 } |
691 void li(Register dst, Handle<Object> value, LiFlags mode = OPTIMIZE_SIZE); | 701 void li(Register dst, Handle<Object> value, LiFlags mode = OPTIMIZE_SIZE); |
692 | 702 |
693 // Push multiple registers on the stack. | 703 // Push multiple registers on the stack. |
694 // Registers are saved in numerical order, with higher numbered registers | 704 // Registers are saved in numerical order, with higher numbered registers |
695 // saved in higher memory addresses. | 705 // saved in higher memory addresses. |
(...skipping 1172 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1868 #define __FILE_LINE__ __FILE__ ":" CODE_COVERAGE_TOSTRING(__LINE__) | 1878 #define __FILE_LINE__ __FILE__ ":" CODE_COVERAGE_TOSTRING(__LINE__) |
1869 #define ACCESS_MASM(masm) masm->stop(__FILE_LINE__); masm-> | 1879 #define ACCESS_MASM(masm) masm->stop(__FILE_LINE__); masm-> |
1870 #else | 1880 #else |
1871 #define ACCESS_MASM(masm) masm-> | 1881 #define ACCESS_MASM(masm) masm-> |
1872 #endif | 1882 #endif |
1873 | 1883 |
1874 } // namespace internal | 1884 } // namespace internal |
1875 } // namespace v8 | 1885 } // namespace v8 |
1876 | 1886 |
1877 #endif // V8_MIPS_MACRO_ASSEMBLER_MIPS_H_ | 1887 #endif // V8_MIPS_MACRO_ASSEMBLER_MIPS_H_ |
OLD | NEW |