The patch implements microMIPS32r6 SB, SBE, SCE, SH and SHE instructions.
Details
Diff Detail
Event Timeline
LGTM with a few nits
lib/Target/Mips/Disassembler/MipsDisassembler.cpp | ||
---|---|---|
260–262 | Nit: Indentation | |
1151–1153 | Nit: Indentation | |
lib/Target/Mips/MCTargetDesc/MipsMCCodeEmitter.cpp | ||
771 | Nit: Indentation | |
773–774 | Nit: Indentation | |
lib/Target/Mips/MCTargetDesc/MipsMCCodeEmitter.h | ||
176–177 | Nit: Indentation | |
lib/Target/Mips/MicroMips32r6InstrFormats.td | ||
201–226 | Please break out the fields of addr using variables. For example: bits<21> addr; let Inst{20-16} = addr{20-16}; let Inst{15-0} = addr{15-0}; should be something like: bits<21> addr; bits<5> base = addr{20-16}; bits<16> offset = addr{15-0}; let Inst{20-16} = base; let Inst{15-0} = offset; This helps to document the unusual encoding we use for addr fields. | |
lib/Target/Mips/MicroMips32r6InstrInfo.td | ||
122–129 | This belongs at the top of the file, before the *_ENC classes. | |
294 | Nit: Indentation | |
300 | Nit: Indentation |
lib/Target/Mips/MicroMips32r6InstrFormats.td | ||
---|---|---|
201–226 | Forgot to say: These format classes don't follow the naming convention. 'STORE_EVA_FM_MMR6' should be POOL32C_<something>_FM_MMR6 STORE_FM_MMR6 ought to be SB32_<something>_FM_MMR6 and SH32_<something>_FM_MMR6 but it's good to share the code. Maybe SX32_... or SB32_SH32_... |
Nit: Indentation