llvm-project/llvm/lib/Transforms
Dehao Chen 41cde0b986 Handle Invoke during sample profiler annotation: make it inlinable.
Summary: Previously we reline on inst-combine to remove inlinable invoke instructions. This causes trouble because a few extra optimizations are schedule early that could introduce too much CFG change (e.g. simplifycfg removes too much control flow). This patch handles invoke instruction in-place during sample profile annotation, so that we do not rely on instcombine to remove those invoke instructions.

Reviewers: davidxl, dnovillo

Subscribers: llvm-commits

Differential Revision: https://reviews.llvm.org/D24409

llvm-svn: 281870
2016-09-18 23:11:37 +00:00
..
Coroutines [Coroutines] Part13: Handle single edge PHINodes across suspends 2016-09-09 05:39:00 +00:00
Hello Add auto-exporting of symbols from tools so that plugins work on Windows 2016-05-26 11:16:43 +00:00
IPO Handle Invoke during sample profiler annotation: make it inlinable. 2016-09-18 23:11:37 +00:00
InstCombine [InstCombine] canonicalize vector select with constant vector condition to shuffle 2016-09-16 22:16:18 +00:00
Instrumentation Fix covered-switch-default warning 2016-09-18 21:08:35 +00:00
ObjCARC Address Pete's review comment and define OrigArg on its own line. 2016-09-13 23:53:43 +00:00
Scalar LoopDistribute should preserve GlobalsAA. 2016-09-16 18:01:48 +00:00
Utils Rename NameAnonFunctions to NameAnonGlobals to match what it is doing (NFC) 2016-09-16 16:56:30 +00:00
Vectorize [Loop Vectorizer] Consecutive memory access - fixed and simplified 2016-09-18 13:56:08 +00:00
CMakeLists.txt [coroutines] Part 3 of N: Adding Boilerplate for Coroutine Passes 2016-07-28 21:04:31 +00:00
LLVMBuild.txt [coroutines] Part 3 of N: Adding Boilerplate for Coroutine Passes 2016-07-28 21:04:31 +00:00