llvm-mirror/test/Other
Florian Hahn ac56a0239b [SLP] Support vectorizing functions provided by vector libs.
It seems like the SLPVectorizer is currently not aware of vector
versions of functions provided by libraries like Accelerate [1].
This patch updates SLPVectorizer to use the same infrastructure
the LoopVectorizer uses to detect vectorizable library functions.

For calls, it computes the cost of an intrinsic call (existing behavior)
and the cost of a vector function library call, if available. Like
LoopVectorizer, it assumes the cost of the vector function is simply the
cost of a call to a vector function.

[1] https://developer.apple.com/documentation/accelerate

Reviewers: ABataev, RKSimon, spatel

Reviewed By: ABataev

Differential Revision: https://reviews.llvm.org/D75878
2020-03-10 13:10:50 +00:00
..
Inputs Restore "[ThinLTO] Add additional ThinLTO pipeline testing with new PM" 2020-01-15 07:33:08 -08:00
X86 [test] More tests to target specific directories after CodeGenPrepare requires TargetPassConfig (D73754) 2020-02-02 10:43:02 -08:00
2002-01-31-CallGraph.ll
2002-02-24-InlineBrokePHINodes.ll
2002-03-11-ConstPropCrash.ll
2003-02-19-LoopInfoNestingBug.ll
2004-08-16-PackedConstantInlineStore.ll
2004-08-16-PackedGlobalConstant.ll
2004-08-16-PackedSelect.ll
2004-08-16-PackedSimple.ll
2004-08-20-PackedControlFlow.ll
2006-02-05-PassManager.ll
2007-06-05-PassID.ll Revert "Extend CFGPrinter and CallPrinter with Heat Colors" 2018-06-29 17:48:58 +00:00
2007-06-28-PassManager.ll
2007-09-10-PassManager.ll
2008-02-14-PassManager.ll
2008-06-04-FieldSizeInPacked.ll
2008-10-06-RemoveDeadPass.ll
2008-10-15-MissingSpace.ll
2009-03-31-CallGraph.ll
2009-06-05-no-implicit-float.ll
2009-09-14-function-elements.ll
2010-05-06-Printer.ll [PassInstrumentation] Remove excess newline for the new pass manager 2019-11-28 17:20:17 -08:00
attribute-comment.ll Migrate function attribute "no-frame-pointer-elim" to "frame-pointer"="all" as cleanups after D56351 2019-12-24 15:57:33 -08:00
available-externally-lto.ll [clang][NewPM] Do not eliminate available_externally durng -O2 -flto runs 2019-06-20 19:44:51 +00:00
bcanalyzer-block-info.txt
bcanalyzer-dump-option.txt [llvm-bcanalyzer] Don't dump the contents if -dump is not passed 2019-11-13 10:38:57 -08:00
can-execute.txt test/Other/can-execute.txt: delete %t after the test 2018-09-14 20:41:42 +00:00
cfg_deopt_unreach.ll Use temporary directory for tests in D74346 2020-02-24 12:19:07 +01:00
cfg-printer-branch-weights.ll [CFG Printer] Add support for writing the dot files with a custom 2018-10-09 04:30:23 +00:00
cgscc-devirt-iteration.ll [BuildLibCalls] Noalias annotation 2019-08-14 16:50:06 +00:00
cgscc-disconnected-invalidation.ll
cgscc-iterate-function-mutation.ll
cgscc-libcall-update.ll [SimplifyLibCalls] Mark known arguments with nonnull 2019-09-17 09:32:52 +00:00
cgscc-observe-devirt.ll
cleanup-lcssa.ll
codegenprepare-and-debug.ll Fix inconsistency with/without debug information (-g) 2018-08-07 12:14:01 +00:00
constant-fold-gep-address-spaces.ll
constant-fold-gep.ll
cspgo-O2-pipeline.ll [PGO] Context sensitive PGO (part 4) 2019-03-06 19:31:37 +00:00
debugcounter-dce.ll [DCE] Add DebugCounter support 2018-09-13 20:29:50 +00:00
debugcounter-earlycse.ll [EarlyCSE] Add debug counter for debugging mis-optimizations. NFC. 2018-04-06 18:47:33 +00:00
debugcounter-newgvn.ll
debugcounter-predicateinfo.ll [PredicateInfo] Use custom mangling to support ssa_copy with unnamed types. 2018-07-24 14:49:52 +00:00
extract-alias.ll
extract-linkonce.ll
extract-weak-odr.ll
extract.ll
FileCheck-space.txt
invalid-commandline-option.ll
invariant.group.ll [FunctionAttrs] Annotate "willreturn" for intrinsics 2019-07-28 06:09:56 +00:00
lint.ll [instrinsics] Add @llvm.memcpy.inline instrinsics 2020-01-28 09:42:01 +01:00
lit-globbing.ll
lit-quoting.txt
lit-unicode.txt Remove some unnecessary REQUIRES: shell lines 2019-09-10 00:06:52 +00:00
llvm-nm-without-aliases.ll [llvm-nm][llvm-readelf] Avoid single-dash -long-option in tests 2019-04-27 16:12:14 +00:00
loop-deletion-printer.ll [NewPM] -print-module-scope -print-after now prints module even after invalidated Loop/SCC 2018-12-21 11:49:05 +00:00
loop-pass-ordering.ll
loop-pass-printer.ll [New PM][PassInstrumentation] IR printing support for New Pass Manager 2018-09-24 16:08:15 +00:00
loop-pm-invalidation.ll [New PM] Introducing PassInstrumentation framework 2018-09-20 17:08:45 +00:00
machine-size-remarks.ll Add REQUIRES line to machine-size-remarks 2018-09-10 23:53:08 +00:00
module-pass-printer.ll IR printing for single function with the new pass manager. 2020-02-23 15:28:57 -08:00
new-pass-manager.ll Change TargetLibraryInfo analysis passes to always require Function 2019-09-07 03:09:36 +00:00
new-pm-cspgo.ll [PGO] Context sensitive PGO (part 4) 2019-03-06 19:31:37 +00:00
new-pm-defaults.ll [PassManager] adjust VectorCombine placement 2020-03-04 11:10:49 -05:00
new-pm-lto-defaults.ll Revert "Restore "[WPD/LowerTypeTests] Delay lowering/removal of type tests until after ICP"" 2020-03-02 14:02:13 -08:00
new-pm-pgo-O0.ll [PGO] Add PGO support at -O0 in the experimental new pass manager 2019-08-01 22:36:34 +00:00
new-pm-pgo.ll Restore "[ThinLTO] Add additional ThinLTO pipeline testing with new PM" 2020-01-15 07:33:08 -08:00
new-pm-pr42726-cgscc.ll [NewPassManager] Resolve assertion in CGSCCPassManager when CallCounts change. 2019-08-02 18:37:03 +00:00
new-pm-thinlto-defaults.ll [PassManager] adjust VectorCombine placement 2020-03-04 11:10:49 -05:00
new-pm-thinlto-postlink-pgo-defaults.ll [PassManager] adjust VectorCombine placement 2020-03-04 11:10:49 -05:00
new-pm-thinlto-postlink-samplepgo-defaults.ll [PassManager] adjust VectorCombine placement 2020-03-04 11:10:49 -05:00
new-pm-thinlto-prelink-pgo-defaults.ll Compute ORE, BPI, BFI in Loop passes. 2020-02-12 09:15:18 -08:00
new-pm-thinlto-prelink-samplepgo-defaults.ll Compute ORE, BPI, BFI in Loop passes. 2020-02-12 09:15:18 -08:00
new-pm-time-trace.ll Extend TimeTrace to LLVM's new pass manager 2020-03-06 14:45:19 -08:00
opt-bisect-helper.py Python compat - print statement 2019-01-03 14:11:33 +00:00
opt-bisect-legacy-pass-manager.ll [lit, python] Always add quotes around the python path in lit 2018-08-06 22:37:44 +00:00
opt-hot-cold-split.ll [HotColdSplit] Schedule splitting late to fix perf regression 2019-02-15 18:46:44 +00:00
opt-O0-pipeline.ll Generalize the pass registration mechanism used by Polly to any third-party tool 2020-01-02 16:45:31 +01:00
opt-O2-pipeline.ll [SLP] Support vectorizing functions provided by vector libs. 2020-03-10 13:10:50 +00:00
opt-O3-pipeline.ll [SLP] Support vectorizing functions provided by vector libs. 2020-03-10 13:10:50 +00:00
opt-Os-pipeline.ll [SLP] Support vectorizing functions provided by vector libs. 2020-03-10 13:10:50 +00:00
opt-override-frame-pointer.ll llc: Don't overwrite frame-pointer attribute 2020-01-15 20:56:46 -05:00
opt-override-mcpu-mattr.ll llc: Change behavior of -mattr with existing attribute 2020-01-15 19:46:01 -05:00
opt-pipeline-vector-passes.ll [PassManager] add tests for vector pass enabling; NFC 2020-02-29 07:56:41 -05:00
opt-twice.ll
optimization-remarks-inline.ll Revert "Revert "Reland "[Support] make report_fatal_error abort instead of exit""" 2020-02-13 10:16:06 -08:00
optimization-remarks-invalidation.ll [DebugInfo] Add DILabel metadata and intrinsic llvm.dbg.label. 2018-05-09 02:40:45 +00:00
optimization-remarks-lazy-bfi.ll [DebugInfo] Add DILabel metadata and intrinsic llvm.dbg.label. 2018-05-09 02:40:45 +00:00
optimize-inrange-gep.ll Prevent Constant Folding From Optimizing inrange GEP 2018-09-11 01:53:36 +00:00
optimize-options.ll
pass-pipeline-parsing.ll [NewPM] Fixing test failure on Windows - removed opt binary name from pattern 2018-10-17 11:01:15 +00:00
pass-pipelines.ll [LoopRotate] Get and update MSSA only if available in legacy pass manager. 2020-02-14 10:47:26 -08:00
pipefail.txt
pr32085.ll Use no-op opt run to eliminate the difference in bb pred comment, per chandler's suggestion. It is better than using sed on portability. 2018-05-01 17:19:25 +00:00
print-debug-counter.ll Actually fix test from r345085 REQUIRE: asserts 2018-10-23 22:07:34 +00:00
print-module-scope.ll Migrate function attribute "no-frame-pointer-elim" to "frame-pointer"="all" as cleanups after D56351 2019-12-24 15:57:33 -08:00
print-slotindexes.ll [SlotIndexes] Add print-slotindexes to disable printing slotindexes 2019-08-22 13:44:47 +00:00
printer.ll [PassInstrumentation] Remove excess newline for the new pass manager 2019-11-28 17:20:17 -08:00
ResponseFile.ll
scalable-vector-array.ll Scalable Vector IR Type with further LTO fixes 2019-07-05 12:48:16 +00:00
scalable-vector-struct.ll Scalable Vector IR Type with further LTO fixes 2019-07-05 12:48:16 +00:00
scalable-vectors-core-ir.ll [SVE][IR] Scalable Vector size queries and IR instruction support 2019-10-08 12:53:54 +00:00
scc-deleted-printer.ll [NewPM] -print-module-scope -print-after now prints module even after invalidated Loop/SCC 2018-12-21 11:49:05 +00:00
scc-pass-printer.ll Fixing -print-module-scope for legacy SCC passes 2018-12-03 14:48:15 +00:00
size-remarks.ll Make YAML quote forward slashes. 2018-10-12 16:31:20 +00:00
spir_cc.ll
statistic.ll Reland: [Timers] Use the pass argument name for JSON keys in time-passes 2018-06-13 21:03:56 +00:00
time-passes.ll [TimePasses] allow -time-passes reporting into a custom stream 2019-03-15 22:15:23 +00:00
unroll-sroa.ll [NewPM] Add an SROA pass after loop unroll 2019-11-01 14:59:08 -07:00
writing-to-stdout.ll