llvm-6502/lib/Target/Mips
Daniel Sanders 7bc4a7ced6 [mips][sched] Split IIArith in preparation for the first scheduler targeting a specific MIPS CPU.
IIArith -> II_ADD, II_ADDU, II_AND, II_CL[ZO], II_DADDIU, II_DADDU,
  II_DROTR, II_DROTR32, II_DROTRV, II_DSLL, II_DSLL32, II_DSLLV,
  II_DSR[AL], II_DSR[AL]32, II_DSR[AL]V, II_DSUBU, II_LUI, II_MOV[ZFNT],
  II_NOR, II_OR, II_RDHWR, II_ROTR, II_ROTRV, II_SLL, II_SLLV, II_SR[AL],
  II_SR[AL]V, II_SUBU, II_XOR

No functional change since the InstrItinData's have been duplicated.

This is necessary because the classes are shared between all schedulers.

Once this patch series is committed there will be an InstrItinClass for
each mnemonic with minimal grouping. This does increase the size of the
itinerary tables for each MIPS scheduler but we have a few options for dealing
with that later. These options include reducing the number of classes once
we see the best way to simplify them, or by extending tablegen to be able
to compress the table by eliminating duplicates entries, etc.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@199391 91177308-0d34-0410-b5e6-96231b3b80d8
2014-01-16 14:27:20 +00:00
..
AsmParser Replace .mips_hack_stocg with ".set micromips" and ".set nomicromips". 2014-01-14 04:25:13 +00:00
Disassembler [mips][msa] Fix issue with immediate fields of LD/ST instructions 2013-12-05 11:06:22 +00:00
InstPrinter Distinguish and choose 16 or 32 bit forms of save/restore for Mips16. 2013-12-11 03:32:44 +00:00
MCTargetDesc Fix uninitialized variable. 2014-01-15 03:27:26 +00:00
TargetInfo Prune redundant dependencies in LLVMBuild.txt. 2013-12-11 00:30:57 +00:00
CMakeLists.txt [CMake] Let add_public_tablegen_target() provide intrinsics_gen, too. 2013-11-28 17:04:31 +00:00
LLVMBuild.txt Add proper dependencies to LLVMBuild.txt in llvm/lib. 2013-12-10 05:39:34 +00:00
Makefile
MicroMipsInstrFormats.td Support for microMIPS FPU instructions 2. 2013-12-25 10:09:27 +00:00
MicroMipsInstrFPU.td Support for microMIPS FPU instructions 2. 2013-12-25 10:09:27 +00:00
MicroMipsInstrInfo.td [mips][sched] Split IIArith in preparation for the first scheduler targeting a specific MIPS CPU. 2014-01-16 14:27:20 +00:00
Mips16FrameLowering.cpp Fix some indentation. 2013-12-15 23:03:35 +00:00
Mips16FrameLowering.h [mips] Align the stack to 16-bytes for mfp64. 2013-10-29 19:29:03 +00:00
Mips16HardFloat.cpp Re-sort all of the includes with ./utils/sort_includes.py so that 2014-01-07 11:48:04 +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 Create a pattern for the "trap" instruction. 2013-08-07 04:00:26 +00:00
Mips16InstrInfo.cpp remove an uneeded statement (condition is covered by the statement 2013-12-15 23:33:59 +00:00
Mips16InstrInfo.h Delete dead code. 2013-12-06 00:13:50 +00:00
Mips16InstrInfo.td Adjust offsets for max load instruction offsets. This is more pessimistic 2014-01-16 00:47:46 +00:00
Mips16ISelDAGToDAG.cpp Re-sort all of the includes with ./utils/sort_includes.py so that 2014-01-07 11:48:04 +00:00
Mips16ISelDAGToDAG.h Track IR ordering of SelectionDAG nodes 2/4. 2013-05-25 02:42:55 +00:00
Mips16ISelLowering.cpp Re-sort all of the includes with ./utils/sort_includes.py so that 2014-01-07 11:48:04 +00:00
Mips16ISelLowering.h Mips: Remove global set. 2013-06-13 19:06:52 +00:00
Mips16RegisterInfo.cpp Re-sort all of the includes with ./utils/sort_includes.py so that 2014-01-07 11:48:04 +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][sched] Split IIArith in preparation for the first scheduler targeting a specific MIPS CPU. 2014-01-16 14:27:20 +00:00
Mips.h [mips] Revert test commit r195922. 2013-11-28 15:26:33 +00:00
Mips.td Change the default of AsmWriterClassName and isMCAsmWriter. 2013-12-02 04:55:42 +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 Even more spelling fixes for "instruction". 2013-09-28 13:42:22 +00:00
MipsAsmPrinter.cpp Fix a low hanging use of hasRawTextSupport. 2014-01-14 18:57:12 +00:00
MipsAsmPrinter.h Fix a bug related to constant islands for Mips16 and mips16/32 dual mode. 2013-11-26 20:38:40 +00:00
MipsCallingConv.td Last change for mips16 prolog/epilog cleanup and optimization. 2013-12-15 20:49:30 +00:00
MipsCodeEmitter.cpp Re-sort all of the includes with ./utils/sort_includes.py so that 2014-01-07 11:48:04 +00:00
MipsCondMov.td [mips][sched] Split IIArith in preparation for the first scheduler targeting a specific MIPS CPU. 2014-01-16 14:27:20 +00:00
MipsConstantIslandPass.cpp Adjust offsets for max load instruction offsets. This is more pessimistic 2014-01-16 00:47:46 +00:00
MipsDelaySlotFiller.cpp [mips] Coding style clean up. 2013-10-07 19:33:02 +00:00
MipsDSPInstrFormats.td [mips] DSP-ASE move from HI/LO register instructions. 2013-04-18 00:52:44 +00:00
MipsDSPInstrInfo.td [mips] Define a pseudo instruction which writes to both the lower and higher 2013-10-15 01:48:30 +00:00
MipsFrameLowering.cpp
MipsFrameLowering.h
MipsInstrFormats.td Support for microMIPS FPU instructions 2. 2013-12-25 10:09:27 +00:00
MipsInstrFPU.td Support for microMIPS FPU instructions 2. 2013-12-25 10:09:27 +00:00
MipsInstrInfo.cpp [weak vtables] Remove a bunch of weak vtables 2013-11-19 00:57:56 +00:00
MipsInstrInfo.h [weak vtables] Remove a bunch of weak vtables 2013-11-19 00:57:56 +00:00
MipsInstrInfo.td [mips][sched] Split IIArith in preparation for the first scheduler targeting a specific MIPS CPU. 2014-01-16 14:27:20 +00:00
MipsISelDAGToDAG.cpp Re-sort all of the includes with ./utils/sort_includes.py so that 2014-01-07 11:48:04 +00:00
MipsISelDAGToDAG.h [mips][msa] Added support for matching bclr, and bclri from normal IR (i.e. not intrinsics) 2013-11-12 10:45:18 +00:00
MipsISelLowering.cpp Remove unnecessary #includes. 2014-01-06 06:00:00 +00:00
MipsISelLowering.h Re-sort all of the includes with ./utils/sort_includes.py so that 2014-01-07 11:48:04 +00:00
MipsJITInfo.cpp [test commit] Minor comment change. 2013-07-24 13:02:35 +00:00
MipsJITInfo.h
MipsLongBranch.cpp Fixed issue with microMIPS long branch. 2013-11-30 19:12:28 +00:00
MipsMachineFunction.cpp [mips] Simplify and optimize code. 2013-10-08 18:13:24 +00:00
MipsMachineFunction.h [mips] Define a derived class of PseudoSourceValue that represents a GOT entry 2013-09-27 22:30:36 +00:00
MipsMCInstLower.cpp Move the llvm mangler to lib/IR. 2014-01-07 21:19:40 +00:00
MipsMCInstLower.h The asm printer has a mangler. Use it. 2013-10-29 16:24:21 +00:00
MipsModuleISelDAGToDAG.cpp
MipsModuleISelDAGToDAG.h
MipsMSAInstrFormats.td [mips][msa] Pseudo instructions require HasMSA too. Inherit from MSAPseudo instead of MipsPseudo 2013-11-20 14:32:28 +00:00
MipsMSAInstrInfo.td [mips][msa] Correct sld and sldi builtins. 2013-12-10 11:37:00 +00:00
MipsOptimizePICCall.cpp Re-sort all of the includes with ./utils/sort_includes.py so that 2014-01-07 11:48:04 +00:00
MipsOs16.cpp Make nomips16 mask not repeat if it ends with a '.'. 2013-09-23 22:36:11 +00:00
MipsOs16.h
MipsRegisterInfo.cpp Next step in Mips16 prologue/epilogue cleanup. 2013-12-10 14:29:38 +00:00
MipsRegisterInfo.h Remove getEHExceptionRegister and getEHHandlerRegister. 2013-10-07 13:39:22 +00:00
MipsRegisterInfo.td [mips][msa] Direct Object Emission support for CTCMSA and CFCMSA. 2013-10-21 12:26:50 +00:00
MipsRelocations.h
MipsSchedule.td [mips][sched] Split IIArith in preparation for the first scheduler targeting a specific MIPS CPU. 2014-01-16 14:27:20 +00:00
MipsSEFrameLowering.cpp [mips] Fix definition of mfhi and mflo instructions to read from the whole 2013-10-07 18:49:46 +00:00
MipsSEFrameLowering.h [mips] Align the stack to 16-bytes for mfp64. 2013-10-29 19:29:03 +00:00
MipsSEInstrInfo.cpp [mips] Fix 'ran out of registers' in MIPS32 with FP64 when generating code for (ConstantFP 0.0) 2013-11-18 13:12:43 +00:00
MipsSEInstrInfo.h [mips] Define a pseudo instruction which writes to both the lower and higher 2013-10-15 01:48:30 +00:00
MipsSEISelDAGToDAG.cpp Re-sort all of the includes with ./utils/sort_includes.py so that 2014-01-07 11:48:04 +00:00
MipsSEISelDAGToDAG.h [mips][msa] Added support for matching bclr, and bclri from normal IR (i.e. not intrinsics) 2013-11-12 10:45:18 +00:00
MipsSEISelLowering.cpp [mips] Implement the following optimizations using dominance information to 2013-11-27 23:38:42 +00:00
MipsSEISelLowering.h [mips][msa] Added support for matching fexp2 from normal IR (i.e. not intrinsics) 2013-10-23 10:36:52 +00:00
MipsSelectionDAGInfo.cpp
MipsSelectionDAGInfo.h
MipsSERegisterInfo.cpp [mips][msa] Fix invalid generated code when lowering FrameIndex involving unaligned offsets. 2013-12-09 12:47:12 +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 Re-sort all of the includes with ./utils/sort_includes.py so that 2014-01-07 11:48:04 +00:00
MipsSubtarget.h Re-sort all of the includes with ./utils/sort_includes.py so that 2014-01-07 11:48:04 +00:00
MipsTargetMachine.cpp Re-sort all of the includes with ./utils/sort_includes.py so that 2014-01-07 11:48:04 +00:00
MipsTargetMachine.h [mips] Implement MipsTargetMachine::getInstrItineraryData(). 2013-07-12 23:33:22 +00:00
MipsTargetObjectFile.cpp
MipsTargetObjectFile.h
MipsTargetStreamer.h Fix a low hanging use of hasRawTextSupport. 2014-01-14 18:57:12 +00:00
MSA.txt [mips][msa] Added support for matching bclr, and bclri from normal IR (i.e. not intrinsics) 2013-11-12 10:45:18 +00:00