LLVM backend for 6502
Go to file
Duncan P. N. Exon Smith 027898a77a IR: Add MDNode::replaceWithPermanent()
Add new API for converting temporaries that may self-reference.
Self-referencing nodes are not allowed to be uniqued, so sending them
into `replaceWithUniqued()` is dangerous (and this commit adds
assertions that prevent it).

`replaceWithPermanent()` has similar semantics to `get()` followed by
calls to `replaceOperandWith()`.  In particular, if there's a
self-reference, it returns a distinct node; otherwise, it returns a
uniqued one.  Like `replaceWithUniqued()` and `replaceWithDistinct()`
(well, it calls out to them) it mutates the temporary node in place if
possible, only calling `replaceAllUsesWith()` on a uniquing collision.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@228726 91177308-0d34-0410-b5e6-96231b3b80d8
2015-02-10 19:13:46 +00:00
autoconf Fix some bashims. More information on https://wiki.ubuntu.com/DashAsBinSh. Reported initially on https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=772302 & https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=772301 2015-02-01 14:55:43 +00:00
bindings [OCaml] Add Llvm.build_empty_phi. 2015-02-06 13:42:03 +00:00
cmake Teach llvm_add_library() to find include dirs. 2015-02-10 05:04:37 +00:00
docs Fix typo in cmake example docs 2015-02-10 14:15:58 +00:00
examples [Orc] Add a JITSymbol class to the Orc APIs, refactor APIs, update clients. 2015-02-09 01:20:51 +00:00
include IR: Add MDNode::replaceWithPermanent() 2015-02-10 19:13:46 +00:00
lib IR: Add MDNode::replaceWithPermanent() 2015-02-10 19:13:46 +00:00
projects
test [PowerPC] Fix reverted patch r227976 to avoid register assignment issues 2015-02-10 19:09:05 +00:00
tools Add code to llvm-objdump so the -section option with -macho will dump literal 2015-02-06 23:25:38 +00:00
unittests IR: Add MDNode::replaceWithPermanent() 2015-02-10 19:13:46 +00:00
utils [emacs] Get llvm-mode to font-lock "personality" 2015-02-09 00:30:03 +00:00
.arcconfig
.clang-format
.clang-tidy
.gitignore Add one more vim swap file pattern 2015-01-30 21:59:28 +00:00
CMakeLists.txt Revert "Raising minimum required CMake version to 2.8.12.2." 2015-02-09 22:07:49 +00:00
CODE_OWNERS.TXT Assume code ownership for the PS4 to ensure patches get reviewed, per the Developer Policy. 2015-01-28 18:33:39 +00:00
configure Fix some bashims. More information on https://wiki.ubuntu.com/DashAsBinSh. Reported initially on https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=772302 & https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=772301 2015-02-01 14:55:43 +00:00
CREDITS.TXT
LICENSE.TXT
llvm.spec.in
LLVMBuild.txt
Makefile
Makefile.common
Makefile.config.in
Makefile.rules
README.txt Revert test commit 2015-02-04 18:46:00 +00:00

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.