llvm.org GIT mirror llvm / 6610cde
Merging r297075: ------------------------------------------------------------------------ r297075 | hans | 2017-03-06 13:10:40 -0800 (Mon, 06 Mar 2017) | 1 line Disable gvn-hoist (PR32153) ------------------------------------------------------------------------ git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_40@297165 91177308-0d34-0410-b5e6-96231b3b80d8 Hans Wennborg 2 years ago
3 changed file(s) with 2 addition(s) and 10 deletion(s). Raw diff Collapse all Expand all
5555 default since they may be infinite but these can also be removed
5656 with LLVM option ``-adce-remove-loops`` when the loop body otherwise has
5757 no live operations.
58
59 * The GVNHoist pass is now enabled by default. The new pass based on Global
60 Value Numbering detects similar computations in branch code and replaces
61 multiple instances of the same computation with a unique expression. The
62 transform benefits code size and generates better schedules. GVNHoist is
63 more aggressive at ``-Os`` and ``-Oz``, hoisting more expressions at the
64 expense of execution time degradations.
6558
6659 * The llvm-cov tool can now export coverage data as json. Its html output mode
6760 has also improved.
140140 "(default = 75)"));
141141
142142 static cl::opt EnableGVNHoist(
143 "enable-gvn-hoist", cl::init(true), cl::Hidden,
144 cl::desc("Enable the GVN hoisting pass (default = on)"));
143 "enable-gvn-hoist", cl::init(false), cl::Hidden,
144 cl::desc("Enable the GVN hoisting pass"));
145145
146146 static cl::opt
147147 DisableLibCallsShrinkWrap("disable-libcalls-shrinkwrap", cl::init(false),
4040 ; OPT-O1-DAG: Skipping pass 'Combine redundant instructions'
4141 ; OPT-O1-DAG: Skipping pass 'Dead Store Elimination'
4242 ; OPT-O1-DAG: Skipping pass 'Early CSE'
43 ; OPT-O1-DAG: Skipping pass 'Early GVN Hoisting of Expressions'
4443 ; OPT-O1-DAG: Skipping pass 'Jump Threading'
4544 ; OPT-O1-DAG: Skipping pass 'MemCpy Optimization'
4645 ; OPT-O1-DAG: Skipping pass 'Reassociate expressions'