llvm-project/llvm/lib/Target/Lanai
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
Disassembler
InstPrinter
MCTargetDesc
TargetInfo
CMakeLists.txt
LLVMBuild.txt
Lanai.h
Lanai.td
LanaiAluCode.h
LanaiAsmPrinter.cpp
LanaiCallingConv.td
LanaiCondCode.h
LanaiDelaySlotFiller.cpp
LanaiFrameLowering.cpp Change eliminateCallFramePseudoInstr() to return an iterator 2016-03-31 18:33:38 +00:00
LanaiFrameLowering.h Change eliminateCallFramePseudoInstr() to return an iterator 2016-03-31 18:33:38 +00:00
LanaiISelDAGToDAG.cpp
LanaiISelLowering.cpp
LanaiISelLowering.h
LanaiInstrFormats.td
LanaiInstrInfo.cpp
LanaiInstrInfo.h
LanaiInstrInfo.td
LanaiMCInstLower.cpp
LanaiMCInstLower.h
LanaiMachineFunctionInfo.cpp
LanaiMachineFunctionInfo.h
LanaiMemAluCombiner.cpp
LanaiRegisterInfo.cpp
LanaiRegisterInfo.h
LanaiRegisterInfo.td
LanaiSchedule.td
LanaiSelectionDAGInfo.cpp
LanaiSelectionDAGInfo.h
LanaiSetflagAluCombiner.cpp
LanaiSubtarget.cpp
LanaiSubtarget.h
LanaiTargetMachine.cpp
LanaiTargetMachine.h
LanaiTargetObjectFile.cpp
LanaiTargetObjectFile.h
LanaiTargetTransformInfo.h