search for: createbbvectorizepass

Displaying 6 results from an estimated 6 matches for "createbbvectorizepass".

2012 Apr 04
2
[LLVMdev] Fwd: [Review Request][PATCH] Add the function "vectorizeBasicBlock"
...ly, but read from an instance of the VectorizeConfig class, where the VectorizeConfig class is designed to provide the vectorize related parameters to to the BBVectorize pas. After this, people can pass target specific vectorize configuration to the BBVectorize pass in tools like LLC. And original createBBVectorizePass function can create a VectorizeConfig that read the configuration from the commandline options and pass it to the BBVectorizePass, hence users can still control the behaviour of the pass with command like option. Any comment or suggestion is appreciated. best regards ether [1]http://llvm.org/bug...
2012 Apr 04
0
[LLVMdev] [Review Request][PATCH] Add the function "vectorizeBasicBlock"
...of the VectorizeConfig class, > where the VectorizeConfig class is designed to provide the vectorize > related parameters to to the BBVectorize pas. > > After this, people can pass target specific vectorize configuration to > the BBVectorize pass in tools like LLC. And original > createBBVectorizePass function can create a VectorizeConfig that read > the configuration from the commandline options and pass it to the > BBVectorizePass, hence users can still control the behaviour of the > pass with command like option. > > Any comment or suggestion is appreciated. > > best re...
2011 Nov 17
2
[LLVMdev] [llvm-commits] [PATCH] BasicBlock Autovectorization Pass
...down my thoughts. > } > > PassManagerBuilder::~PassManagerBuilder() { > @@ -170,6 +176,14 @@ void PassManagerBuilder::populateModulePassManager(PassManagerBase&MPM) { > > addExtensionsToPM(EP_ScalarOptimizerLate, MPM); > > + if (Vectorize) { > + MPM.add(createBBVectorizePass()); > + if (OptLevel> 1) { > + MPM.add(createInstructionCombiningPass()); > + MPM.add(createGVNPass()); // Remove redundancies > + } > + } > + What is the reason you will not enable this at -O1. LLVM runs even at -O1 a number of instcombine a...
2011 Nov 21
0
[LLVMdev] [llvm-commits] [PATCH] BasicBlock Autovectorization Pass
...> > PassManagerBuilder::~PassManagerBuilder() { > > @@ -170,6 +176,14 @@ void PassManagerBuilder::populateModulePassManager(PassManagerBase&MPM) { > > > > addExtensionsToPM(EP_ScalarOptimizerLate, MPM); > > > > + if (Vectorize) { > > + MPM.add(createBBVectorizePass()); > > + if (OptLevel> 1) { > > + MPM.add(createInstructionCombiningPass()); > > + MPM.add(createGVNPass()); // Remove redundancies > > + } > > + } > > + > > What is the reason you will not enable this at -O1. LLVM run...
2011 Nov 16
0
[LLVMdev] [llvm-commits] [PATCH] BasicBlock Autovectorization Pass
Tobias, et al., Attached is the my autovectorization pass. I've fixed a bug that appears when using -bb-vectorize-aligned-only, fixed some 80-col violations, etc., and at least on x86_64, all test cases pass except for a few; and all of these failures look like instruction-selection bugs. For example: MultiSource/Applications/ClamAV - fails to compile shared_sha256.c with an error: error in
2011 Nov 15
3
[LLVMdev] [llvm-commits] [PATCH] BasicBlock Autovectorization Pass
Tobias, I've attached the latest version of my autovectorization patch. I was able to add support for using the ScalarEvolution analysis for load/store pairing (thanks for your help!). This led to a modest performance increase and a modest compile-time increase. This version also has a cutoff as you suggested (although the default value is set high (4000 instructions between pairs) because