1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-25 04:02:41 +01:00
llvm-mirror/test
Nikita Popov 04e5b3198b Reapply "[DemandedBits][BDCE] Support vectors of integers"
DemandedBits and BDCE currently only support scalar integers. This
patch extends them to also handle vector integer operations. In this
case bits are not tracked for individual vector elements, instead a
bit is demanded if it is demanded for any of the elements. This matches
the behavior of computeKnownBits in ValueTracking and
SimplifyDemandedBits in InstCombine.

Unlike the previous iteration of this patch, getDemandedBits() can now
again be called on arbirary (sized) instructions, even if they don't
have integer or vector of integer type. (For vector types the size of the
returned mask will now be the scalar size in bits though.)

The added LoopVectorize test case shows a case which triggered an
assertion failure with the previous attempt, because getDemandedBits()
was called on a pointer-typed instruction.

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

llvm-svn: 348602
2018-12-07 15:38:13 +00:00
..
Analysis Reapply "[DemandedBits][BDCE] Support vectors of integers" 2018-12-07 15:38:13 +00:00
Assembler [IR] Don't assume all functions are 4 byte aligned 2018-12-07 08:34:59 +00:00
Bindings
Bitcode
BugPoint [test] Fix BugPoint/compile-custom.ll to use detected python exec 2018-12-02 16:49:23 +00:00
CodeGen [AMDGPU] Shrink scalar AND, OR, XOR instructions 2018-12-07 15:33:21 +00:00
DebugInfo Support skewed stream arrays. 2018-12-06 16:55:00 +00:00
Demangle
Examples
ExecutionEngine
Feature
FileCheck
Instrumentation [asan] Split -asan-use-private-alias to -asan-use-odr-indicator 2018-12-04 23:17:41 +00:00
Integer
JitListener
Linker
LTO LTO: Don't internalize available_externally globals. 2018-12-05 00:09:36 +00:00
MC [NFC][AArch64] Split out backend features 2018-12-06 15:39:17 +00:00
Object
ObjectYAML
Other Fixing -print-module-scope for legacy SCC passes 2018-12-03 14:48:15 +00:00
SafepointIRVerifier
SymbolRewriter
TableGen [TableGen] Preserve order of output operands in DAGISelMatcherGen 2018-12-05 00:47:59 +00:00
ThinLTO/X86 ThinLTO: Do not import debug info for imported global constants 2018-12-05 21:42:17 +00:00
tools Fix test/tools/llvm-mca/AArch64/Exynos/direct-branch.s on Mac 2018-12-07 09:58:33 +00:00
Transforms Reapply "[DemandedBits][BDCE] Support vectors of integers" 2018-12-07 15:38:13 +00:00
Unit
Verifier [GlobalISel] Introduce G_BUILD_VECTOR, G_BUILD_VECTOR_TRUNC and G_CONCAT_VECTOR opcodes. 2018-12-05 23:53:30 +00:00
YAMLParser
.clang-format
CMakeLists.txt
lit.cfg.py
lit.site.cfg.py.in
TestRunner.sh