llvm-6502/lib/Target/Mips
Jack Carter a7570a3d86 There are some Mips instructions that are lowered by the
assembler such as shifts greater than 32. In the case 
of direct object, the code gen needs to do this lowering 
since the assembler is not involved.

With the advent of the llvm-mc assembler, it also needs 
to do the same lowering.

This patch makes that specific lowering code accessible 
to both the direct object output and the assembler.

This patch does not affect generated output.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@163287 91177308-0d34-0410-b5e6-96231b3b80d8
2012-09-06 02:31:34 +00:00
..
AsmParser Mips specific llvm assembler support for ALU instructions. This includes 2012-09-05 23:34:03 +00:00
Disassembler Switch the fixed-length disassembler to be table-driven. 2012-08-14 19:06:05 +00:00
InstPrinter Add HIGHER and HIGHEST relocations to Mips backend. 2012-07-21 03:09:04 +00:00
MCTargetDesc Mips specific llvm assembler support for branch and jump instructions. 2012-09-06 00:43:26 +00:00
TargetInfo remove Emacs-tag form .cpp files in Mips Backend, and fix some typo. 2012-02-17 08:55:11 +00:00
CMakeLists.txt There are some Mips instructions that are lowered by the 2012-09-06 02:31:34 +00:00
LLVMBuild.txt Add disassembler to MIPS. 2012-04-17 18:03:21 +00:00
Makefile Add stub methods for mips assembly matcher. 2012-08-17 20:16:42 +00:00
Mips16FrameLowering.cpp Move the code that creates instances of MipsInstrInfo and MipsFrameLowering out 2012-08-02 18:21:47 +00:00
Mips16FrameLowering.h Add definitions of two subclasses of MipsFrameLowering, Mips16FrameLowering and 2012-07-31 22:50:19 +00:00
Mips16InstrFormats.td Add basic ability to setup call frame, and make procedure calls. 2012-07-23 23:45:54 +00:00
Mips16InstrInfo.cpp Remove unused private field to silence build warning. 2012-08-23 04:45:31 +00:00
Mips16InstrInfo.h Add definitions of two subclasses of MipsRegisterInfo, Mips16RegisterInfo and 2012-07-31 23:41:32 +00:00
Mips16InstrInfo.td 1. Redo mips16 instructions to avoid multiple opcodes for same instruction. 2012-08-03 22:57:02 +00:00
Mips16RegisterInfo.cpp Remove unused private field to silence build warning. 2012-08-23 04:45:31 +00:00
Mips16RegisterInfo.h Remove unused private field to silence build warning. 2012-08-23 04:45:31 +00:00
Mips64InstrInfo.td The instruction DINS may be transformed into DINSU or DEXTM depending 2012-08-31 18:06:48 +00:00
Mips.h Add long branch expansion pass for MIPS. 2012-06-14 01:19:35 +00:00
Mips.td Add stub methods for mips assembly matcher. 2012-08-17 20:16:42 +00:00
MipsAnalyzeImmediate.cpp Fix integer undefined behavior due to signed left shift overflow in LLVM. 2012-08-24 23:29:28 +00:00
MipsAnalyzeImmediate.h Fix undefined behavior in the Mips backend. 2012-03-09 06:36:45 +00:00
MipsAsmPrinter.cpp There are some Mips instructions that are lowered by the 2012-09-06 02:31:34 +00:00
MipsAsmPrinter.h Emit all directives except for ".cprestore" during asm printing rather than emit 2012-03-28 00:22:50 +00:00
MipsCallingConv.td Add Android ABI to Mips backend to handle functions returning vectors of four 2012-08-16 03:48:05 +00:00
MipsCodeEmitter.cpp Add a getName function to MachineFunction. Use it in places that previously did getFunction()->getName(). Remove includes of Function.h that are no longer needed. 2012-08-22 06:07:19 +00:00
MipsCondMov.td 1. introduce MipsPat in place of Pat in order to exclude those from 2012-06-14 21:03:23 +00:00
MipsDelaySlotFiller.cpp Disable Mips' delay slot filler when optimization level is O0. 2012-08-24 20:40:15 +00:00
MipsDirectObjLower.cpp There are some Mips instructions that are lowered by the 2012-09-06 02:31:34 +00:00
MipsDirectObjLower.h There are some Mips instructions that are lowered by the 2012-09-06 02:31:34 +00:00
MipsELFWriterInfo.cpp Fix coding style violations in 162135 and 162136. 2012-08-20 17:53:24 +00:00
MipsELFWriterInfo.h Add MipsELFWriterInfo.{h,cpp}. 2012-08-17 21:38:47 +00:00
MipsFrameLowering.cpp Move the code that creates instances of MipsInstrInfo and MipsFrameLowering out 2012-08-02 18:21:47 +00:00
MipsFrameLowering.h Move the code that creates instances of MipsInstrInfo and MipsFrameLowering out 2012-08-02 18:21:47 +00:00
MipsInstrFormats.td Define ADJCALLSTACKDOWN/UP nodes. These nodes are emitted regardless of whether 2012-07-31 19:13:07 +00:00
MipsInstrFPU.td Add stub methods for mips assembly matcher. 2012-08-17 20:16:42 +00:00
MipsInstrInfo.cpp Make function loadImmediate a member of MipsSEInstrInfo and change it to return 2012-08-23 00:21:05 +00:00
MipsInstrInfo.h Make function loadImmediate a member of MipsSEInstrInfo and change it to return 2012-08-23 00:21:05 +00:00
MipsInstrInfo.td Add missing SDNPSideEffect flags. 2012-08-24 14:43:27 +00:00
MipsISelDAGToDAG.cpp In MipsDAGToDAGISel::SelectAddr, fold add node into address operand, if its 2012-08-24 20:21:49 +00:00
MipsISelLowering.cpp Stop casting away const qualifier needlessly. 2012-09-05 22:26:57 +00:00
MipsISelLowering.h Expand DYNAMIC_STACKALLOC nodes rather than doing custom-lowering. 2012-07-31 20:54:48 +00:00
MipsJITInfo.cpp Implement MipsJITInfo::replaceMachineCodeForFunction. 2012-08-01 02:29:24 +00:00
MipsJITInfo.h Fix coding style violations. Remove white spaces and tabs. 2012-06-14 21:10:56 +00:00
MipsLongBranch.cpp Follow-up patch to r162731. 2012-08-28 18:58:57 +00:00
MipsMachineFunction.cpp Add basic ability to setup call frame, and make procedure calls. 2012-07-23 23:45:54 +00:00
MipsMachineFunction.h Expand DYNAMIC_STACKALLOC nodes rather than doing custom-lowering. 2012-07-31 20:54:48 +00:00
MipsMCInstLower.cpp There are some Mips instructions that are lowered by the 2012-09-06 02:31:34 +00:00
MipsMCInstLower.h There are some Mips instructions that are lowered by the 2012-09-06 02:31:34 +00:00
MipsRegisterInfo.cpp Add a member of type Mips16InstrInfo/MipsSEInstrInfo to class 2012-08-22 23:58:53 +00:00
MipsRegisterInfo.h Add a member of type Mips16InstrInfo/MipsSEInstrInfo to class 2012-08-22 23:58:53 +00:00
MipsRegisterInfo.td Add stub methods for mips assembly matcher. 2012-08-17 20:16:42 +00:00
MipsRelocations.h remove blanks, and some code format 2012-02-28 07:46:26 +00:00
MipsSchedule.td remove blanks, and some code format 2012-02-28 07:46:26 +00:00
MipsSEFrameLowering.cpp Move the code that creates instances of MipsInstrInfo and MipsFrameLowering out 2012-08-02 18:21:47 +00:00
MipsSEFrameLowering.h Add definitions of two subclasses of MipsFrameLowering, Mips16FrameLowering and 2012-07-31 22:50:19 +00:00
MipsSEInstrInfo.cpp Make function loadImmediate a member of MipsSEInstrInfo and change it to return 2012-08-23 00:21:05 +00:00
MipsSEInstrInfo.h Make function loadImmediate a member of MipsSEInstrInfo and change it to return 2012-08-23 00:21:05 +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 Make function loadImmediate a member of MipsSEInstrInfo and change it to return 2012-08-23 00:21:05 +00:00
MipsSERegisterInfo.h Add a member of type Mips16InstrInfo/MipsSEInstrInfo to class 2012-08-22 23:58:53 +00:00
MipsSubtarget.cpp Add register Mips::GP to the list of reserved registers if target is bare-metal 2012-08-22 03:18:13 +00:00
MipsSubtarget.h Add register Mips::GP to the list of reserved registers if target is bare-metal 2012-08-22 03:18:13 +00:00
MipsTargetMachine.cpp Add register Mips::GP to the list of reserved registers if target is bare-metal 2012-08-22 03:18:13 +00:00
MipsTargetMachine.h Fix coding style violations in 162135 and 162136. 2012-08-20 17:53:24 +00:00
MipsTargetObjectFile.cpp Fix UseInitArray option for MIPS target. 2012-09-05 06:17:17 +00:00
MipsTargetObjectFile.h