llvm-project/llvm
Silviu Baranga ad1dafb2c3 [LV] Fix PR26600: avoid out of bounds loads for interleaved access vectorization
Summary:
If we don't have the first and last access of an interleaved load group,
the first and last wide load in the loop can do an out of bounds
access. Even though we discard results from speculative loads,
this can cause problems, since it can technically generate page faults
(or worse).

We now discard interleaved load groups that don't have the first and
load in the group.

Reviewers: hfinkel, rengolin

Subscribers: rengolin, llvm-commits, mzolotukhin, anemet

Differential Revision: http://reviews.llvm.org/D17332

llvm-svn: 261331
2016-02-19 15:46:10 +00:00
..
bindings Kill LLVMAddTargetData 2016-02-16 00:22:02 +00:00
cmake cmake: Simplify the iOS.cmake toolchain 2016-02-12 23:36:05 +00:00
docs [LPM] Document the new helpers to make it easy to get consistent require 2016-02-19 10:59:43 +00:00
examples Remove autoconf support 2016-01-26 21:29:08 +00:00
include Add support for merging strings with alignment larger than one char. 2016-02-19 14:13:52 +00:00
lib [LV] Fix PR26600: avoid out of bounds loads for interleaved access vectorization 2016-02-19 15:46:10 +00:00
projects Remove autoconf support 2016-01-26 21:29:08 +00:00
resources
test [LV] Fix PR26600: avoid out of bounds loads for interleaved access vectorization 2016-02-19 15:46:10 +00:00
tools [llvm-nm] In C++, main implicitly returns 0. Pointed out by David Blaikie. 2016-02-19 02:22:54 +00:00
unittests Add profile summary support for sample profile. 2016-02-19 03:15:33 +00:00
utils [TableGen,X86] Add NDEBUG check to a variable initialization that's only used by asserts. NFC 2016-02-18 04:54:32 +00:00
.arcconfig
.clang-format
.clang-tidy adding readability-identifier-naming to llvm clang-tidy configuration. 2015-12-08 17:44:51 +00:00
.gitignore
CMakeLists.txt [CMake] Properly set CMAKE_BUILD_TYPE to Debug by default 2016-02-18 23:07:09 +00:00
CODE_OWNERS.TXT [docs] Remove references to autotools build. 2016-01-30 01:10:15 +00:00
CREDITS.TXT
LICENSE.TXT
LLVMBuild.txt
README.txt Revert previous test commit. 2016-01-04 19:13:29 +00:00
configure Remove autoconf support 2016-01-26 21:29:08 +00:00
llvm.spec.in

README.txt

Low Level Virtual Machine (LLVM)
================================

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.