llvm-6502/lib/Target/Mips
Vasileios Kalintiris d4b311fb43 [mips][FastISel] Implement srem/urem and sdiv/udiv instructions.
Summary: Implement the LLVM assembly urem/srem and sdiv/udiv instructions in MIPS FastISel.

Based on a patch by Reed Kotler.

Test Plan:
srem1.ll
div1.ll
test-suite at O0/O2 for mips32 r1/r2

Reviewers: dsanders, rkotler

Subscribers: llvm-commits, rfuhler

Differential Revision: http://reviews.llvm.org/D7028

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@238757 91177308-0d34-0410-b5e6-96231b3b80d8
2015-06-01 16:17:37 +00:00
..
AsmParser MC: Clean up MCExpr naming. NFC. 2015-05-30 01:25:56 +00:00
Disassembler [mips] Add new format for dmtc2/dmfc2 for Octeon CPUs. 2015-05-28 16:23:16 +00:00
InstPrinter [MCInstPrinter] Enable MCInstPrinter to change its behavior based on the 2015-03-27 20:36:02 +00:00
MCTargetDesc Fix relocation selection for foo-. on mips. 2015-06-01 15:10:51 +00:00
TargetInfo [Mips64] Add support for MCJIT for MIPS64r2 and MIPS64r6 2015-05-28 13:48:41 +00:00
CMakeLists.txt
LLVMBuild.txt
Makefile
MicroMips32r6InstrFormats.td [mips][microMIPSr6] Implement SEB and SEH instructions 2015-05-27 15:39:47 +00:00
MicroMips32r6InstrInfo.td [mips][microMIPSr6] Implement SEB and SEH instructions 2015-05-27 15:39:47 +00:00
MicroMipsInstrFormats.td
MicroMipsInstrFPU.td [mips] Only use FGR_{32,64} in TableGen descriptions. NFC. 2015-05-08 12:15:04 +00:00
MicroMipsInstrInfo.td
Mips16FrameLowering.cpp [ShrinkWrap] Add (a simplified version) of shrink-wrapping. 2015-05-05 17:38:16 +00:00
Mips16FrameLowering.h [ShrinkWrap] Add (a simplified version) of shrink-wrapping. 2015-05-05 17:38:16 +00:00
Mips16HardFloat.cpp
Mips16HardFloatInfo.cpp
Mips16HardFloatInfo.h
Mips16InstrFormats.td
Mips16InstrInfo.cpp [mips] Make sure that we don't adjust the stack pointer by zero amount. 2015-04-02 10:14:54 +00:00
Mips16InstrInfo.h [mips] Expose adjustStackPtr() from MipsInstrInfo. NFC. 2015-04-02 10:42:44 +00:00
Mips16InstrInfo.td
Mips16ISelDAGToDAG.cpp Reapply r235977 "[DebugInfo] Add debug locations to constant SD nodes" 2015-04-28 14:05:47 +00:00
Mips16ISelDAGToDAG.h
Mips16ISelLowering.cpp Rename the MIPS routine abiUsesSoftFloat -> useSoftFloat to match 2015-05-07 23:10:21 +00:00
Mips16ISelLowering.h
Mips16RegisterInfo.cpp
Mips16RegisterInfo.h
Mips32r6InstrFormats.td [mips][microMIPSr6] Implement initial mapping support 2015-04-20 12:42:08 +00:00
Mips32r6InstrInfo.td [mips][microMIPSr6] Implement BEQZALC, BGEZALC, BGTZALC, BLEZALC, BLTZALC and BNEZALC instructions 2015-05-27 14:19:22 +00:00
Mips64InstrInfo.td [mips] Add new format for dmtc2/dmfc2 for Octeon CPUs. 2015-05-28 16:23:16 +00:00
Mips64r6InstrInfo.td
Mips.h
Mips.td [mips] Add the SoftFloat MipsSubtarget feature. 2015-05-07 10:29:52 +00:00
MipsAnalyzeImmediate.cpp
MipsAnalyzeImmediate.h
MipsAsmPrinter.cpp MC: Clean up MCExpr naming. NFC. 2015-05-30 01:25:56 +00:00
MipsAsmPrinter.h [mips] Emit the .insn directive for empty basic blocks. 2015-05-08 09:10:15 +00:00
MipsCallingConv.td Rename the MIPS routine abiUsesSoftFloat -> useSoftFloat to match 2015-05-07 23:10:21 +00:00
MipsCCState.cpp
MipsCCState.h
MipsCondMov.td [mips] Add the SoftFloat MipsSubtarget feature. 2015-05-07 10:29:52 +00:00
MipsConstantIslandPass.cpp
MipsDelaySlotFiller.cpp [mips] Do not place users of $ra in the delay slot of call instructions. 2015-05-14 13:17:56 +00:00
MipsDSPInstrFormats.td
MipsDSPInstrInfo.td
MipsFastISel.cpp [mips][FastISel] Implement srem/urem and sdiv/udiv instructions. 2015-06-01 16:17:37 +00:00
MipsFrameLowering.cpp [mips] Implement eliminateCallFramePseudoInstr() in MipsFrameLowering. NFC. 2015-04-02 11:09:40 +00:00
MipsFrameLowering.h [Mips] Return false for isFPCloseToIncomingSP() 2015-05-12 17:14:05 +00:00
MipsInstrFormats.td [mips] Add new format for dmtc2/dmfc2 for Octeon CPUs. 2015-05-28 16:23:16 +00:00
MipsInstrFPU.td [mips] Only use FGR_{32,64} in TableGen descriptions. NFC. 2015-05-08 12:15:04 +00:00
MipsInstrInfo.cpp
MipsInstrInfo.h [mips] Expose adjustStackPtr() from MipsInstrInfo. NFC. 2015-04-02 10:42:44 +00:00
MipsInstrInfo.td [mips][microMIPSr6] Implement SEB and SEH instructions 2015-05-27 15:39:47 +00:00
MipsISelDAGToDAG.cpp [mips] Correct and improve special-case shuffle instructions. 2015-05-19 12:24:52 +00:00
MipsISelDAGToDAG.h [mips] Correct and improve special-case shuffle instructions. 2015-05-19 12:24:52 +00:00
MipsISelLowering.cpp Add address space argument to isLegalAddressingMode 2015-06-01 05:31:59 +00:00
MipsISelLowering.h Add address space argument to isLegalAddressingMode 2015-06-01 05:31:59 +00:00
MipsLongBranch.cpp
MipsMachineFunction.cpp [Mips] Use unique_ptr to manage ownership. 2015-04-16 12:43:33 +00:00
MipsMachineFunction.h [Mips] Use unique_ptr to manage ownership. 2015-04-16 12:43:33 +00:00
MipsMCInstLower.cpp MC: Clean up MCExpr naming. NFC. 2015-05-30 01:25:56 +00:00
MipsMCInstLower.h
MipsModuleISelDAGToDAG.cpp
MipsMSAInstrFormats.td
MipsMSAInstrInfo.td [mips] Correct and improve special-case shuffle instructions. 2015-05-19 12:24:52 +00:00
MipsOptimizePICCall.cpp
MipsOptionRecord.h Use 'override/final' instead of 'virtual' for overridden methods 2015-04-11 02:11:45 +00:00
MipsOs16.cpp Re-sort includes with sort-includes.py and insert raw_ostream.h where it's used. 2015-03-23 19:32:43 +00:00
MipsRegisterInfo.cpp [mips] Move ABI-dependent register selections to MipsABIInfo. NFC. 2015-04-17 09:50:21 +00:00
MipsRegisterInfo.h Mips: Remove dead declaration 2015-04-30 19:35:43 +00:00
MipsRegisterInfo.td
MipsSchedule.td
MipsSEFrameLowering.cpp [ShrinkWrap] Add (a simplified version) of shrink-wrapping. 2015-05-05 17:38:16 +00:00
MipsSEFrameLowering.h [ShrinkWrap] Add (a simplified version) of shrink-wrapping. 2015-05-05 17:38:16 +00:00
MipsSEInstrInfo.cpp [mips] Move ABI-dependent register selections to MipsABIInfo. NFC. 2015-04-17 09:50:21 +00:00
MipsSEInstrInfo.h [mips] Expose adjustStackPtr() from MipsInstrInfo. NFC. 2015-04-02 10:42:44 +00:00
MipsSEISelDAGToDAG.cpp [mips] Correct and improve special-case shuffle instructions. 2015-05-19 12:24:52 +00:00
MipsSEISelDAGToDAG.h [mips] Correct and improve special-case shuffle instructions. 2015-05-19 12:24:52 +00:00
MipsSEISelLowering.cpp [mips] Correct and improve special-case shuffle instructions. 2015-05-19 12:24:52 +00:00
MipsSEISelLowering.h
MipsSelectionDAGInfo.cpp
MipsSelectionDAGInfo.h
MipsSERegisterInfo.cpp [mips] Move ABI-dependent register selections to MipsABIInfo. NFC. 2015-04-17 09:50:21 +00:00
MipsSERegisterInfo.h
MipsSubtarget.cpp [mips] Add the SoftFloat MipsSubtarget feature. 2015-05-07 10:29:52 +00:00
MipsSubtarget.h InMips16HardFloat was only being set conditional on whether or 2015-05-07 23:10:23 +00:00
MipsTargetMachine.cpp Revert r237789 - [mips] The naming convention for private labels is ABI dependant. 2015-05-20 14:18:59 +00:00
MipsTargetMachine.h
MipsTargetObjectFile.cpp Revert r238190 and r238197: [mips] Make TTypeEncoding indirect to allow .eh_frame to be read-only. 2015-05-27 08:44:01 +00:00
MipsTargetObjectFile.h Revert r238190 and r238197: [mips] Make TTypeEncoding indirect to allow .eh_frame to be read-only. 2015-05-27 08:44:01 +00:00
MipsTargetStreamer.h [mips] [IAS] Add support for the .insn directive. 2015-04-16 09:53:47 +00:00
MSA.txt