search for: nofma

Displaying 10 results from an estimated 10 matches for "nofma".

Did you mean: nodma
2011 Dec 02
1
[LLVMdev] [llvm-commits] [PATCH] BasicBlock Autovectorization Pass
...: >> case Intrinsic::cos: >> case Intrinsic::log: >> case Intrinsic::log2: >> case Intrinsic::log10: >> case Intrinsic::exp: >> case Intrinsic::exp2: >> case Intrinsic::pow: >> return !NoMath; >> case Intrinsic::fma: >> return !NoFMA; >> } >> >> Is this switch exhaustive or are you missing a default case? > > You're not looking at the most-recent version. You had (correctly) > commented on this last time, and I had corrected it. I look at llvm_bb_vectorize-20111122.diff, which was according to my...
2011 Nov 17
2
[LLVMdev] [llvm-commits] [PATCH] BasicBlock Autovectorization Pass
...case Intrinsic::log10: > + case Intrinsic::exp: > + case Intrinsic::exp2: > + case Intrinsic::pow: > + isGoodIntr = !NoMath; Is the fallthrough intended here? > + case Intrinsic::fma: > + isGoodIntr = !NoFMA; I would also put a break here. What happends in the default case or do you cover all intrinsics.? > + } > + } > + } Most of these '{}' are not needed. > + } > + > + // Vectorize simple loads and stores if possbile: > + bool i...
2011 Nov 21
0
[LLVMdev] [llvm-commits] [PATCH] BasicBlock Autovectorization Pass
...; + case Intrinsic::exp: > > + case Intrinsic::exp2: > > + case Intrinsic::pow: > > + isGoodIntr = !NoMath; > Is the fallthrough intended here? > > > + case Intrinsic::fma: > > + isGoodIntr = !NoFMA; > I would also put a break here. > > What happends in the default case or do you cover all intrinsics.? > > + } > > + } > > + } > Most of these '{}' are not needed. > > > + } > > + > > + // Vectorize...
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
2011 Dec 02
0
[LLVMdev] [llvm-commits] [PATCH] BasicBlock Autovectorization Pass
...trinsic::powi: > case Intrinsic::sin: > case Intrinsic::cos: > case Intrinsic::log: > case Intrinsic::log2: > case Intrinsic::log10: > case Intrinsic::exp: > case Intrinsic::exp2: > case Intrinsic::pow: > return !NoMath; > case Intrinsic::fma: > return !NoFMA; > } > > Is this switch exhaustive or are you missing a default case? You're not looking at the most-recent version. You had (correctly) commented on this last time, and I had corrected it. > > > + // Returns true if J is the second element in some ValuePair referenced...
2011 Dec 02
5
[LLVMdev] [llvm-commits] [PATCH] BasicBlock Autovectorization Pass
...n false; switch(IID) { case Intrinsic::sqrt: case Intrinsic::powi: case Intrinsic::sin: case Intrinsic::cos: case Intrinsic::log: case Intrinsic::log2: case Intrinsic::log10: case Intrinsic::exp: case Intrinsic::exp2: case Intrinsic::pow: return !NoMath; case Intrinsic::fma: return !NoFMA; } Is this switch exhaustive or are you missing a default case? > + // Returns true if J is the second element in some ValuePair referenced by > + // some multimap ValuePair iterator pair. > + bool isSecondInVPIteratorPair(VPIteratorPair PairRange, Value *J) { > + for (s...
2011 Dec 14
0
[LLVMdev] [llvm-commits] [PATCH] BasicBlock Autovectorization Pass
...trinsic::powi: > case Intrinsic::sin: > case Intrinsic::cos: > case Intrinsic::log: > case Intrinsic::log2: > case Intrinsic::log10: > case Intrinsic::exp: > case Intrinsic::exp2: > case Intrinsic::pow: > return !NoMath; > case Intrinsic::fma: > return !NoFMA; > } > > Is this switch exhaustive or are you missing a default case? > > > + // Returns true if J is the second element in some ValuePair referenced by > > + // some multimap ValuePair iterator pair. > > + bool isSecondInVPIteratorPair(VPIteratorPair PairRa...
2011 Nov 23
0
[LLVMdev] [llvm-commits] [PATCH] BasicBlock Autovectorization Pass
On Mon, 2011-11-21 at 21:22 -0600, Hal Finkel wrote: > On Mon, 2011-11-21 at 11:55 -0600, Hal Finkel wrote: > > Tobias, > > > > I've attached an updated patch. It contains a few bug fixes and many > > (refactoring and coding-convention) changes inspired by your comments. > > > > I'm currently trying to fix the bug responsible for causing a compile
2011 Nov 22
5
[LLVMdev] [llvm-commits] [PATCH] BasicBlock Autovectorization Pass
On Mon, 2011-11-21 at 11:55 -0600, Hal Finkel wrote: > Tobias, > > I've attached an updated patch. It contains a few bug fixes and many > (refactoring and coding-convention) changes inspired by your comments. > > I'm currently trying to fix the bug responsible for causing a compile > failure when compiling >