1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-22 12:33:33 +02:00
llvm-mirror/lib/Transforms/IPO
Arnold Schwaighofer 574ccf8f46 Add an option to the LTO code generator to disable vectorization during LTO
We used to always vectorize (slp and loop vectorize) in the LTO pass pipeline.

r220345 changed it so that we used the PassManager's fields 'LoopVectorize' and
'SLPVectorize' out of the desire to be able to disable vectorization using the
cl::opt flags 'vectorize-loops'/'slp-vectorize' which the before mentioned
fields default to.
Unfortunately, this turns off vectorization because those fields
default to false.
This commit adds flags to the LTO library to disable lto vectorization which
reconciles the desire to optionally disable vectorization during LTO and
the desired behavior of defaulting to enabled vectorization.

We really want tools to set PassManager flags directly to enable/disable
vectorization and not go the route via cl::opt flags *in*
PassManagerBuilder.cpp.

llvm-svn: 220652
2014-10-26 21:50:58 +00:00
..
ArgumentPromotion.cpp DebugInfo+DeadArgElimination: Ensure llvm::Function*s from debug info are updated even when DAE removes both varargs and non-varargs arguments on the same function. 2014-10-07 15:10:23 +00:00
BarrierNoopPass.cpp [C++11] Add 'override' keyword to virtual methods that override their base class. 2014-03-05 09:10:37 +00:00
CMakeLists.txt Move -verify-use-list-order into llvm-uselistorder 2014-07-25 17:13:03 +00:00
ConstantMerge.cpp Repace SmallPtrSet with SmallPtrSetImpl in function arguments to avoid needing to mention the size. 2014-08-21 05:55:13 +00:00
DeadArgumentElimination.cpp DebugInfo+DeadArgElimination: Ensure llvm::Function*s from debug info are updated even when DAE removes both varargs and non-varargs arguments on the same function. 2014-10-07 15:10:23 +00:00
ExtractGV.cpp GlobalValue: Assert symbols with local linkage have default visibility 2014-05-07 23:00:22 +00:00
FunctionAttrs.cpp [optnone] Make the optnone attribute effective at suppressing function 2014-08-13 10:49:33 +00:00
GlobalDCE.cpp GlobalDCE: Don't drop any COMDAT members 2014-10-07 07:07:19 +00:00
GlobalOpt.cpp GlobalOpt: Don't drop unused memberes of a Comdat 2014-10-08 07:23:31 +00:00
InlineAlways.cpp Add an Assumption-Tracking Pass 2014-09-07 12:44:26 +00:00
Inliner.cpp Inliner: Non-local functions in COMDATs shouldn't be dropped 2014-10-08 19:32:32 +00:00
InlineSimple.cpp Add an Assumption-Tracking Pass 2014-09-07 12:44:26 +00:00
Internalize.cpp Use range based for loops to avoid needing to re-mention SmallPtrSet size. 2014-08-24 23:23:06 +00:00
IPConstantPropagation.cpp [C++] Use 'nullptr'. Transforms edition. 2014-04-25 05:29:35 +00:00
IPO.cpp Move -verify-use-list-order into llvm-uselistorder 2014-07-25 17:13:03 +00:00
LLVMBuild.txt Prune redundant dependencies in LLVMBuild.txt. 2013-12-11 00:30:57 +00:00
LoopExtractor.cpp Revert "[C++11] Add predecessors(BasicBlock *) / successors(BasicBlock *) iterator ranges." 2014-07-21 17:06:51 +00:00
Makefile
MergeFunctions.cpp MergeFunctions: FunctionPtr has been renamed to FunctionNode. 2014-09-10 10:08:25 +00:00
PartialInlining.cpp Revert "[C++11] Add predecessors(BasicBlock *) / successors(BasicBlock *) iterator ranges." 2014-07-21 17:06:51 +00:00
PassManagerBuilder.cpp Add an option to the LTO code generator to disable vectorization during LTO 2014-10-26 21:50:58 +00:00
PruneEH.cpp [C++] Use 'nullptr'. Transforms edition. 2014-04-25 05:29:35 +00:00
StripDeadPrototypes.cpp [Modules] Fix potential ODR violations by sinking the DEBUG_TYPE 2014-04-22 02:55:47 +00:00
StripSymbols.cpp Revert "Revert "DI: Fold constant arguments into a single MDString"" 2014-10-03 20:01:09 +00:00