| Index: src/mips/assembler-mips.cc
|
| diff --git a/src/mips/assembler-mips.cc b/src/mips/assembler-mips.cc
|
| index 96373579d8e098df42c9950aff67f02a1a343e0e..5f0ceb8801710b377173c314e0e786616c2a6054 100644
|
| --- a/src/mips/assembler-mips.cc
|
| +++ b/src/mips/assembler-mips.cc
|
| @@ -1920,28 +1920,39 @@ void Assembler::movf(Register rd, Register rs, uint16_t cc) {
|
| }
|
|
|
|
|
| -void Assembler::seleqz(Register rs, Register rt, Register rd) {
|
| +void Assembler::sel(SecondaryField fmt, FPURegister fd, FPURegister fs,
|
| + FPURegister ft) {
|
| + DCHECK(IsMipsArchVariant(kMips32r6));
|
| + DCHECK((fmt == D) || (fmt == S));
|
| +
|
| + Instr instr = COP1 | fmt << kRsShift | ft.code() << kFtShift |
|
| + fs.code() << kFsShift | fd.code() << kFdShift | SEL;
|
| + emit(instr);
|
| +}
|
| +
|
| +
|
| +void Assembler::seleqz(Register rd, Register rs, Register rt) {
|
| DCHECK(IsMipsArchVariant(kMips32r6));
|
| GenInstrRegister(SPECIAL, rs, rt, rd, 0, SELEQZ_S);
|
| }
|
|
|
|
|
| -void Assembler::seleqz(SecondaryField fmt, FPURegister fd, FPURegister ft,
|
| - FPURegister fs) {
|
| +void Assembler::seleqz(SecondaryField fmt, FPURegister fd, FPURegister fs,
|
| + FPURegister ft) {
|
| DCHECK(IsMipsArchVariant(kMips32r6));
|
| DCHECK((fmt == D) || (fmt == S));
|
| GenInstrRegister(COP1, fmt, ft, fs, fd, SELEQZ_C);
|
| }
|
|
|
|
|
| -void Assembler::selnez(Register rs, Register rt, Register rd) {
|
| +void Assembler::selnez(Register rd, Register rs, Register rt) {
|
| DCHECK(IsMipsArchVariant(kMips32r6));
|
| GenInstrRegister(SPECIAL, rs, rt, rd, 0, SELNEZ_S);
|
| }
|
|
|
|
|
| -void Assembler::selnez(SecondaryField fmt, FPURegister fd, FPURegister ft,
|
| - FPURegister fs) {
|
| +void Assembler::selnez(SecondaryField fmt, FPURegister fd, FPURegister fs,
|
| + FPURegister ft) {
|
| DCHECK(IsMipsArchVariant(kMips32r6));
|
| DCHECK((fmt == D) || (fmt == S));
|
| GenInstrRegister(COP1, fmt, ft, fs, fd, SELNEZ_C);
|
| @@ -2261,32 +2272,32 @@ void Assembler::ceil_l_d(FPURegister fd, FPURegister fs) {
|
| }
|
|
|
|
|
| -void Assembler::min(SecondaryField fmt, FPURegister fd, FPURegister ft,
|
| - FPURegister fs) {
|
| +void Assembler::min(SecondaryField fmt, FPURegister fd, FPURegister fs,
|
| + FPURegister ft) {
|
| DCHECK(IsMipsArchVariant(kMips32r6));
|
| DCHECK((fmt == D) || (fmt == S));
|
| GenInstrRegister(COP1, fmt, ft, fs, fd, MIN);
|
| }
|
|
|
|
|
| -void Assembler::mina(SecondaryField fmt, FPURegister fd, FPURegister ft,
|
| - FPURegister fs) {
|
| +void Assembler::mina(SecondaryField fmt, FPURegister fd, FPURegister fs,
|
| + FPURegister ft) {
|
| DCHECK(IsMipsArchVariant(kMips32r6));
|
| DCHECK((fmt == D) || (fmt == S));
|
| GenInstrRegister(COP1, fmt, ft, fs, fd, MINA);
|
| }
|
|
|
|
|
| -void Assembler::max(SecondaryField fmt, FPURegister fd, FPURegister ft,
|
| - FPURegister fs) {
|
| +void Assembler::max(SecondaryField fmt, FPURegister fd, FPURegister fs,
|
| + FPURegister ft) {
|
| DCHECK(IsMipsArchVariant(kMips32r6));
|
| DCHECK((fmt == D) || (fmt == S));
|
| GenInstrRegister(COP1, fmt, ft, fs, fd, MAX);
|
| }
|
|
|
|
|
| -void Assembler::maxa(SecondaryField fmt, FPURegister fd, FPURegister ft,
|
| - FPURegister fs) {
|
| +void Assembler::maxa(SecondaryField fmt, FPURegister fd, FPURegister fs,
|
| + FPURegister ft) {
|
| DCHECK(IsMipsArchVariant(kMips32r6));
|
| DCHECK((fmt == D) || (fmt == S));
|
| GenInstrRegister(COP1, fmt, ft, fs, fd, MAXA);
|
|
|