| OLD | NEW |
| 1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file |
| 2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
| 3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
| 4 | 4 |
| 5 #ifndef VM_ASSEMBLER_MIPS_H_ | 5 #ifndef VM_ASSEMBLER_MIPS_H_ |
| 6 #define VM_ASSEMBLER_MIPS_H_ | 6 #define VM_ASSEMBLER_MIPS_H_ |
| 7 | 7 |
| 8 #ifndef VM_ASSEMBLER_H_ | 8 #ifndef VM_ASSEMBLER_H_ |
| 9 #error Do not include assembler_mips.h directly; use assembler.h instead. | 9 #error Do not include assembler_mips.h directly; use assembler.h instead. |
| 10 #endif | 10 #endif |
| (...skipping 423 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 434 } | 434 } |
| 435 | 435 |
| 436 void clo(Register rd, Register rs) { | 436 void clo(Register rd, Register rs) { |
| 437 EmitRType(SPECIAL2, rs, rd, rd, 0, CLO); | 437 EmitRType(SPECIAL2, rs, rd, rd, 0, CLO); |
| 438 } | 438 } |
| 439 | 439 |
| 440 void clz(Register rd, Register rs) { | 440 void clz(Register rd, Register rs) { |
| 441 EmitRType(SPECIAL2, rs, rd, rd, 0, CLZ); | 441 EmitRType(SPECIAL2, rs, rd, rd, 0, CLZ); |
| 442 } | 442 } |
| 443 | 443 |
| 444 // Converts a 32-bit signed int in fs to a double in fd. |
| 445 void cvtdw(FRegister fd, FRegister fs) { |
| 446 ASSERT(EvenFPURegister(fd)); |
| 447 EmitFpuRType(COP1, FMT_W, F0, fs, fd, COP1_CVT_D); |
| 448 } |
| 449 |
| 450 // Converts a 64-bit signed int in fs to a double in fd. |
| 451 void cvtdl(FRegister fd, FRegister fs) { |
| 452 ASSERT(EvenFPURegister(fs)); |
| 453 ASSERT(EvenFPURegister(fd)); |
| 454 EmitFpuRType(COP1, FMT_L, F0, fs, fd, COP1_CVT_D); |
| 455 } |
| 456 |
| 444 void div(Register rs, Register rt) { | 457 void div(Register rs, Register rt) { |
| 445 EmitRType(SPECIAL, rs, rt, R0, 0, DIV); | 458 EmitRType(SPECIAL, rs, rt, R0, 0, DIV); |
| 446 } | 459 } |
| 447 | 460 |
| 448 void divu(Register rs, Register rt) { | 461 void divu(Register rs, Register rt) { |
| 449 EmitRType(SPECIAL, rs, rt, R0, 0, DIVU); | 462 EmitRType(SPECIAL, rs, rt, R0, 0, DIVU); |
| 450 } | 463 } |
| 451 | 464 |
| 452 void jalr(Register rs, Register rd = RA) { | 465 void jalr(Register rs, Register rd = RA) { |
| 453 ASSERT(rs != rd); | 466 ASSERT(rs != rd); |
| (...skipping 641 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1095 Register value, | 1108 Register value, |
| 1096 Label* no_update); | 1109 Label* no_update); |
| 1097 | 1110 |
| 1098 DISALLOW_ALLOCATION(); | 1111 DISALLOW_ALLOCATION(); |
| 1099 DISALLOW_COPY_AND_ASSIGN(Assembler); | 1112 DISALLOW_COPY_AND_ASSIGN(Assembler); |
| 1100 }; | 1113 }; |
| 1101 | 1114 |
| 1102 } // namespace dart | 1115 } // namespace dart |
| 1103 | 1116 |
| 1104 #endif // VM_ASSEMBLER_MIPS_H_ | 1117 #endif // VM_ASSEMBLER_MIPS_H_ |
| OLD | NEW |