llvm-project/llvm/test/Transforms/LoopVectorize/X86
Wenlei He d1be928d23 SVML support for log2
Although LLVM supports vectorization of loops containing log2, it did not support using SVML implementation of it. Added support so that when clang is invoked with -fveclib=SVML now an appropriate SVML library log2 implementation will be invoked.

Follow up on: https://reviews.llvm.org/D77114

Tests:
Added unit tests to svml-calls.ll, svml-calls-finite.ll. Can be run with llvm-lint.
Created a simple c++ file that tests log2, and used clang+ to build it, and output final assembly.

Reviewed By: wenlei, craig.topper

Differential Revision: https://reviews.llvm.org/D86730
2020-09-03 11:52:29 -07:00
..
already-vectorized.ll
avx1.ll
avx512.ll
consecutive-ptr-cg-bug.ll
consecutive-ptr-uniforms.ll [LV] Scalar with predication must not be uniform 2019-12-03 19:50:24 +02:00
constant-fold.ll Recommit #2: "[LV] Induction Variable does not remain scalar under tail-folding." 2020-05-13 13:50:09 +01:00
constant-vector-operand.ll
conversion-cost.ll
cost-model-assert.ll [LoopVectorize] add test that asserted after cost model change (PR43582); NFC 2019-10-07 14:48:27 +00:00
cost-model.ll
float-induction-x86.ll [InstComine] Forego of one-use check in `(X - (X & Y)) --> (X & ~Y)` if Y is a constant 2020-03-06 21:39:07 +03:00
fneg-cost.ll [LoopVectorize] Add FNeg instruction support 2019-05-30 18:19:35 +00:00
force-ifcvt.ll
fp32_to_uint32-cost-model.ll
fp64_to_uint32-cost-model.ll
fp80-widest-type.ll [LV] Make sure the MaxVF is a power-of-2 by rounding down. 2020-06-02 10:40:49 +01:00
fp_to_sint8-cost-model.ll [X86][CostModel] Improve costs for fp_to_uint/fp_to_sint for vXi8/vXi16/v2i32 results. 2020-04-27 10:35:15 -07:00
funclet.ll
gather-cost.ll
gather-vs-interleave.ll
gather_scatter.ll
gcc-examples.ll
illegal-parallel-loop-uniform-write.ll Migrate function attribute "no-frame-pointer-elim"="false" to "frame-pointer"="none" as cleanups after D56351 2019-12-24 16:27:51 -08:00
imprecise-through-phis.ll [x86] form reduction intrinsics from vectorizers instead of raw IR 2020-06-05 12:38:49 -04:00
int128_no_gather.ll Migrate function attribute "no-frame-pointer-elim" to "frame-pointer"="all" as cleanups after D56351 2019-12-24 15:57:33 -08:00
interleave_short_tc.ll [LV] Move interleave_short_tc.ll into the X86 directory to hopefully make fix non-X86 bots. 2019-11-01 10:41:18 -07:00
interleaved-accesses-large-gap.ll
interleaved-accesses-waw-dependency.ll [LV] Fix test failure in a Release build. 2019-08-02 08:33:41 +00:00
interleaving.ll [CostModel][X86] Improve extract/insert element costs (PR43605) 2020-02-27 15:54:13 +00:00
invariant-load-gather.ll
invariant-store-vectorization.ll [x86] form reduction intrinsics from vectorizers instead of raw IR 2020-06-05 12:38:49 -04:00
lit.local.cfg [lit] Delete empty lines at the end of lit.local.cfg NFC 2019-06-17 09:51:07 +00:00
load-deref-pred.ll [x86] form reduction intrinsics from vectorizers instead of raw IR 2020-06-05 12:38:49 -04:00
masked_load_store.ll Recommit #2: "[LV] Induction Variable does not remain scalar under tail-folding." 2020-05-13 13:50:09 +01:00
max-mstore.ll [BasicAA] Rename deprecated -basicaa to -basic-aa 2020-06-26 20:41:37 -07:00
metadata-enable.ll Recommit #2: "[LV] Induction Variable does not remain scalar under tail-folding." 2020-05-13 13:50:09 +01:00
min-trip-count-switch.ll
mul_slm_16bit.ll
no-vector.ll
no_fpmath.ll
no_fpmath_with_hotness.ll [LV] Interleaving should not exceed estimated loop trip count. 2019-10-28 10:58:22 -07:00
nontemporal.ll [LV] Suppress vectorization in some nontemporal cases 2019-06-17 17:20:08 +00:00
optsize.ll [LV] Vectorize without versioning-for-unit-stride under -Os/-Oz 2020-07-07 15:04:21 +03:00
outer_loop_test1_no_explicit_vect_width.ll
parallel-loops-after-reg2mem.ll
parallel-loops.ll
powof2div.ll
pr23997.ll
pr34438.ll
pr35432.ll [x86] form reduction intrinsics from vectorizers instead of raw IR 2020-06-05 12:38:49 -04:00
pr36524.ll Recommit #2: "[LV] Induction Variable does not remain scalar under tail-folding." 2020-05-13 13:50:09 +01:00
pr39160.ll
pr42674.ll [x86] form reduction intrinsics from vectorizers instead of raw IR 2020-06-05 12:38:49 -04:00
propagate-metadata.ll
ptr-indvar-crash.ll
rauw-bug.ll
reduction-crash.ll [BasicAA] Rename -disable-basicaa to -disable-basic-aa to be consistent with the canonical name "basic-aa" 2020-06-26 20:55:44 -07:00
reduction-fastmath.ll [x86] form reduction intrinsics from vectorizers instead of raw IR 2020-06-05 12:38:49 -04:00
reduction-small-size.ll
redundant-vf2-cost.ll
reg-usage-debug.ll recommit: [LoopVectorize][PowerPC] Estimate int and float register pressure separately in loop-vectorize 2019-10-12 02:53:04 +00:00
reg-usage.ll recommit: [LoopVectorize][PowerPC] Estimate int and float register pressure separately in loop-vectorize 2019-10-12 02:53:04 +00:00
register-assumption.ll
scatter_crash.ll Migrate function attribute "no-frame-pointer-elim" to "frame-pointer"="all" as cleanups after D56351 2019-12-24 15:57:33 -08:00
slm-no-vectorize.ll
small-size.ll [BasicAA] Rename deprecated -basicaa to -basic-aa 2020-06-26 20:41:37 -07:00
strided_load_cost.ll [x86] form reduction intrinsics from vectorizers instead of raw IR 2020-06-05 12:38:49 -04:00
struct-store.ll
svml-calls-finite.ll SVML support for log2 2020-09-03 11:52:29 -07:00
svml-calls.ll SVML support for log2 2020-09-03 11:52:29 -07:00
tail_folding_and_assume_safety.ll llc: Change behavior of -mcpu with existing attribute 2020-01-07 10:10:25 -05:00
tail_loop_folding.ll [LV] Fallback strategies if tail-folding fails 2020-08-26 16:55:25 +01:00
tripcount.ll
uint64_to_fp64-cost-model.ll
uniform-phi.ll
uniform_load.ll [BasicAA] Rename deprecated -basicaa to -basic-aa 2020-06-26 20:41:37 -07:00
uniformshift.ll
unroll-pm.ll [PassManagerBuilder] Add option for interleaved loops, for loop vectorize. 2019-04-30 21:29:20 +00:00
unroll-small-loops.ll
unroll_selection.ll
veclib-calls.ll [test] Add -inject-tli-mapping to -loop-vectorize -vector-library tests 2020-08-25 11:55:11 -07:00
vect.omp.force.ll
vect.omp.force.small-tc.ll Recommit #2: "[LV] Induction Variable does not remain scalar under tail-folding." 2020-05-13 13:50:09 +01:00
vector-scalar-select-cost.ll
vector_max_bandwidth.ll
vector_ptr_load_store.ll [BasicAA] Rename deprecated -basicaa to -basic-aa 2020-06-26 20:41:37 -07:00
vectorization-remarks-loopid-dbg.ll
vectorization-remarks-missed.ll [DebugInfo@O2][LoopVectorize] pr39024: Vectorized code linenos step through loop even after completion 2019-06-19 10:50:47 +00:00
vectorization-remarks-profitable.ll Migrate function attribute "no-frame-pointer-elim" to "frame-pointer"="all" as cleanups after D56351 2019-12-24 15:57:33 -08:00
vectorization-remarks.ll
vectorize-only-for-real.ll [BasicAA] Rename deprecated -basicaa to -basic-aa 2020-06-26 20:41:37 -07:00
x86-interleaved-accesses-masked-group.ll Recommit #2: "[LV] Induction Variable does not remain scalar under tail-folding." 2020-05-13 13:50:09 +01:00
x86-pr39099.ll
x86-predication.ll
x86_fp80-interleaved-access.ll [LV] Deny irregular types in interleavedAccessCanBeWidened 2019-06-17 12:02:24 +00:00
x86_fp80-vector-store.ll