llvm-project/llvm/lib/Target/Mips
Hans Wennborg e1a2e90ffa Change eliminateCallFramePseudoInstr() to return an iterator
This will become necessary in a subsequent change to make this method
merge adjacent stack adjustments, i.e. it might erase the previous
and/or next instruction.

It also greatly simplifies the calls to this function from Prolog-
EpilogInserter. Previously, that had a bunch of logic to resume iteration
after the call; now it just continues with the returned iterator.

Note that this changes the behaviour of PEI a little. Previously,
it attempted to re-visit the new instruction created by
eliminateCallFramePseudoInstr(). That code was added in r36625,
but I can't see any reason for it: the new instructions will obviously
not be pseudo instructions, they will not have FrameIndex operands,
and we have already accounted for the stack adjustment.

Differential Revision: http://reviews.llvm.org/D18627

llvm-svn: 265036
2016-03-31 18:33:38 +00:00
..
AsmParser [mips] Range check simm16 2016-03-31 14:34:00 +00:00
Disassembler [mips] Range check simm16 2016-03-31 14:34:00 +00:00
InstPrinter [mips] Use `formatImm` call to print immediate value in the `MipsInstPrinter` 2016-03-17 10:43:36 +00:00
MCTargetDesc [mips] Split mem_msa into range checked mem_simm10 and mem_simm10_lsl[123] 2016-03-31 14:12:01 +00:00
TargetInfo Remove autoconf support 2016-01-26 21:29:08 +00:00
CMakeLists.txt [mips] MIPS32R6 compact branch support 2016-03-14 16:24:05 +00:00
LLVMBuild.txt Wrap some long lines in LLVMBuild files. NFC 2015-06-12 18:44:57 +00:00
MSA.txt Revert: r249536 - Testing commit access with a trival whitespace change. 2015-10-07 10:57:06 +00:00
MicroMips32r6InstrFormats.td [mips][microMIPS] Implement MTC*, MTHC* and DMTC* instructions 2016-03-24 08:02:09 +00:00
MicroMips32r6InstrInfo.td [mips][microMIPS] Implement MFC*, MFHC* and DMFC* instructions 2016-03-31 08:51:24 +00:00
MicroMips64r6InstrFormats.td [mips][microMIPS] Add CodeGen support for DIV, MOD, DIVU, MODU, DDIV, DMOD, DDIVU and DMODU instructions 2016-03-24 09:22:45 +00:00
MicroMips64r6InstrInfo.td [mips][microMIPS] Implement MFC*, MFHC* and DMFC* instructions 2016-03-31 08:51:24 +00:00
MicroMipsDSPInstrFormats.td [mips][microMIPS][DSP] Implement PACKRL.PH, PICK.PH, PICK.QB, SHILO, SHILOV and WRDSP instructions 2015-12-18 08:59:37 +00:00
MicroMipsDSPInstrInfo.td [mips] Range check uimm16 and fix several bugs this revealed. 2016-02-01 15:13:31 +00:00
MicroMipsInstrFPU.td [mips][microMIPS] Implement MFC*, MFHC* and DMFC* instructions 2016-03-31 08:51:24 +00:00
MicroMipsInstrFormats.td [mips][microMIPS] Implement LWM16, SB16, SH16, SW16, SWSP and SWM16 instructions 2015-11-12 13:21:33 +00:00
MicroMipsInstrInfo.td [mips] Range check simm9 and fix a bug this revealed. 2016-03-31 13:15:23 +00:00
Mips.h [Mips] Fix -Wunused-private-field warning after r263444. 2016-03-14 18:10:20 +00:00
Mips.td [TableGen] Remove MnemonicContainsDot from AsmParser. It isn't used. NFC 2015-12-29 07:03:30 +00:00
Mips16FrameLowering.cpp Remove windows line endings introduced by r252177. NFC. 2015-11-05 21:54:58 +00:00
Mips16FrameLowering.h PrologEpilogInserter: Rewrite API to determine callee save regsiters. 2015-07-14 17:17:13 +00:00
Mips16HardFloat.cpp [mips] Use range-based for loops. NFC. 2016-03-14 15:05:30 +00:00
Mips16HardFloatInfo.cpp Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
Mips16HardFloatInfo.h Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
Mips16ISelDAGToDAG.cpp [mips] Remove redundant inclusions of MipsAnalyzeImmediate.h 2016-02-03 15:54:12 +00:00
Mips16ISelDAGToDAG.h Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
Mips16ISelLowering.cpp Mips: Remove implicit ilist iterator conversions, NFC 2015-10-20 00:15:20 +00:00
Mips16ISelLowering.h Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
Mips16InstrFormats.td
Mips16InstrInfo.cpp Remove windows line endings introduced by r252177. NFC. 2015-11-05 21:54:58 +00:00
Mips16InstrInfo.h Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
Mips16InstrInfo.td [mips] Correct MIPS16 jal/jalx to have uimm26 offsets and add MC layer range checks. NFC. 2016-03-29 09:40:38 +00:00
Mips16RegisterInfo.cpp [mips] Remove redundant inclusions of MipsAnalyzeImmediate.h 2016-02-03 15:54:12 +00:00
Mips16RegisterInfo.h
Mips32r6InstrFormats.td
Mips32r6InstrInfo.td [mips][microMIPS] Add CodeGen support for DIV, MOD, DIVU, MODU, DDIV, DMOD, DDIVU and DMODU instructions 2016-03-24 09:22:45 +00:00
Mips64InstrInfo.td [mips][microMIPS] Implement MFC*, MFHC* and DMFC* instructions 2016-03-31 08:51:24 +00:00
Mips64r6InstrInfo.td [mips] Range check simm16 2016-03-31 14:34:00 +00:00
MipsAnalyzeImmediate.cpp
MipsAnalyzeImmediate.h Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
MipsAsmPrinter.cpp [mips] Range check uimm20 and fixed a bug this revealed. 2016-02-29 16:06:38 +00:00
MipsAsmPrinter.h [mips] Range check uimm20 and fixed a bug this revealed. 2016-02-29 16:06:38 +00:00
MipsCCState.cpp [mips] Fix an issue with long double when function roundl is defined 2016-03-14 12:50:23 +00:00
MipsCCState.h Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
MipsCallingConv.td [mips] Interrupt attribute support for mips32r2+. 2015-10-26 12:38:43 +00:00
MipsCondMov.td Revert "[mips] Promote the result of SETCC nodes to GPR width." 2016-03-01 20:25:43 +00:00
MipsConstantIslandPass.cpp Silencing warnings from MSVC 2015 Update 2. All of these changes silence "C4334 '<<': result of 32-bit shift implicitly converted to 64 bits (was 64-bit shift intended?)". NFC. 2016-03-30 21:30:00 +00:00
MipsDSPInstrFormats.td [mips][microMIPS][DSP] Implement PACKRL.PH, PICK.PH, PICK.QB, SHILO, SHILOV and WRDSP instructions 2015-12-18 08:59:37 +00:00
MipsDSPInstrInfo.td [mips] Range check uimm16 and fix several bugs this revealed. 2016-02-01 15:13:31 +00:00
MipsDelaySlotFiller.cpp [mips][microMIPS] Delay slot filler modifications 2016-03-23 10:29:38 +00:00
MipsEVAInstrFormats.td [mips] Added support for various EVA ASE instructions. 2015-09-15 10:02:16 +00:00
MipsEVAInstrInfo.td [mips] Range check simm9 and fix a bug this revealed. 2016-03-31 13:15:23 +00:00
MipsFastISel.cpp [mips][microMIPS] Disable FastISel for microMIPS 2016-01-28 11:08:03 +00:00
MipsFrameLowering.cpp Change eliminateCallFramePseudoInstr() to return an iterator 2016-03-31 18:33:38 +00:00
MipsFrameLowering.h Change eliminateCallFramePseudoInstr() to return an iterator 2016-03-31 18:33:38 +00:00
MipsHazardSchedule.cpp [Mips] Fix -Wunused-private-field warning after r263444. 2016-03-14 18:10:20 +00:00
MipsISelDAGToDAG.cpp Make TargetLowering::getPointerTy() taking DataLayout as an argument 2015-07-09 02:09:04 +00:00
MipsISelDAGToDAG.h Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
MipsISelLowering.cpp [mips][microMIPS] Add CodeGen support for DIV, MOD, DIVU, MODU, DDIV, DMOD, DDIVU and DMODU instructions 2016-03-24 09:22:45 +00:00
MipsISelLowering.h CodeGen: extend RHS when splitting ATOMIC_CMP_SWAP_WITH_SUCCESS. 2016-03-24 15:38:38 +00:00
MipsInstrFPU.td [mips][microMIPS] Implement MFC*, MFHC* and DMFC* instructions 2016-03-31 08:51:24 +00:00
MipsInstrFormats.td [mips] MIPS32R6 compact branch support 2016-03-14 16:24:05 +00:00
MipsInstrInfo.cpp [mips] Test commit: Mark insertNoop as dead code (NFC) 2016-03-29 13:02:19 +00:00
MipsInstrInfo.h [mips] MIPS32R6 compact branch support 2016-03-14 16:24:05 +00:00
MipsInstrInfo.td [mips] Range check simm16 2016-03-31 14:34:00 +00:00
MipsLongBranch.cpp Normalize MBB's successors' probabilities in several locations. 2015-12-13 09:26:17 +00:00
MipsMCInstLower.cpp Use MCSymbols for FastISel. 2015-06-23 12:21:54 +00:00
MipsMCInstLower.h Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
MipsMSAInstrFormats.td [mips] Use PredicateControl for the MSA ASE instructions. NFC. 2015-09-24 12:10:23 +00:00
MipsMSAInstrInfo.td [mips] Split mem_msa into range checked mem_simm10 and mem_simm10_lsl[123] 2016-03-31 14:12:01 +00:00
MipsMachineFunction.cpp [mips][microMIPS] Fix for "Cannot copy registers" assertion 2016-03-24 06:05:35 +00:00
MipsMachineFunction.h [mips] Interrupt attribute support for mips32r2+. 2015-10-26 12:38:43 +00:00
MipsModuleISelDAGToDAG.cpp Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
MipsOptimizePICCall.cpp
MipsOptionRecord.h [mips] Add COP0 register class and use it in M[FT]C0/DM[FT]C0. 2015-06-27 15:39:19 +00:00
MipsOs16.cpp Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
MipsRegisterInfo.cpp [mips] Remove redundant inclusions of MipsAnalyzeImmediate.h 2016-02-03 15:54:12 +00:00
MipsRegisterInfo.h [mips] Remove unused function declarations from MipsRegisterInfo.h. NFC. 2016-02-28 16:55:28 +00:00
MipsRegisterInfo.td [mips][microMIPS] Fix for "Cannot copy registers" assertion 2016-03-24 06:05:35 +00:00
MipsSEFrameLowering.cpp [mips] Remove redundant inclusions of MipsAnalyzeImmediate.h 2016-02-03 15:54:12 +00:00
MipsSEFrameLowering.h Re-apply "[mips] Use correct frame register for DWARF info when dynamically realigning the stack."" 2015-11-12 14:11:43 +00:00
MipsSEISelDAGToDAG.cpp Revert "[mips] Promote the result of SETCC nodes to GPR width." 2016-03-01 20:25:43 +00:00
MipsSEISelDAGToDAG.h Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
MipsSEISelLowering.cpp [DAG] use isUndef() ; NFCI 2016-03-14 17:28:46 +00:00
MipsSEISelLowering.h Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
MipsSEInstrInfo.cpp [mips] MIPS32R6 compact branch support 2016-03-14 16:24:05 +00:00
MipsSEInstrInfo.h [mips] Interrupt attribute support for mips32r2+. 2015-10-26 12:38:43 +00:00
MipsSERegisterInfo.cpp [mips] Remove redundant inclusions of MipsAnalyzeImmediate.h 2016-02-03 15:54:12 +00:00
MipsSERegisterInfo.h
MipsSchedule.td [mips] MIPSR6 Instruction itineraries 2016-03-11 13:05:06 +00:00
MipsScheduleP5600.td TableGen: Check scheduling models for completeness 2016-03-01 20:03:21 +00:00
MipsSubtarget.cpp [mips][micromips] Initial support for micrmomips DSP instructions and addu.qb implementation 2015-10-12 16:07:25 +00:00
MipsSubtarget.h Rename TargetSelectionDAGInfo into SelectionDAGTargetInfo and move it to CodeGen/ 2016-01-27 16:32:26 +00:00
MipsTargetMachine.cpp [Mips] Fix -Wunused-private-field warning after r263444. 2016-03-14 18:10:20 +00:00
MipsTargetMachine.h Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
MipsTargetObjectFile.cpp Unbreak non-X86 targets from fallout caused by r261462 2016-02-21 01:40:04 +00:00
MipsTargetObjectFile.h Unbreak non-X86 targets from fallout caused by r261462 2016-02-21 01:40:04 +00:00
MipsTargetStreamer.h [mips][ias] Implement .cpreturn directive. 2015-09-22 10:50:09 +00:00