The patch implements microMIPSr6 DVP, EVP and JALRC.HB instructions.
Details
Details
Diff Detail
Diff Detail
- Repository
- rL LLVM
Event Timeline
Comment Actions
LGTM with some nits (inlined).
The isCTI is only required for MIPSR6 instructions which cannot be placed in a forbidden slot. Since microMIPSR6 doesn't have forbidden slots and cannot be mixed inside MIPSR6 code without going through an ISA change it isn't required.
lib/Target/Mips/AsmParser/MipsAsmParser.cpp | ||
---|---|---|
3653 ↗ | (On Diff #52337) | Add a note here that it also applies to microMIPSR6. |
lib/Target/Mips/MicroMips32r6InstrInfo.td | ||
1020 ↗ | (On Diff #52337) | The 'isCTI' bit isn't required. The only code that cares about the 'isCTI' bit is the SafeInForbiddenSlot predicate which is only used for MIPSR6, not microMIPSR6. |
test/MC/Mips/micromips32r6/invalid.s | ||
118 ↗ | (On Diff #52337) | Add evp and dvp with immediate operands here to test that they are rejected. |
test/MC/Mips/micromips64r6/invalid.s | ||
148 ↗ | (On Diff #52337) | Here as well. |