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