llvm-project/llvm/test
Florian Hahn b3b993a7ad Reland "[TTI] Add VecPred argument to getCmpSelInstrCost."
This reverts the revert commit 408c4408fa.

This version of the patch includes a fix for a crash caused by
treating ICmp/FCmp constant expressions as instructions.

Original message:

On some targets, like AArch64, vector selects can be efficiently lowered
if the vector condition is a compare with a supported predicate.

This patch adds a new argument to getCmpSelInstrCost, to indicate the
predicate of the feeding select condition. Note that it is not
sufficient to use the context instruction when querying the cost of a
vector select starting from a scalar one, because the condition of the
vector select could be composed of compares with different predicates.

This change greatly improves modeling the costs of certain
compare/select patterns on AArch64.

I am also planning on putting up patches to make use of the new argument in
SLPVectorizer & LV.
2020-11-02 15:39:29 +00:00
..
Analysis Reland "[TTI] Add VecPred argument to getCmpSelInstrCost." 2020-11-02 15:39:29 +00:00
Assembler Handle value uses wrapped in metadata for the use-list order 2020-10-20 20:05:59 +02:00
Bindings C API: support scalable vectors 2020-10-28 18:19:34 -04:00
Bitcode [DebugInfo] Support for DW_TAG_generic_subrange 2020-10-29 01:34:15 +05:30
BugPoint
CodeGen Revert "Fix ds_read2/write2 unaligned offsets" 2020-11-02 14:01:33 +00:00
DebugInfo [test] Fix unused check prefixes in test/DebugInfo 2020-10-30 23:29:24 -07:00
Demangle
Examples [examples] Fix test: Kaleidoscope Chapter 4 no longer supports redefinition. 2020-10-19 00:35:56 -07:00
ExecutionEngine Reapply "[jitlink][ELF] Add zero-fill blocks for symbols in section SHN_COMMON" 2020-10-24 16:58:06 +02:00
Feature [test] Delete Feature/load_module.ll which is covered by load_extension.ll 2020-10-27 12:50:53 -07:00
FileCheck Add missing EOL. NFCI. 2020-10-31 17:32:04 +00:00
Instrumentation [MemProf] Pass down memory profile name with optional path from clang 2020-11-01 17:38:23 -08:00
Integer
JitListener
LTO [IRMover] Avoid materializing global value that belongs to not-yet-linked module 2020-10-07 18:14:07 -07:00
Linker [test] Fix unused check prefixes in test/Linker/ and test/Other/ 2020-10-29 21:54:56 -07:00
MC Revert "[AArch64][AsmParser] Remove 'x31' alias for 'sp/xzr' register." 2020-11-02 08:15:50 +00:00
MachineVerifier [GlobalISel] Remove scalar src from non-sequential fadd/fmul reductions. 2020-10-15 15:51:44 -07:00
Object [AMDGPU] Refactor and extend elf-header-flags-mach tests 2020-10-30 18:57:04 +00:00
ObjectYAML [WebAssembly] Added .tabletype to asm and multiple table support in obj files 2020-10-13 07:52:23 -07:00
Other [SCEV] Introduce SCEVPtrToIntExpr (PR46786) 2020-10-30 11:13:35 +03:00
Reduce [llvm-reduce] Add reduction for aliases. 2020-10-28 13:11:19 +00:00
SafepointIRVerifier
Support
SymbolRewriter
TableGen [TableGen] Eliminate uses of true and false in .td files. 2020-10-31 10:54:33 -04:00
ThinLTO/X86 [test] Make ThinLTO/X86/crash_debuginfo.ll work with -enable-new-pm=1 2020-10-27 12:37:19 -07:00
Transforms Reland "[TTI] Add VecPred argument to getCmpSelInstrCost." 2020-11-02 15:39:29 +00:00
Unit
Verifier [DebugInfo] Support for DW_TAG_generic_subrange 2020-10-29 01:34:15 +05:30
YAMLParser
tools [TableGen][SchedModels] Fix read/write variant substitution 2020-11-02 17:39:04 +03:00
.clang-format
CMakeLists.txt
TestRunner.sh
lit.cfg.py
lit.site.cfg.py.in