1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-20 03:23:01 +02:00
llvm-mirror/lib/Target/Mips
Simon Dardis 9c37e1ee47 [mips] Teach the delay slot filler to transform 'jal' for microMIPS
ISel is currently picking 'JAL' over 'JAL_MM' for calling a function when
targeting microMIPS. A later patch will correct this behaviour.

This patch extends the mechanism for transforming instructions into their short
delay to recognise 'JAL_MM' for transforming into 'JALS_MM'.

llvm-svn: 330825
2018-04-25 14:12:57 +00:00
..
AsmParser [mips] Show an error if register number is out of range 2018-04-24 16:14:00 +00:00
Disassembler [mips] Fix the definition of sync, synci 2018-04-25 10:19:22 +00:00
InstPrinter [llvm] Remove redundant return [NFC] 2017-11-12 03:47:50 +00:00
MCTargetDesc [Mips] Change std::sort to llvm::sort in response to r327219 2018-03-29 19:05:26 +00:00
TargetInfo Add backend name to Target to enable runtime info to be fed back into TableGen 2017-11-15 23:55:44 +00:00
CMakeLists.txt Consistently sort add_subdirectory calls in lib/Target/*/CMakeLists.txt 2018-04-23 12:49:34 +00:00
LLVMBuild.txt [MIPS GlobalISel] Adding GlobalISel 2018-02-23 11:06:40 +00:00
MicroMips32r6InstrFormats.td [mips] Begin reworking instruction predicates for ISAs/encodings (1/N) 2018-02-28 13:02:44 +00:00
MicroMips32r6InstrInfo.td [mips] Fix the definition of sync, synci 2018-04-25 10:19:22 +00:00
MicroMipsDSPInstrFormats.td [mips] Split out ASEPredicate from InsnPredicates (NFC) 2018-03-12 13:16:12 +00:00
MicroMipsDSPInstrInfo.td [mips] Enable spilling and reloading of the dsp register set. 2017-10-03 13:45:49 +00:00
MicroMipsInstrFormats.td [mips] Fix the definition of sync, synci 2018-04-25 10:19:22 +00:00
MicroMipsInstrFPU.td [mips] Define certain instructions in microMIPS32r3 2018-02-08 09:25:17 +00:00
MicroMipsInstrInfo.td [mips] Fix the definition of sync, synci 2018-04-25 10:19:22 +00:00
MicroMipsSizeReduction.cpp [mips] Removal of microMIPS64R6 2017-12-11 11:21:40 +00:00
Mips16FrameLowering.cpp Move TargetFrameLowering.h to CodeGen where it's implemented 2017-11-03 22:32:11 +00:00
Mips16FrameLowering.h
Mips16HardFloat.cpp
Mips16HardFloatInfo.cpp
Mips16HardFloatInfo.h
Mips16InstrFormats.td
Mips16InstrInfo.cpp Fix a bunch more layering of CodeGen headers that are in Target 2017-11-17 01:07:10 +00:00
Mips16InstrInfo.h Teach TargetInstrInfo::getInlineAsmLength to parse .space directives with integer arguments 2017-09-28 09:31:46 +00:00
Mips16InstrInfo.td [NFC] fix trivial typos in comments and documents 2018-01-26 08:15:29 +00:00
Mips16ISelDAGToDAG.cpp
Mips16ISelDAGToDAG.h
Mips16ISelLowering.cpp Target/TargetInstrInfo.h -> CodeGen/TargetInstrInfo.h to match layering 2017-11-08 01:01:31 +00:00
Mips16ISelLowering.h
Mips16RegisterInfo.cpp Target/TargetInstrInfo.h -> CodeGen/TargetInstrInfo.h to match layering 2017-11-08 01:01:31 +00:00
Mips16RegisterInfo.h
Mips32r6InstrFormats.td [mips] Add support for CRC ASE 2018-03-14 14:13:31 +00:00
Mips32r6InstrInfo.td [mips] Add support for CRC ASE 2018-03-14 14:13:31 +00:00
Mips64InstrInfo.td [mips] Correct the patterns for bswap 2018-04-24 10:19:29 +00:00
Mips64r6InstrInfo.td [mips] Add support for CRC ASE 2018-03-14 14:13:31 +00:00
Mips.h [MIPS GlobalISel] Adding GlobalISel 2018-02-23 11:06:40 +00:00
Mips.td [MIPS GlobalISel] Select add i32, i32 2018-04-11 15:12:32 +00:00
MipsAnalyzeImmediate.cpp
MipsAnalyzeImmediate.h
MipsAsmPrinter.cpp [mips] Support 'y' operand code to print exact log2 of the operand 2018-02-07 12:36:39 +00:00
MipsAsmPrinter.h [X86][Mips] Remove unused method declaration from the X86 and Mips AsmPrinters. 2017-12-08 23:30:03 +00:00
MipsCallingConv.td
MipsCallLowering.cpp [MIPS GlobalISel] remove superfluous #includes (NFC) 2018-04-12 17:01:46 +00:00
MipsCallLowering.h [MIPS GlobalISel] remove superfluous #includes (NFC) 2018-04-12 17:01:46 +00:00
MipsCCState.cpp MachineFunction: Return reference from getFunction(); NFC 2017-12-15 22:22:58 +00:00
MipsCCState.h
MipsCondMov.td [mips] Place certain 64 bit FPU instructions in their own decoder namespace 2017-10-05 10:27:37 +00:00
MipsConstantIslandPass.cpp MachineFunction: Return reference from getFunction(); NFC 2017-12-15 22:22:58 +00:00
MipsDelaySlotFiller.cpp [mips] Teach the delay slot filler to transform 'jal' for microMIPS 2018-04-25 14:12:57 +00:00
MipsDSPInstrFormats.td [mips] Split out ASEPredicate from InsnPredicates (NFC) 2018-03-12 13:16:12 +00:00
MipsDSPInstrInfo.td [mips] Provide additional DSP bitconvert patterns 2017-12-13 10:13:35 +00:00
MipsEVAInstrFormats.td
MipsEVAInstrInfo.td [mips] Correct the definitions of the unaligned word memory operation instructions 2018-04-19 13:33:51 +00:00
MipsFastISel.cpp Fix lld-x86_64-darwin13 build fails. 2018-04-05 23:23:29 +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
MipsInstrFormats.td [mips] Spectre variant two mitigation for MIPSR2 2018-02-21 00:06:53 +00:00
MipsInstrFPU.td [mips] Correct the definition of cvt.d.w 2018-02-20 15:55:17 +00:00
MipsInstrInfo.cpp Fix a bunch of typoes. NFC 2018-03-30 22:22:31 +00:00
MipsInstrInfo.h Target/TargetInstrInfo.h -> CodeGen/TargetInstrInfo.h to match layering 2017-11-08 01:01:31 +00:00
MipsInstrInfo.td [mips] Fix the definition of sync, synci 2018-04-25 10:19:22 +00:00
MipsInstructionSelector.cpp [MIPS GlobalISel] remove superfluous #includes (NFC) 2018-04-12 17:01:46 +00:00
MipsISelDAGToDAG.cpp [SelectionDAGISel] Add a debug print before call to Select. Adjust where blank lines are printed during isel process to make things more sensibly grouped. 2018-01-26 19:34:20 +00:00
MipsISelDAGToDAG.h
MipsISelLowering.cpp [MIPS GlobalISel] Select add i32, i32 2018-04-11 15:12:32 +00:00
MipsISelLowering.h [MIPS GlobalISel] Select add i32, i32 2018-04-11 15:12:32 +00:00
MipsLegalizerInfo.cpp [MIPS GlobalISel] remove superfluous #includes (NFC) 2018-04-12 17:01:46 +00:00
MipsLegalizerInfo.h [MIPS GlobalISel] Adding GlobalISel 2018-02-23 11:06:40 +00:00
MipsLongBranch.cpp [mips] Spectre variant two mitigation for MIPSR2 2018-02-21 00:06:53 +00:00
MipsMachineFunction.cpp [mips] Removal of microMIPS64R6 2017-12-11 11:21:40 +00:00
MipsMachineFunction.h
MipsMCInstLower.cpp
MipsMCInstLower.h
MipsModuleISelDAGToDAG.cpp
MipsMSAInstrFormats.td
MipsMSAInstrInfo.td [MIPS][MSA] Convert vector integer min/max opcodes to use generic implementation 2018-02-17 21:29:45 +00:00
MipsMTInstrFormats.td Reland "[mips][mt][6/7] Add support for mftr, mttr instructions." 2017-11-14 22:26:42 +00:00
MipsMTInstrInfo.td Reland "[mips][mt][6/7] Add support for mftr, mttr instructions." 2017-11-14 22:26:42 +00:00
MipsOptimizePICCall.cpp Fix layering of MachineValueType.h by moving it from CodeGen to Support 2018-03-23 23:58:25 +00:00
MipsOptionRecord.h
MipsOs16.cpp
MipsRegisterBankInfo.cpp [MIPS GlobalISel] remove superfluous #includes (NFC) 2018-04-12 17:01:46 +00:00
MipsRegisterBankInfo.h [MIPS GlobalISel] Select add i32, i32 2018-04-11 15:12:32 +00:00
MipsRegisterBanks.td [MIPS GlobalISel] Select add i32, i32 2018-04-11 15:12:32 +00:00
MipsRegisterInfo.cpp Revert accidental changes that snuck in r324584 2018-02-08 09:31:48 +00:00
MipsRegisterInfo.h [Mips] Return true in enableMultipleCopyHints(). 2018-02-23 08:30:15 +00:00
MipsRegisterInfo.td Trivial commit to force LLVM to run TableGen for Mips target after 2017-12-20 12:45:40 +00:00
MipsSchedule.td [mips] Add support for CRC ASE 2018-03-14 14:13:31 +00:00
MipsScheduleGeneric.td [SchedModel] Complete models shouldn't match against itineraries when they don't use them (PR35639) 2018-04-05 13:11:36 +00:00
MipsScheduleP5600.td [SchedModel] Complete models shouldn't match against itineraries when they don't use them (PR35639) 2018-04-05 13:11:36 +00:00
MipsSEFrameLowering.cpp MachineFunction: Return reference from getFunction(); NFC 2017-12-15 22:22:58 +00:00
MipsSEFrameLowering.h [Mips] Remove dead code 2018-03-29 09:21:20 +00:00
MipsSEInstrInfo.cpp [mips] Define certain instructions in microMIPS32r3 2018-02-08 09:25:17 +00:00
MipsSEInstrInfo.h [mips] Define certain instructions in microMIPS32r3 2018-02-08 09:25:17 +00:00
MipsSEISelDAGToDAG.cpp [NFC] fix trivial typos in comments 2018-01-22 05:54:46 +00:00
MipsSEISelDAGToDAG.h
MipsSEISelLowering.cpp [mips] Materialize constants for multiplication 2018-04-13 16:09:07 +00:00
MipsSEISelLowering.h Fix layering of MachineValueType.h by moving it from CodeGen to Support 2018-03-23 23:58:25 +00:00
MipsSERegisterInfo.cpp [mips] Remove duplicated R6 EVA instructions 2018-01-08 16:50:33 +00:00
MipsSERegisterInfo.h
MipsSubtarget.cpp [mips] Add support for CRC ASE 2018-03-14 14:13:31 +00:00
MipsSubtarget.h [mips] Add support for CRC ASE 2018-03-14 14:13:31 +00:00
MipsTargetMachine.cpp [MIPS GlobalISel] Adding GlobalISel 2018-02-23 11:06:40 +00:00
MipsTargetMachine.h (Re-landing) Expose a TargetMachine::getTargetTransformInfo function 2017-12-22 18:21:59 +00:00
MipsTargetObjectFile.cpp [MIPS] Don't crash on unsized extern types with -mgpopt 2018-01-26 15:56:14 +00:00
MipsTargetObjectFile.h
MipsTargetStreamer.h [mips] Add support for CRC ASE 2018-03-14 14:13:31 +00:00
MSA.txt
Relocation.txt [mips] Removal of microMIPS64R6 2017-12-11 11:21:40 +00:00