llvm-project/llvm/test
Craig Topper fe3bbb251b [X86] Add a bunch of test cases for storing a scalar bitcasted from a vXi1 type.
Currently a store combine will absorb the bitcast before our combine that turns bitcasts into movmsk gets a chance to run. This results in a store being created with a vXi1 type. Type legalization then promotes the input type and makes this a truncating store. Then we badly scalarize this store.

Currently we avoid this on v8i1->i8 bitcasts due to an incompletely qualified(per the original intention) check in isLoadBitCastBeneficial. An easy fix is to disable this for all vXi1->iX bitcasts on pre-avx512 targets. We'll still generate terrible code if the IR explicitly contains a store of vXi1 without a bitcast. We could probably solve that by just turning all stores of vXi1 into (store (iX (bitcast))) as an early DAG combine.

llvm-svn: 347631
2018-11-27 02:57:23 +00:00
..
Analysis [stack-safety] Inter-Procedural Analysis implementation 2018-11-26 23:05:58 +00:00
Assembler [ThinLTO] Assembly representation of ReadOnly attribute 2018-11-23 10:54:51 +00:00
Bindings [LLVM-C] Improve Intrinsics Bindings 2018-11-06 01:38:14 +00:00
Bitcode [ThinLTO] Assembly representation of ReadOnly attribute 2018-11-23 10:54:51 +00:00
BugPoint
CodeGen [X86] Add a bunch of test cases for storing a scalar bitcasted from a vXi1 type. 2018-11-27 02:57:23 +00:00
DebugInfo [CodeView] Add support for ref-qualified member functions. 2018-11-20 22:13:43 +00:00
Demangle [MS Demangler] Print public:, protected:, private: if set in FunctionClass or a variable's StorageClass. 2018-11-13 20:18:26 +00:00
Examples
ExecutionEngine [ExecutionEngine][Interpreter] Fix out-of-bounds array access. 2018-11-20 01:01:26 +00:00
Feature Mark @llvm.trap cold 2018-11-14 19:53:41 +00:00
FileCheck [FileCheck] introduce CHECK-COUNT-<num> repetition directive 2018-11-13 00:46:13 +00:00
Instrumentation [sancov] Put .SCOV* sections into the right comdat groups on COFF 2018-11-08 00:57:33 +00:00
Integer
JitListener
LTO [LTO] Load sample profile in LTO link step. 2018-11-15 18:06:42 +00:00
Linker
MC Reland test/MC/Mips/reloc-directive-label-offset.s 2018-11-22 18:18:58 +00:00
Object AMDGPU: Enable code object v3 for AMDHSA only 2018-11-15 02:32:43 +00:00
ObjectYAML [WebAssembly] Add support for dylink section in object format 2018-11-14 18:36:24 +00:00
Other Print newline after banner for ModulePass 2018-11-14 10:05:28 +00:00
SafepointIRVerifier
SymbolRewriter
TableGen Reverted r347092 due to the following build fails: 2018-11-17 02:26:34 +00:00
ThinLTO/X86 [ThinLTO] Add some stats for read only variable internalization 2018-11-17 20:03:22 +00:00
Transforms [InstCombine] add tests for rotate/bswap equality; NFC 2018-11-27 00:08:21 +00:00
Unit
Verifier [IRVerifier] Allow StructRet in statepoint 2018-11-16 14:28:05 +00:00
YAMLParser
tools [cfi] Help sanstats to find binary if they are not at the original location 2018-11-26 21:48:55 +00:00
.clang-format
CMakeLists.txt
TestRunner.sh
lit.cfg.py
lit.site.cfg.py.in