llvm-6502/lib/Target/Mips
Reed Kotler b1fa7d4d26 Fix some issues with Mips16 floating when certain intrinsics are present.
This is actually an LLVM bug in the way it generates signatures for these
when soft float is enabled. For example, floor ends up having the signature
of int64(int64). The signature part is not the same as where the actual
parameter types are recorded, and those ARE of course int64(int64) when
soft float is enabled. (Yes, Mips16 hard float uses soft float but with
different runtime rounes but then has to interoperate with Mips32 using
normal floating point). This logic will eventually be moved to the 
Mips16HardFloat pass so it's not worth sorting out these issues in LLVM
since nobody but Mips16 cares about these signatures, as far as I know,
and even I won't eventually either.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@187613 91177308-0d34-0410-b5e6-96231b3b80d8
2013-08-01 21:17:53 +00:00
..
AsmParser This patch implements parsing of mips FCC register operands. The example instructions have been added to test files. 2013-07-30 10:12:14 +00:00
Disassembler [mips] Fix FP branch instructions to have explicit FP condition code register 2013-07-26 20:13:47 +00:00
InstPrinter [mips] Define "bal" as a pseudo instruction. Also, fix bug in the InstAlias that 2013-07-30 20:24:24 +00:00
MCTargetDesc Mips ELF: Mark object file as ABI compliant 2013-06-18 19:47:15 +00:00
TargetInfo Move all of the header files which are involved in modelling the LLVM IR 2013-01-02 11:36:10 +00:00
CMakeLists.txt Test commit to verify write access. 2013-07-16 17:44:23 +00:00
LLVMBuild.txt Add disassembler to MIPS. 2012-04-17 18:03:21 +00:00
Makefile Remove edis - the enhanced disassembler. Fixes PR14654. 2012-12-19 19:55:47 +00:00
MicroMipsInstrFormats.td [mips] Add definitions of micromips load and store instructions. 2013-04-25 01:21:25 +00:00
MicroMipsInstrInfo.td [mips] Define instruction itineraries IIArith and IILogic. 2013-07-31 00:55:34 +00:00
Mips16FrameLowering.cpp Use pointers to the MCAsmInfo and MCRegInfo. 2013-06-18 07:20:20 +00:00
Mips16FrameLowering.h [mips] Add parameter Alignment to MipsFrameLowering's constructor. 2013-03-29 01:51:04 +00:00
Mips16HardFloat.cpp Fix some misc. issues with Mips16 fp stubs. 2013-08-01 02:26:31 +00:00
Mips16HardFloat.h Checkin in of first of several patches to finish implementation of 2013-05-10 22:25:39 +00:00
Mips16InstrFormats.td Mips td file formatting: white space and long lines 2013-05-16 20:08:49 +00:00
Mips16InstrInfo.cpp Don't cache the instruction and register info from the TargetMachine, because 2013-06-07 07:04:14 +00:00
Mips16InstrInfo.h [mips] Rename functions. No functionality changes. 2013-05-13 17:43:19 +00:00
Mips16InstrInfo.td Add an omitted IsCall=1. 2013-08-01 00:59:06 +00:00
Mips16ISelDAGToDAG.cpp Access the TargetLoweringInfo from the TargetMachine object instead of caching it. The TLI may change between functions. No functionality change. 2013-06-19 21:36:55 +00:00
Mips16ISelDAGToDAG.h Track IR ordering of SelectionDAG nodes 2/4. 2013-05-25 02:42:55 +00:00
Mips16ISelLowering.cpp Fix some issues with Mips16 floating when certain intrinsics are present. 2013-08-01 21:17:53 +00:00
Mips16ISelLowering.h Mips: Remove global set. 2013-06-13 19:06:52 +00:00
Mips16RegisterInfo.cpp Don't cache the instruction and register info from the TargetMachine, because 2013-06-07 07:04:14 +00:00
Mips16RegisterInfo.h Don't cache the instruction and register info from the TargetMachine, because 2013-06-07 07:04:14 +00:00
Mips64InstrInfo.td [mips] Rename instruction DANDi to ANDi64. 2013-07-31 00:57:41 +00:00
Mips.h [mips] Add an IR transformation pass that optimizes calls to sqrt. 2013-06-11 22:21:44 +00:00
Mips.td Moving definition of MnemonicContainsDot field from class Instruction to class AsmParser as suggested. 2013-08-01 09:25:27 +00:00
MipsAnalyzeImmediate.cpp Replace Count{Leading,Trailing}Zeros_{32,64} with count{Leading,Trailing}Zeros. 2013-05-24 22:23:49 +00:00
MipsAnalyzeImmediate.h Fix undefined behavior in the Mips backend. 2012-03-09 06:36:45 +00:00
MipsAsmPrinter.cpp [mips] Do not emit ".option pic0" if target is mips64. 2013-06-26 19:08:49 +00:00
MipsAsmPrinter.h DebugInfo: remove target-specific Frame Index handling for DBG_VALUE MachineInstrs 2013-06-16 20:34:27 +00:00
MipsCallingConv.td Mips td file formatting: white space and long lines 2013-05-16 20:08:49 +00:00
MipsCodeEmitter.cpp Don't cache the instruction and register info from the TargetMachine, because 2013-06-07 07:04:14 +00:00
MipsCondMov.td [mips] Define instruction itineraries IIArith and IILogic. 2013-07-31 00:55:34 +00:00
MipsConstantIslandPass.cpp Don't cache the instruction and register info from the TargetMachine, because 2013-06-07 07:04:14 +00:00
MipsDelaySlotFiller.cpp Use SmallVectorImpl::iterator/const_iterator instead of SmallVector to avoid specifying the vector size. 2013-07-03 15:07:05 +00:00
MipsDSPInstrFormats.td [mips] DSP-ASE move from HI/LO register instructions. 2013-04-18 00:52:44 +00:00
MipsDSPInstrInfo.td [mips] Split the DSP control register and define one register for each field of 2013-05-03 18:37:49 +00:00
MipsFrameLowering.cpp Move all of the header files which are involved in modelling the LLVM IR 2013-01-02 11:36:10 +00:00
MipsFrameLowering.h [mips] Add parameter Alignment to MipsFrameLowering's constructor. 2013-03-29 01:51:04 +00:00
MipsInstrFormats.td Moving definition of MnemonicContainsDot field from class Instruction to class AsmParser as suggested. 2013-08-01 09:25:27 +00:00
MipsInstrFPU.td This patch implements parsing of mips FCC register operands. The example instructions have been added to test files. 2013-07-30 10:12:14 +00:00
MipsInstrInfo.cpp DebugInfo: remove target-specific Frame Index handling for DBG_VALUE MachineInstrs 2013-06-16 20:34:27 +00:00
MipsInstrInfo.h DebugInfo: remove target-specific Frame Index handling for DBG_VALUE MachineInstrs 2013-06-16 20:34:27 +00:00
MipsInstrInfo.td [mips] Define instruction itineraries IIArith and IILogic. 2013-07-31 00:55:34 +00:00
MipsISelDAGToDAG.cpp Access the TargetLoweringInfo from the TargetMachine object instead of caching it. The TLI may change between functions. No functionality change. 2013-06-19 21:36:55 +00:00
MipsISelDAGToDAG.h [mips] Rename functions and variables to start with proper case. 2013-03-14 18:33:23 +00:00
MipsISelLowering.cpp [mips] Implement llvm.trap intrinsic. 2013-07-26 20:58:55 +00:00
MipsISelLowering.h Use SmallVectorImpl& instead of SmallVector to avoid repeating small vector size. 2013-07-14 04:42:23 +00:00
MipsJITInfo.cpp [test commit] Minor comment change. 2013-07-24 13:02:35 +00:00
MipsJITInfo.h Classic JIT is still being supported by MIPS, along with MCJIT. 2012-12-03 23:11:12 +00:00
MipsLongBranch.cpp Use SmallVectorImpl::iterator/const_iterator instead of SmallVector to avoid specifying the vector size. 2013-07-04 01:31:24 +00:00
MipsMachineFunction.cpp [mips] Lower EH_RETURN. 2013-01-30 00:26:49 +00:00
MipsMachineFunction.h [mips] Lower EH_RETURN. 2013-01-30 00:26:49 +00:00
MipsMCInstLower.cpp Use the new script to sort the includes of every file under lib. 2012-12-03 16:50:05 +00:00
MipsMCInstLower.h MIPS DSP: add code necessary for pseudo instruction lowering. 2012-09-27 01:59:07 +00:00
MipsModuleISelDAGToDAG.cpp This patch enables llvm to switch between compiling for mips32/mips64 2013-04-09 19:46:01 +00:00
MipsModuleISelDAGToDAG.h This patch enables llvm to switch between compiling for mips32/mips64 2013-04-09 19:46:01 +00:00
MipsOptimizeMathLibCalls.cpp [mips] Add an IR transformation pass that optimizes calls to sqrt. 2013-06-11 22:21:44 +00:00
MipsOs16.cpp 80 columns. 2013-04-22 20:13:37 +00:00
MipsOs16.h This is for an experimental option -mips-os16. The idea is to compile all 2013-04-10 16:58:04 +00:00
MipsRegisterInfo.cpp Checkin in of first of several patches to finish implementation of 2013-05-10 22:25:39 +00:00
MipsRegisterInfo.h Checkin in of first of several patches to finish implementation of 2013-05-10 22:25:39 +00:00
MipsRegisterInfo.td This patch implements parsing of mips FCC register operands. The example instructions have been added to test files. 2013-07-30 10:12:14 +00:00
MipsRelocations.h remove blanks, and some code format 2012-02-28 07:46:26 +00:00
MipsSchedule.td [mips] Define instruction itineraries IIArith and IILogic. 2013-07-31 00:55:34 +00:00
MipsSEFrameLowering.cpp Use pointers to the MCAsmInfo and MCRegInfo. 2013-06-18 07:20:20 +00:00
MipsSEFrameLowering.h [mips] Add parameter Alignment to MipsFrameLowering's constructor. 2013-03-29 01:51:04 +00:00
MipsSEInstrInfo.cpp [mips] Use ADDu instead of OR to copy general purpose registers. Also, delete 2013-07-22 18:52:22 +00:00
MipsSEInstrInfo.h [mips] Use function TargetInstrInfo::getRegClass. 2013-06-11 18:48:16 +00:00
MipsSEISelDAGToDAG.cpp Access the TargetLoweringInfo from the TargetMachine object instead of caching it. The TLI may change between functions. No functionality change. 2013-06-19 21:36:55 +00:00
MipsSEISelDAGToDAG.h Track IR ordering of SelectionDAG nodes 2/4. 2013-05-25 02:42:55 +00:00
MipsSEISelLowering.cpp [mips] Improve code generation for constant multiplication using shifts, adds and 2013-06-26 18:48:17 +00:00
MipsSEISelLowering.h [mips] Move MipsTargetLowering::lowerINTRINSIC_W_CHAIN and 2013-04-13 02:13:30 +00:00
MipsSelectionDAGInfo.cpp remove Emacs-tag form .cpp files in Mips Backend, and fix some typo. 2012-02-17 08:55:11 +00:00
MipsSelectionDAGInfo.h
MipsSERegisterInfo.cpp Don't cache the instruction and register info from the TargetMachine, because 2013-06-07 07:04:14 +00:00
MipsSERegisterInfo.h Don't cache the instruction and register info from the TargetMachine, because 2013-06-07 07:04:14 +00:00
MipsSubtarget.cpp Checkin in of first of several patches to finish implementation of 2013-05-10 22:25:39 +00:00
MipsSubtarget.h [mips] Implement MipsTargetMachine::getInstrItineraryData(). 2013-07-12 23:33:22 +00:00
MipsTargetMachine.cpp [mips] Implement MipsTargetMachine::getInstrItineraryData(). 2013-07-12 23:33:22 +00:00
MipsTargetMachine.h [mips] Implement MipsTargetMachine::getInstrItineraryData(). 2013-07-12 23:33:22 +00:00
MipsTargetObjectFile.cpp This is a resubmittal. For some reason it broke the bots yesterday 2013-01-18 21:20:38 +00:00
MipsTargetObjectFile.h This is a resubmittal. For some reason it broke the bots yesterday 2013-01-18 21:20:38 +00:00