| Index: src/mips64/assembler-mips64.cc
|
| diff --git a/src/mips64/assembler-mips64.cc b/src/mips64/assembler-mips64.cc
|
| index fa62932e82d24bf28f4fe6be2c3cddaf485c8c07..c83ba7e8686e2271157118079d733aa41377ee91 100644
|
| --- a/src/mips64/assembler-mips64.cc
|
| +++ b/src/mips64/assembler-mips64.cc
|
| @@ -2336,6 +2336,22 @@ void Assembler::dext_(Register rt, Register rs, uint16_t pos, uint16_t size) {
|
| }
|
|
|
|
|
| +void Assembler::dextm(Register rt, Register rs, uint16_t pos, uint16_t size) {
|
| + // Should be called via MacroAssembler::Dextm.
|
| + // Dextm instr has 'rt' field as dest, and two uint5: msb, lsb.
|
| + DCHECK(kArchVariant == kMips64r2 || kArchVariant == kMips64r6);
|
| + GenInstrRegister(SPECIAL3, rs, rt, size - 1 - 32, pos, DEXTM);
|
| +}
|
| +
|
| +
|
| +void Assembler::dextu(Register rt, Register rs, uint16_t pos, uint16_t size) {
|
| + // Should be called via MacroAssembler::Dextu.
|
| + // Dext instr has 'rt' field as dest, and two uint5: msb, lsb.
|
| + DCHECK(kArchVariant == kMips64r2 || kArchVariant == kMips64r6);
|
| + GenInstrRegister(SPECIAL3, rs, rt, size - 1, pos - 32, DEXTU);
|
| +}
|
| +
|
| +
|
| void Assembler::bitswap(Register rd, Register rt) {
|
| DCHECK(kArchVariant == kMips64r6);
|
| GenInstrRegister(SPECIAL3, zero_reg, rt, rd, 0, BSHFL);
|
|
|