llvm-6502/lib/Target/Mips
Akira Hatanaka b4b4fa80ba [mips] Expand pseudo instructions before they are emitted in
MipsCodeEmitter.cpp.

JALR and NOP are expanded by function emitPseudoExpansionLowering, which is not
called when the old JIT is used.

This fixes the following tests which have been failing on
llvm-mips-linux builder:

LLVM :: ExecutionEngine__2003-01-04-LoopTest.ll
LLVM :: ExecutionEngine__2003-05-06-LivenessClobber.ll
LLVM :: ExecutionEngine__2003-06-04-bzip2-bug.ll
LLVM :: ExecutionEngine__2005-12-02-TailCallBug.ll
LLVM :: ExecutionEngine__2003-10-18-PHINode-ConstantExpr-CondCode-Failure.ll
LLVM :: ExecutionEngine__hello2.ll
LLVM :: ExecutionEngine__stubs.ll
LLVM :: ExecutionEngine__test-branch.ll
LLVM :: ExecutionEngine__test-call.ll
LLVM :: ExecutionEngine__test-common-symbols.ll
LLVM :: ExecutionEngine__test-loadstore.ll
LLVM :: ExecutionEngine__test-loop.ll


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174912 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-11 22:35:40 +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 When Mips16 frames grow large, the immediate field may exceed the maximum 2013-02-08 03:57:41 +00:00
Mips16InstrInfo.h When Mips16 frames grow large, the immediate field may exceed the maximum 2013-02-08 03:57:41 +00:00
Mips16InstrInfo.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
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 Use the new script to sort the includes of every file under lib. 2012-12-03 16:50:05 +00:00
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 Classic JIT is still being supported by MIPS, along with MCJIT. 2012-12-03 23:11:12 +00:00
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 Use the new script to sort the includes of every file under lib. 2012-12-03 16:50:05 +00:00
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