1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-24 19:52:54 +01:00
llvm-mirror/test
Craig Topper 357f5b0cc3 [X86] Add a DAG combine to transform (i8 (bitcast (v8i1 (extract_subvector (v16i1 X), 0)))) -> (i8 (trunc (i16 (bitcast (v16i1 X))))) on KNL target
Without AVX512DQ we don't have KMOVB so we can't really copy 8-bits of a k-register to a GPR. We have to copy 16 bits instead. We do this even if the DAG copy is from v8i1->v16i1. If we detect the (i8 (bitcast (v8i1 (extract_subvector (v16i1 X), 0)))) we should rewrite the types to match the copy we do support. By doing this, we can help known bits to propagate without losing the upper 8 bits of the input to the extract_subvector. This allows some zero extends to be removed since we have an isel pattern to use kmovw for (zero_extend (i16 (bitcast (v16i1 X))).

Differential Revision: https://reviews.llvm.org/D66489

llvm-svn: 369434
2019-08-20 20:20:04 +00:00
..
Analysis [MemorySSA] Rename uses when inserting memory uses. 2019-08-19 18:57:40 +00:00
Assembler
Bindings
Bitcode
BugPoint
CodeGen [X86] Add a DAG combine to transform (i8 (bitcast (v8i1 (extract_subvector (v16i1 X), 0)))) -> (i8 (trunc (i16 (bitcast (v16i1 X))))) on KNL target 2019-08-20 20:20:04 +00:00
DebugInfo [DebugInfo] Make postra sinking of DBG_VALUEs subregister-safe 2019-08-19 09:53:07 +00:00
Demangle
Examples
ExecutionEngine
Feature
FileCheck
Instrumentation
Integer
JitListener
Linker
LTO [MC] Don't emit .symver redirected symbols to the symbol table 2019-08-19 06:17:30 +00:00
MachineVerifier
MC [RISCV] Implement getExprForFDESymbol to ensure RISCV_32_PCREL is used for the FDE location 2019-08-20 12:32:31 +00:00
Object [test/Object] - Move/rewrite 2 more test cases. 2019-08-20 08:23:57 +00:00
ObjectYAML [yaml2obj/obj2yaml][MachO] Fix a test failure in big endian hosts 2019-08-20 09:58:31 +00:00
Other
Reduce
SafepointIRVerifier
Support
SymbolRewriter
TableGen
ThinLTO/X86
tools [X86][BtVer2] Use ReadAfterLd entries for the register operands of CMPXCHG. 2019-08-20 17:05:56 +00:00
Transforms [BlockExtractor] Avoid assert with wrong line format 2019-08-20 14:46:02 +00:00
Unit
Verifier
YAMLParser
.clang-format
CMakeLists.txt
lit.cfg.py
lit.site.cfg.py.in
TestRunner.sh