llvm-project/llvm
Akira Hatanaka f6afd11538 [InstCombine] Preserve metadata when merging loads that are phi
arguments.

Make sure InstCombiner::FoldPHIArgLoadIntoPHI doesn't drop the following
metadata:

MD_tbaa
MD_alias_scope
MD_noalias
MD_invariant_load
MD_nonnull
MD_range

rdar://problem/17617709

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

llvm-svn: 248419
2015-09-23 18:40:57 +00:00
..
autoconf Don't use bashism/kshism of test ==. From Kamil Rytarowski. 2015-09-12 16:30:32 +00:00
bindings
cmake [CMake] Adding ALWAYS_GENERATE option to symlink utility functions. 2015-09-18 21:08:32 +00:00
docs Nit cleanup in LangRef about dereferenceable metadata 2015-09-18 12:07:10 +00:00
examples Fix typo and test commit 2015-09-18 21:15:45 +00:00
include [docs] Update DominatorTree docs to clarify expectations around unreachable blocks 2015-09-23 18:39:37 +00:00
lib [InstCombine] Preserve metadata when merging loads that are phi 2015-09-23 18:40:57 +00:00
projects
resources
test [InstCombine] Preserve metadata when merging loads that are phi 2015-09-23 18:40:57 +00:00
tools dsymutil: Resolve forward decls for types defined in clang modules. 2015-09-23 17:35:52 +00:00
unittests Add a unit test for r248341. 2015-09-22 23:42:47 +00:00
utils Remove extra 'nullptr' entry from an array in tablegen register info file. It should never have been accessed. 2015-09-22 05:37:16 +00:00
.arcconfig
.clang-format
.clang-tidy
.gitignore
CMakeLists.txt [CMake] [Darwin] Need to set lto_library on CMAKE_MODULE_LINKER_FLAGS as well 2015-09-11 18:39:19 +00:00
CODE_OWNERS.TXT
CREDITS.TXT
LICENSE.TXT
LLVMBuild.txt
Makefile
Makefile.common
Makefile.config.in
Makefile.rules
README.txt
configure Don't use bashism/kshism of test ==. From Kamil Rytarowski. 2015-09-12 16:30:32 +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're writing a package for LLVM, see docs/Packaging.rst for our
suggestions.