llvm-project/llvm
Stanislav Mekhanoshin bcaf31ec3f [AMDGPU] Allow finer grain control of an unaligned access speed
A target can return if a misaligned access is 'fast' as defined
by the target or not. In reality there can be different levels
of 'fast' and 'slow'. This patch changes the boolean 'Fast'
argument of the allowsMisalignedMemoryAccesses family of functions
to an unsigned representing its speed.

A target can still define it as it wants and the direct translation
of the current code uses 0 and 1 for current false and true. This
makes the change an NFC.

Subsequent patch will start using an actual value of speed in
the load/store vectorizer to compare if a vectorized access going
to be not just fast, but not slower than before.

Differential Revision: https://reviews.llvm.org/D124217
2022-11-17 09:23:53 -08:00
..
benchmarks
bindings [AggressiveInstCombine] Remove legacy PM pass 2022-11-15 14:35:15 -08:00
cmake [cmake] Fix _GNU_SOURCE being added unconditionally 2022-11-14 12:28:21 -08:00
docs [LangRef] remove callbr references from Addresses of BasicBlock section 2022-11-16 09:19:20 -08:00
examples Revert "[LegacyPM] Remove pipeline extension mechanism" 2022-10-28 10:26:58 -07:00
include [AMDGPU] Allow finer grain control of an unaligned access speed 2022-11-17 09:23:53 -08:00
lib [AMDGPU] Allow finer grain control of an unaligned access speed 2022-11-17 09:23:53 -08:00
projects
resources
runtimes [libc] Forward LLVM_LIBC options when using a runtimes build 2022-11-14 16:23:56 -06:00
test ValueTracking: Look through copysign in isKnownNeverInfinity 2022-11-17 08:52:09 -08:00
tools Revert "[RISCV][llvm-mca] Use LMUL Instruments to provide more accurate reports on RISCV" 2022-11-15 18:01:46 -08:00
unittests [VPlan] Remove unnecessary casts from tests after 32f1c5531b. 2022-11-16 22:17:08 +00:00
utils [gn build] Port 332c4af35d 2022-11-16 15:19:13 +00:00
.clang-format
.clang-tidy
.gitattributes
.gitignore
CMakeLists.txt Move googletest to the third-party directory 2022-11-09 15:28:08 -08:00
CODE_OWNERS.TXT [SPIRV] support the enqueue_kernel builtin function 2022-11-01 02:52:08 +03:00
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.