LLVM backend for 6502
Go to file
Philip Reames 7b60e0eb39 Preserve 'nonnull' when changing type of the load.
When changing the type of a load in Chandler's recent InstCombine changes, we can preserve the new 'nonnull' metadata.  

I considered adding an assert since 'nonnull' is only valid on pointer types, but casting a pointer to a non-pointer would involve more than a bitcast anyways.  If someone extends this transform to handle more than bitcasts, the verifier will report the malformed IR, so a separate assertion isn't needed.  Also, the fpmath flags would have the same problem.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@220324 91177308-0d34-0410-b5e6-96231b3b80d8
2014-10-21 21:00:03 +00:00
autoconf Initial version of Go bindings. 2014-10-16 22:48:02 +00:00
bindings Fix bashism in build.sh. 2014-10-17 02:20:40 +00:00
cmake Teach lit to filter the host LDFLAGS down from the build system and into 2014-10-21 00:36:28 +00:00
docs Introduce a 'nonnull' metadata on Load instructions. 2014-10-20 22:40:55 +00:00
examples Add doInitialization/doFinalization to DataLayoutPass. 2014-09-10 21:27:43 +00:00
include [PBQP] Teach PassConfig to tell if the default register allocator is used. 2014-10-21 20:47:22 +00:00
lib Preserve 'nonnull' when changing type of the load. 2014-10-21 21:00:03 +00:00
projects [cmake] Use the external project machinery for libcxxabi so that it can 2014-07-25 10:27:40 +00:00
test [PBQP] Teach PassConfig to tell if the default register allocator is used. 2014-10-21 20:47:22 +00:00
tools Move code a bit to avoid a few declarations. NFC. 2014-10-21 20:34:57 +00:00
unittests Silence a -Wcast-qual warning; NFC. 2014-10-21 16:12:37 +00:00
utils Teach Lit to catch OSError exceptions when creating a process during the 2014-10-20 20:14:28 +00:00
.arcconfig Updated phabricator server. 2014-04-07 03:57:04 +00:00
.clang-format
.clang-tidy Add .clang-tidy configuration file to provide LLVM-optimized defaults for 2014-09-08 13:30:00 +00:00
.gitignore Initial version of Go bindings. 2014-10-16 22:48:02 +00:00
CMakeLists.txt Add LLVM_ENABLE_MODULES flag to CMake to enable building with C++ modules. 2014-09-26 22:40:15 +00:00
CODE_OWNERS.TXT Add Tom Stellard's role as 3.5 release manager. 2014-09-12 08:07:31 +00:00
configure Initial version of Go bindings. 2014-10-16 22:48:02 +00:00
CREDITS.TXT Rise from the dead and update personal info 2014-08-25 17:51:04 +00:00
LICENSE.TXT Remove projects/sample. 2014-03-12 22:40:22 +00:00
llvm.spec.in
LLVMBuild.txt
Makefile [configure/make] Propagate names of build host tools when making BuildTools 2014-03-25 21:45:41 +00:00
Makefile.common
Makefile.config.in Initial version of Go bindings. 2014-10-16 22:48:02 +00:00
Makefile.rules Revert my earlier change to add "all" as a dependency to check. In 2014-09-19 18:44:27 +00:00
README.txt Trivial test commit. 2014-04-26 19:05:45 +00:00

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

This directory and its subdirectories contain source code for the Low Level
Virtual Machine, 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.