llvm-project/llvm/lib/Target/Mips
Simon Dardis 169df4e24b [mips] Add movep for microMIPS32R6 and fix microMIPS32r3 version
Previously, the 'movep' instruction was defined for microMIPS32r3 and
shared that definition with microMIPS32R6. 'movep' was re-encoded for
microMIPS32r6, so this patch provides the correct encoding.

Secondly, correct the encoding of the 'rs' and 'rt' operands which have
an instruction specific encoding for the registers those operands accept.

Finally, correct the decoding of the 'dst_regs' operand which was extracting
the relevant field from the instruction, but was actually extracting the
field from the alreadly extracted field.

Reviewers: atanasyan

Differential Revision: https://reviews.llvm.org/D39495

llvm-svn: 317475
2017-11-06 12:59:53 +00:00
..
AsmParser [Asm] Add debug tracing in table-generated assembly matcher 2017-10-11 09:17:43 +00:00
Disassembler [mips] Add movep for microMIPS32R6 and fix microMIPS32r3 version 2017-11-06 12:59:53 +00:00
InstPrinter
MCTargetDesc [mips] Add movep for microMIPS32R6 and fix microMIPS32r3 version 2017-11-06 12:59:53 +00:00
TargetInfo
CMakeLists.txt [mips][microMIPS] Adding code size reduction pass for MicroMIPS 2017-04-27 13:10:48 +00:00
LLVMBuild.txt
MSA.txt
MicroMips32r6InstrFormats.td [mips] Add movep for microMIPS32R6 and fix microMIPS32r3 version 2017-11-06 12:59:53 +00:00
MicroMips32r6InstrInfo.td [mips] Add movep for microMIPS32R6 and fix microMIPS32r3 version 2017-11-06 12:59:53 +00:00
MicroMips64r6InstrFormats.td
MicroMips64r6InstrInfo.td [mips] Match 'ins' and its' variants with C++ code 2017-11-03 15:35:13 +00:00
MicroMipsDSPInstrFormats.td
MicroMipsDSPInstrInfo.td [mips] Enable spilling and reloading of the dsp register set. 2017-10-03 13:45:49 +00:00
MicroMipsInstrFPU.td [mips] Fix (dis)assembly of abs.fmt for micromips 2017-10-26 11:36:54 +00:00
MicroMipsInstrFormats.td [mips][micromips] Fix (dis)assembly of bc1(t|f) 2017-10-16 14:20:22 +00:00
MicroMipsInstrInfo.td [mips] Add movep for microMIPS32R6 and fix microMIPS32r3 version 2017-11-06 12:59:53 +00:00
MicroMipsSizeReduction.cpp [mips][microMIPS] Extending size reduction pass with XOR16 2017-08-10 10:27:29 +00:00
Mips.h [LegacyPassManager] Remove TargetMachine constructors 2017-05-18 17:21:13 +00:00
Mips.td [mips] Handle the `long-calls` feature flags in the MIPS backend 2017-07-15 07:14:25 +00:00
Mips16FrameLowering.cpp Move TargetFrameLowering.h to CodeGen where it's implemented 2017-11-03 22:32:11 +00:00
Mips16FrameLowering.h Add "Restored" flag to CalleeSavedInfo 2017-08-10 16:17:32 +00:00
Mips16HardFloat.cpp [Mips] Fix some Clang-tidy modernize-use-using and Include What You Use warnings; other minor fixes (NFC). 2017-08-03 22:12:30 +00:00
Mips16HardFloatInfo.cpp
Mips16HardFloatInfo.h
Mips16ISelDAGToDAG.cpp
Mips16ISelDAGToDAG.h
Mips16ISelLowering.cpp
Mips16ISelLowering.h
Mips16InstrFormats.td
Mips16InstrInfo.cpp Teach TargetInstrInfo::getInlineAsmLength to parse .space directives with integer arguments 2017-09-28 09:31:46 +00:00
Mips16InstrInfo.h Teach TargetInstrInfo::getInlineAsmLength to parse .space directives with integer arguments 2017-09-28 09:31:46 +00:00
Mips16InstrInfo.td [mips] Correct mips16 return instructions definitions 2017-02-14 21:53:23 +00:00
Mips16RegisterInfo.cpp Move TargetFrameLowering.h to CodeGen where it's implemented 2017-11-03 22:32:11 +00:00
Mips16RegisterInfo.h
Mips32r6InstrFormats.td
Mips32r6InstrInfo.td [mips][microMIPS] add lapc instruction 2017-09-11 18:34:04 +00:00
Mips64InstrInfo.td [mips] Match 'ins' and its' variants with C++ code 2017-11-03 15:35:13 +00:00
Mips64r6InstrInfo.td
MipsAnalyzeImmediate.cpp [Mips] Fix some Clang-tidy modernize-use-using and Include What You Use warnings; other minor fixes (NFC). 2017-08-03 22:12:30 +00:00
MipsAnalyzeImmediate.h [Mips] Fix some Clang-tidy modernize-use-using and Include What You Use warnings; other minor fixes (NFC). 2017-08-03 22:12:30 +00:00
MipsAsmPrinter.cpp [MC] Adding code padding for performance stability - infrastructure. NFC. 2017-10-24 06:16:03 +00:00
MipsAsmPrinter.h [Mips] Fix some Clang-tidy modernize-use-using and Include What You Use warnings; other minor fixes (NFC). 2017-08-03 22:12:30 +00:00
MipsCCState.cpp Reland "[SelectionDAG] Enable target specific vector scalarization of calls and returns" 2017-06-09 14:37:08 +00:00
MipsCCState.h Reland "[SelectionDAG] Enable target specific vector scalarization of calls and returns" 2017-06-09 14:37:08 +00:00
MipsCallingConv.td Reland "[SelectionDAG] Enable target specific vector scalarization of calls and returns" 2017-06-09 14:37:08 +00:00
MipsCondMov.td [mips] Place certain 64 bit FPU instructions in their own decoder namespace 2017-10-05 10:27:37 +00:00
MipsConstantIslandPass.cpp Reverting r315590; it did not include changes for llvm-tblgen, which is causing link errors for several people. 2017-10-15 14:32:27 +00:00
MipsDSPInstrFormats.td
MipsDSPInstrInfo.td [mips] Enable spilling and reloading of the dsp register set. 2017-10-03 13:45:49 +00:00
MipsDelaySlotFiller.cpp [Mips] Fix some Clang-tidy modernize-use-using and Include What You Use warnings; other minor fixes (NFC). 2017-08-03 22:12:30 +00:00
MipsEVAInstrFormats.td
MipsEVAInstrInfo.td
MipsFastISel.cpp [Mips] Fix some Clang-tidy modernize-use-using and Include What You Use warnings; other minor fixes (NFC). 2017-08-03 22:12:30 +00:00
MipsFrameLowering.cpp [mips] Use register scavenging with MSA. 2017-11-02 12:47:22 +00:00
MipsFrameLowering.h Move TargetFrameLowering.h to CodeGen where it's implemented 2017-11-03 22:32:11 +00:00
MipsHazardSchedule.cpp [Mips] Fix some Clang-tidy modernize-use-using and Include What You Use warnings; other minor fixes (NFC). 2017-08-03 22:12:30 +00:00
MipsISelDAGToDAG.cpp
MipsISelDAGToDAG.h
MipsISelLowering.cpp Move TargetFrameLowering.h to CodeGen where it's implemented 2017-11-03 22:32:11 +00:00
MipsISelLowering.h Revert "[mips] Reordering callseq* nodes to be linear" 2017-10-20 14:35:41 +00:00
MipsInstrFPU.td [mips] Fix (dis)assembly of abs.fmt for micromips 2017-10-26 11:36:54 +00:00
MipsInstrFormats.td
MipsInstrInfo.cpp [mips] Fix PR35071 2017-10-26 10:58:36 +00:00
MipsInstrInfo.h [mips] Add support for parsing target specific flags for MIR 2017-10-11 11:11:35 +00:00
MipsInstrInfo.td [mips] Match 'ins' and its' variants with C++ code 2017-11-03 15:35:13 +00:00
MipsLongBranch.cpp [Mips] Fix some Clang-tidy modernize-use-using and Include What You Use warnings; other minor fixes (NFC). 2017-08-03 22:12:30 +00:00
MipsMCInstLower.cpp [Mips] Fix some Clang-tidy modernize-use-using and Include What You Use warnings; other minor fixes (NFC). 2017-08-03 22:12:30 +00:00
MipsMCInstLower.h [Mips] Fix some Clang-tidy modernize-use-using and Include What You Use warnings; other minor fixes (NFC). 2017-08-03 22:12:30 +00:00
MipsMSAInstrFormats.td
MipsMSAInstrInfo.td [mips][msa] Mask vectors holding shift amounts 2017-04-20 13:26:46 +00:00
MipsMTInstrFormats.td Revert "Reland "[mips][mt][6/7] Add support for mftr, mttr instructions."" 2017-08-14 16:20:33 +00:00
MipsMTInstrInfo.td Revert "Reland "[mips][mt][6/7] Add support for mftr, mttr instructions."" 2017-08-14 16:20:33 +00:00
MipsMachineFunction.cpp evert "[mips] Fix test mips64fpldst.ll with machine verifier enabled" 2017-06-07 11:21:37 +00:00
MipsMachineFunction.h [Mips] Fix some Clang-tidy modernize and Include What You Use warnings; other minor fixes (NFC). 2017-01-30 23:21:32 +00:00
MipsModuleISelDAGToDAG.cpp [LegacyPassManager] Remove TargetMachine constructors 2017-05-18 17:21:13 +00:00
MipsOptimizePICCall.cpp [Mips] Fix some Clang-tidy modernize-use-using and Include What You Use warnings; other minor fixes (NFC). 2017-08-03 22:12:30 +00:00
MipsOptionRecord.h [Mips] Fix some Clang-tidy modernize and Include What You Use warnings; other minor fixes (NFC). 2017-02-01 01:22:51 +00:00
MipsOs16.cpp Sort the remaining #include lines in include/... and lib/.... 2017-06-06 11:49:48 +00:00
MipsRegisterInfo.cpp Move TargetFrameLowering.h to CodeGen where it's implemented 2017-11-03 22:32:11 +00:00
MipsRegisterInfo.h [Mips] Fix some Clang-tidy modernize-use-using and Include What You Use warnings; other minor fixes (NFC). 2017-08-03 22:12:30 +00:00
MipsRegisterInfo.td [mips] Add movep for microMIPS32R6 and fix microMIPS32r3 version 2017-11-06 12:59:53 +00:00
MipsSEFrameLowering.cpp [mips] Use register scavenging with MSA. 2017-11-02 12:47:22 +00:00
MipsSEFrameLowering.h [Mips] Fix some Clang-tidy modernize-use-using and Include What You Use warnings; other minor fixes (NFC). 2017-08-03 22:12:30 +00:00
MipsSEISelDAGToDAG.cpp [mips] Match 'ins' and its' variants with C++ code 2017-11-03 15:35:13 +00:00
MipsSEISelDAGToDAG.h Reland "[mips] Fix multiprecision arithmetic." 2017-07-13 11:28:05 +00:00
MipsSEISelLowering.cpp [Mips] Fix some Clang-tidy modernize-use-using and Include What You Use warnings; other minor fixes (NFC). 2017-08-03 22:12:30 +00:00
MipsSEISelLowering.h [Mips] Fix some Clang-tidy modernize-use-using and Include What You Use warnings; other minor fixes (NFC). 2017-08-03 22:12:30 +00:00
MipsSEInstrInfo.cpp [mips] Enable spilling and reloading of the dsp register set. 2017-10-03 13:45:49 +00:00
MipsSEInstrInfo.h
MipsSERegisterInfo.cpp Move TargetFrameLowering.h to CodeGen where it's implemented 2017-11-03 22:32:11 +00:00
MipsSERegisterInfo.h
MipsSchedule.td Revert "Reland "[mips][mt][6/7] Add support for mftr, mttr instructions."" 2017-08-14 16:20:33 +00:00
MipsScheduleGeneric.td [mips] Add movep for microMIPS32R6 and fix microMIPS32r3 version 2017-11-06 12:59:53 +00:00
MipsScheduleP5600.td [mips][mt][3/7] Add IAS support for emt, dmt instructions. 2017-07-12 11:57:44 +00:00
MipsSubtarget.cpp [MIPS] Implement support for -mstack-alignment. 2017-08-14 21:49:38 +00:00
MipsSubtarget.h [MIPS] Implement support for -mstack-alignment. 2017-08-14 21:49:38 +00:00
MipsTargetMachine.cpp Revert "TargetMachine: Merge TargetMachine and LLVMTargetMachine" 2017-10-12 22:57:28 +00:00
MipsTargetMachine.h Revert "TargetMachine: Merge TargetMachine and LLVMTargetMachine" 2017-10-12 22:57:28 +00:00
MipsTargetObjectFile.cpp [mips] Handle variables with an explicit section and interactions with .sdata, .sbss 2017-08-16 12:18:04 +00:00
MipsTargetObjectFile.h
MipsTargetStreamer.h [mips] implement .set dspr2 directive 2017-10-05 17:40:32 +00:00
Relocation.txt [Mips] Document Mips Backend Relocation Principles 2017-04-21 14:49:27 +00:00