LLVM backend for 6502
Go to file
Sanjoy Das 48fcc07856 Make ScalarEvolution less aggressive with respect to no-wrap flags.
ScalarEvolution currently lowers a subtraction recurrence to an add
recurrence with the same no-wrap flags as the subtraction.  This is
incorrect because `sub nsw X, Y` is not the same as `add nsw X, -Y`
and `sub nuw X, Y` is not the same as `add nuw X, -Y`.  This patch
fixes the issue, and adds two test cases demonstrating the bug.

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



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@226755 91177308-0d34-0410-b5e6-96231b3b80d8
2015-01-22 00:48:47 +00:00
autoconf
bindings IR: Return unique_ptr from MDNode::getTemporary() 2015-01-19 21:30:18 +00:00
cmake Don't pass -Wl,z,defs for now. 2015-01-20 22:08:20 +00:00
docs Explicitly describe '///' versus '//' comment delimiters. 2015-01-22 00:19:56 +00:00
examples Reorder. 2015-01-19 00:35:33 +00:00
include Rewrite DIExpression::Verify() using an iterator. NFC. 2015-01-22 00:00:52 +00:00
lib Make ScalarEvolution less aggressive with respect to no-wrap flags. 2015-01-22 00:48:47 +00:00
projects
test Make ScalarEvolution less aggressive with respect to no-wrap flags. 2015-01-22 00:48:47 +00:00
tools For llvm-objdump, hook up existing options to work when using -macho (the Mach-O parser). 2015-01-20 21:47:46 +00:00
unittests Adding a new cl::HideUnrelatedOptions API to allow clang to migrate off cl::getRegisteredOptions. 2015-01-21 22:45:52 +00:00
utils [lit] Format JSONMetricValue strings better. 2015-01-21 16:38:31 +00:00
.arcconfig
.clang-format
.clang-tidy
.gitignore
CMakeLists.txt
CODE_OWNERS.TXT
configure
CREDITS.TXT
LICENSE.TXT
llvm.spec.in
LLVMBuild.txt
Makefile
Makefile.common
Makefile.config.in
Makefile.rules
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.