llvm-6502/lib/Transforms/Utils
John McCall d7c1086201 Implement and document the llvm.eh.resume intrinsic, which is
transformed by the inliner into a branch to the enclosing landing pad
(when inlined through an invoke).  If not so optimized, it is lowered
DWARF EH preparation into a call to _Unwind_Resume (or _Unwind_SjLj_Resume
as appropriate).  Its chief advantage is that it takes both the
exception value and the selector value as arguments, meaning that there
is zero effort in recovering these;  however, the frontend is required
to pass these down, which is not actually particularly difficult.

Also document the behavior of landing pads a bit better, and make it
clearer that it's okay that personality functions don't always land at
landing pads.  This is just a fact of life.  Don't write optimizations that
rely on pushing things over an unwind edge.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@132253 91177308-0d34-0410-b5e6-96231b3b80d8
2011-05-28 07:45:59 +00:00
..
AddrModeMatcher.cpp
BasicBlockUtils.cpp Scanning entire basic block may be too expensive in terms of compile time. Instead, just use whatever location info first non-phi instruction has. 2011-05-02 21:57:00 +00:00
BasicInliner.cpp
BreakCriticalEdges.cpp Preserve line number information. 2011-05-17 19:43:06 +00:00
BuildLibCalls.cpp One more debug line number miss in instcombine (although the code in question isn't actually in instcombine). 2011-05-27 01:00:36 +00:00
CloneFunction.cpp
CloneLoop.cpp
CloneModule.cpp
CMakeLists.txt
CodeExtractor.cpp
DemoteRegToStack.cpp
InlineFunction.cpp Implement and document the llvm.eh.resume intrinsic, which is 2011-05-28 07:45:59 +00:00
InstructionNamer.cpp
LCSSA.cpp There is no need to force DebugLoc on a PHI at this point. 2011-05-16 22:05:03 +00:00
Local.cpp Make LoadAndStorePromoter preserve debug info and create llvm.dbg.values when 2011-05-24 03:10:43 +00:00
LoopSimplify.cpp
LoopUnroll.cpp
LowerInvoke.cpp
LowerSwitch.cpp
Makefile
Mem2Reg.cpp
PromoteMemoryToRegister.cpp Make LoadAndStorePromoter preserve debug info and create llvm.dbg.values when 2011-05-24 03:10:43 +00:00
SimplifyCFG.cpp Add a parameter to ConstantFoldTerminator() that callers can use to ask it to also clean up the condition of any conditional terminator it folds to be unconditional, if that turns the condition into dead code. This just means it calls RecursivelyDeleteTriviallyDeadInstructions() in strategic spots. It defaults to the old behavior. 2011-05-22 16:24:18 +00:00
SimplifyInstructions.cpp
SSAUpdater.cpp Clean up the lazy initialization of DIBuilder a bit. 2011-05-24 06:00:08 +00:00
UnifyFunctionExitNodes.cpp
Utils.cpp
ValueMapper.cpp