llvm-project/llvm
David Green 40f46cb0e4 [ARM] Add alignment checks for MVE VLDn
The MVE VLD2/4 and VST2/4 instructions require the pointer to be aligned
to at least the size of the element type. This adds a check for that
into the ARM lowerInterleavedStore and lowerInterleavedLoad functions,
not creating the intrinsics if they are invalid for the alignment of
the load/store.

Unfortunately this is one of those bug fixes that does effect some
useful codegen, as we were able to sometimes do some nice lowering of
q15 types. But they can cause problem with low aligned pointers.

Differential Revision: https://reviews.llvm.org/D95319
2021-01-28 13:10:08 +00:00
..
benchmarks
bindings
cmake Reland [lldb][docs] Use sphinx instead of epydoc to generate LLDB's Python reference 2021-01-17 12:13:01 +01:00
docs [AMDGPU] Write "GFX6-GFX9" instead of "GFX6-9" in docs 2021-01-27 10:07:07 +00:00
examples [Doc][NFC] Fix Kaleidoscope links, typos and add blog posts for MCJIT 2021-01-25 19:59:36 +05:30
include [DebugInfo] Remove some unused includes. NFCI. 2021-01-28 11:21:35 +00:00
lib [ARM] Add alignment checks for MVE VLDn 2021-01-28 13:10:08 +00:00
projects
resources
runtimes [CMake] Split the target side of runtimes build 2021-01-11 23:39:36 -08:00
test [ARM] Add alignment checks for MVE VLDn 2021-01-28 13:10:08 +00:00
tools [CSSPGO] Support of CS profiles in extended binary format. 2021-01-27 21:29:46 -08:00
unittests [LoopVectorize] use IR fast-math-flags exclusively (not FP function attributes) 2021-01-27 14:17:11 -05:00
utils IntrinsicEmitter: Change IntrinsicsToAttributesMap from uint8_t[] to uint16_t[] 2021-01-27 20:34:35 -08:00
.clang-format
.clang-tidy
.gitattributes
.gitignore
CMakeLists.txt Bump the trunk major version to 13 2021-01-26 19:37:55 -08:00
CODE_OWNERS.TXT Change XCore code owner. 2021-01-14 12:13:48 +00: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.