llvm-project/llvm
Fraser Cormack 9aa20caee6 [RISCV] Improve register allocation around vector masks
With vector mask registers only allocatable to V0 (VMV0Regs) it is
relatively simple to generate code which uses multiple masks and naively
requires spilling.

This patch aims to improve codegen in such cases by telling LLVM it can
use VRRegs to hold masks. This will prevent spilling in many cases by
having LLVM copy to an available VR register.

Reviewed By: craig.topper

Differential Revision: https://reviews.llvm.org/D97055
2021-02-20 14:47:51 +00:00
..
benchmarks
bindings
cmake [cmake] Move check for libproc to config-ix.cmake 2021-02-18 10:54:27 +01:00
docs [lit] Add --xfail and --filter-out (inverse of --filter) 2021-02-20 05:43:29 -05:00
examples [Draft] [examples] Move llvm/examples/OCaml-Kaleidoscope/ to llvm-archive 2021-02-11 06:52:24 +05:30
include [ValueTracking] Improve impliesPoison 2021-02-20 13:22:34 +09:00
lib [RISCV] Improve register allocation around vector masks 2021-02-20 14:47:51 +00:00
projects
resources
runtimes [CMake] Delete LLVM_RUNTIME_BUILD_ID_LINK_TARGETS 2021-02-15 11:06:23 -08:00
test [RISCV] Improve register allocation around vector masks 2021-02-20 14:47:51 +00:00
tools [llvm-dwarfdump][locstats] Unify handling of inlined vars with no loc 2021-02-19 05:38:01 -08:00
unittests [ConstantRangeTest] Make exhaustive testing more principled (NFC) 2021-02-20 12:37:31 +01:00
utils [lit testing] "END." not "END:" 2021-02-20 09:43:36 -05:00
.clang-format
.clang-tidy
.gitattributes
.gitignore
CMakeLists.txt [cmake] Move check for libproc to config-ix.cmake 2021-02-18 10:54:27 +01: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.