llvm-6502/lib/Target/Mips
Reed Kotler 6b9d461780 For Mips 16, add the optimization where the 16 bit form of addiu sp can be used
if the offset fits in 11 bits. This makes use of the fact that the abi
requires sp to be 8 byte aligned so the actual offset can fit in 8
bits. It will be shifted left and sign extended before being actually used.
The assembler or direct object emitter will shift right the 11 bit
signed field by 3 bits. We don't need to deal with that here.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@175073 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-13 20:28:27 +00:00
..
AsmParser This patch implements parsing the .word 2013-01-25 01:31:34 +00:00
Disassembler This is a resubmittal. For some reason it broke the bots yesterday 2013-01-19 02:00:40 +00:00
InstPrinter This patch that sets the EmitAlias flag in td files 2013-02-05 08:32:10 +00:00
MCTargetDesc This patch that sets the Mips ELF header flag for 2013-02-05 09:30:03 +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 Remove edis - the enhanced disassembler. Fixes PR14654. 2012-12-19 19:55:47 +00:00
LLVMBuild.txt
Makefile Remove edis - the enhanced disassembler. Fixes PR14654. 2012-12-19 19:55:47 +00:00
Mips16FrameLowering.cpp Move all of the header files which are involved in modelling the LLVM IR 2013-01-02 11:36:10 +00:00
Mips16FrameLowering.h
Mips16InstrFormats.td
Mips16InstrInfo.cpp For Mips 16, add the optimization where the 16 bit form of addiu sp can be used 2013-02-13 20:28:27 +00:00
Mips16InstrInfo.h For Mips 16, add the optimization where the 16 bit form of addiu sp can be used 2013-02-13 20:28:27 +00:00
Mips16InstrInfo.td For Mips 16, add the optimization where the 16 bit form of addiu sp can be used 2013-02-13 20:28:27 +00:00
Mips16RegisterInfo.cpp When Mips16 frames grow large, the immediate field may exceed the maximum 2013-02-08 03:57:41 +00:00
Mips16RegisterInfo.h [mips] 80 columns. 2013-01-04 19:38:05 +00:00
Mips64InstrInfo.td [mips] Add definition of JALR instruction which has two register operands. Change the 2013-02-07 19:48:00 +00:00
Mips.h
Mips.td This patch that sets the Mips ELF header flag for 2013-02-05 09:30:03 +00:00
MipsAnalyzeImmediate.cpp
MipsAnalyzeImmediate.h
MipsAsmPrinter.cpp [mips] Make NOP a pseudo instruction and expand it to "sll $zero, $zero, 0". 2013-02-06 21:50:15 +00:00
MipsAsmPrinter.h This is a resubmittal. For some reason it broke the bots yesterday 2013-01-18 21:20:38 +00:00
MipsCallingConv.td
MipsCodeEmitter.cpp [mips] Expand pseudo instructions before they are emitted in 2013-02-11 22:35:40 +00:00
MipsCondMov.td [mips] Refactor conditional move instructions. 2013-01-04 19:16:38 +00:00
MipsDelaySlotFiller.cpp [mips] Make Filler a class and reduce indentation. 2013-02-07 21:32:32 +00:00
MipsDSPInstrFormats.td [mips] Remove asm string parameter from pseudo instructions. Add InstrItinClass 2012-12-20 04:20:09 +00:00
MipsDSPInstrInfo.td [mips] Remove asm string parameter from pseudo instructions. Add InstrItinClass 2012-12-20 04:20:09 +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
MipsInstrFormats.td [mips] Add definition of JALR instruction which has two register operands. Change the 2013-02-07 19:48:00 +00:00
MipsInstrFPU.td [mips] Set flag neverHasSideEffects flag on some of the floating point instructions. 2013-01-25 00:20:39 +00:00
MipsInstrInfo.cpp
MipsInstrInfo.h
MipsInstrInfo.td Add the 16 bit version of addiu. To the assembler, the 16 and 32 bit are the 2013-02-08 21:42:56 +00:00
MipsISelDAGToDAG.cpp Move all of the header files which are involved in modelling the LLVM IR 2013-01-02 11:36:10 +00:00
MipsISelLowering.cpp [mips] Do not use function CC_MipsN_VarArg unless the function being analyzed 2013-02-05 21:18:11 +00:00
MipsISelLowering.h [mips] Lower EH_RETURN. 2013-01-30 00:26:49 +00:00
MipsJITInfo.cpp Move all of the header files which are involved in modelling the LLVM IR 2013-01-02 11:36:10 +00:00
MipsJITInfo.h
MipsLongBranch.cpp This is a resubmittal. For some reason it broke the bots yesterday 2013-01-19 02:00:40 +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
MipsMCInstLower.h
MipsRegisterInfo.cpp [PEI] Pass the frame index operand number to the eliminateFrameIndex function. 2013-01-31 20:02:54 +00:00
MipsRegisterInfo.h [PEI] Pass the frame index operand number to the eliminateFrameIndex function. 2013-01-31 20:02:54 +00:00
MipsRegisterInfo.td This is a resubmittal. For some reason it broke the bots yesterday 2013-01-17 00:28:20 +00:00
MipsRelocations.h
MipsSchedule.td
MipsSEFrameLowering.cpp [mips] Lower EH_RETURN. 2013-01-30 00:26:49 +00:00
MipsSEFrameLowering.h [mips] Lower EH_RETURN. 2013-01-30 00:26:49 +00:00
MipsSEInstrInfo.cpp [mips] Lower EH_RETURN. 2013-01-30 00:26:49 +00:00
MipsSEInstrInfo.h [mips] Lower EH_RETURN. 2013-01-30 00:26:49 +00:00
MipsSelectionDAGInfo.cpp
MipsSelectionDAGInfo.h
MipsSERegisterInfo.cpp [mips] Lower EH_RETURN. 2013-01-30 00:26:49 +00:00
MipsSERegisterInfo.h
MipsSubtarget.cpp This patch that sets the Mips ELF header flag for 2013-02-05 09:30:03 +00:00
MipsSubtarget.h This patch that sets the Mips ELF header flag for 2013-02-05 09:30:03 +00:00
MipsTargetMachine.cpp Switch TargetTransformInfo from an immutable analysis pass that requires 2013-01-07 01:37:14 +00:00
MipsTargetMachine.h Switch TargetTransformInfo from an immutable analysis pass that requires 2013-01-07 01:37:14 +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