llvm-project/llvm
Simon Pilgrim 72e242a286 [X86][AVX] canonicalizeShuffleMaskWithHorizOp - improve support for 256/512-bit vectors
Extend the HOP(HOP(X,Y),HOP(Z,W)) and SHUFFLE(HOP(X,Y),HOP(Z,W)) folds to handle repeating 256/512-bit vector cases.

This allows us to drop the UNPACK(HOP(),HOP()) custom fold in combineTargetShuffle.

This required isRepeatedTargetShuffleMask to be tweaked to support target shuffle masks taking more than 2 inputs.
2021-05-12 12:13:24 +01:00
..
benchmarks
bindings
cmake [cmake] Enable -Wmisleading-indentation 2021-05-10 09:56:04 -07:00
docs [NFC][AMDGPU] Correct product name for gfx908 2021-05-11 15:17:04 +00:00
examples [ORC] Update SpeculativeJIT example for dispatchTask changes in 5344c88dcb. 2021-05-10 09:30:46 -07:00
include Reapply "[DebugInfo] Fix updateDbgUsersToReg to support DBG_VALUE_LIST" 2021-05-12 10:19:57 +01:00
lib [X86][AVX] canonicalizeShuffleMaskWithHorizOp - improve support for 256/512-bit vectors 2021-05-12 12:13:24 +01:00
projects
resources
runtimes
test [X86][AVX] canonicalizeShuffleMaskWithHorizOp - improve support for 256/512-bit vectors 2021-05-12 12:13:24 +01:00
tools [llvm-readelf] Unhide short options to match the command guide 2021-05-12 12:09:08 +01:00
unittests [Coverage] Support overriding compilation directory 2021-05-11 15:26:45 -07:00
utils [AArch64][GlobalISel] Support truncstorei8/i16 w/ combine to form truncating G_STOREs. 2021-05-11 11:33:03 -07:00
.clang-format
.clang-tidy
.gitattributes
.gitignore
CMakeLists.txt [flang][cmake] Enable the new driver by default 2021-05-11 09:16:29 +00:00
CODE_OWNERS.TXT
CREDITS.TXT
LICENSE.TXT
README.txt
RELEASE_TESTERS.TXT
configure
llvm.spec.in

README.txt

The LLVM Compiler Infrastructure
================================

This directory and its subdirectories contain source code for LLVM,
a toolkit for the construction of highly optimized compilers,
optimizers, and runtime environments.

LLVM is open source software. You may freely distribute it under the terms of
the license agreement found in LICENSE.txt.

Please see the documentation provided in docs/ for further
assistance with LLVM, and in particular docs/GettingStarted.rst for getting
started with LLVM and docs/README.txt for an overview of LLVM's
documentation setup.

If you are writing a package for LLVM, see docs/Packaging.rst for our
suggestions.