Changes getScalarizationOverhead to return an invalid cost for scalable VFs
and adds some simple tests for loops containing a function for which
there is a vectorized variant available.
Details
Details
Diff Detail
Diff Detail
Unit Tests
Unit Tests
Event Timeline
llvm/lib/Transforms/Vectorize/LoopVectorize.cpp | ||
---|---|---|
4930 | nit: I think we can remove the braces now. | |
llvm/test/Transforms/LoopVectorize/AArch64/scalable-call.ll | ||
2 | Is it worth adding tests for LLVM intrinsics too that use fast math, i.e. test/Transforms/LoopVectorize/PowerPC/widened-massv-vfabi-attr.ll has an example like this: %1 = call fast double @llvm.sin.f64(double %conv) #1 %add = fadd fast double %Sum.0, %1 ... declare double @llvm.sin.f64(double) #0 declare <2 x double> @__sind2_massv(<2 x double>) #0 attributes #0 = { nounwind readnone speculatable willreturn } attributes #1 = { "vector-function-abi-variant"="_ZGV_LLVM_N2v_llvm.sin.f64(__sind2_massv)" } |
Comment Actions
- Removed unnecessary braces from widenCallInstruction
- Added a test for a loop containing an LLVM intrinsic (@llvm.sin.f64)
llvm/test/Transforms/LoopVectorize/AArch64/scalable-call.ll | ||
---|---|---|
78 | nit: If you could make the tests consistent in terms of the numbers of CHECK lines before merging that would be great! Perhaps disable interleaving with -force-vector-interleave=1? |
nit: I think we can remove the braces now.