LLVM backend for 6502
Go to file
Sanjoy Das 368f045de1 [InstCombine] Refactor out OptimizeOverflowCheck. NFCI.
Summary:
This patch adds an enum `OverflowCheckFlavor` and a function
`OptimizeOverflowCheck`.  This will allow InstCombine to optimize
overflow checks without directly introducing an intermediate call to the
`llvm.$op.with.overflow` instrinsics.

This specific change is a refactoring and does not intend to change
behavior.

Reviewers: majnemer, atrick

Subscribers: llvm-commits

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

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@234388 91177308-0d34-0410-b5e6-96231b3b80d8
2015-04-08 04:27:22 +00:00
autoconf Try to unbreak Clang build to export LLVM_ABI_BREAKING_CHECKS, fixup for r233310. 2015-04-01 11:46:15 +00:00
bindings IR: Remove MDTupleTypedArrayWrapper::operator MDTuple*() 2015-04-07 16:50:39 +00:00
cmake Disable all link optimizations in a debug build. 2015-04-06 15:04:31 +00:00
docs R600/SI: Initial support for assembler and inline assembly 2015-04-08 01:09:26 +00:00
examples llvm/examples/BrainF: Give an explicit pointee type to ConstantExpr::getGetElementPtr(ty...), according to r233938. 2015-04-02 22:44:00 +00:00
include Revert "[LoopAccesses] Allow analysis to complete in the presence of uniform stores" 2015-04-08 04:16:55 +00:00
lib [InstCombine] Refactor out OptimizeOverflowCheck. NFCI. 2015-04-08 04:27:22 +00:00
projects
test Revert "[LoopAccesses] Allow analysis to complete in the presence of uniform stores" 2015-04-08 04:16:55 +00:00
tools IR: Stop using DIDescriptor::is*() and auto-casting 2015-04-06 23:18:49 +00:00
unittests IR: Remove MDTupleTypedArrayWrapper::operator MDTuple*() 2015-04-07 16:50:39 +00:00
utils Add boolean to PrintStackTraceOnErrorSignal to disable crash reporting. 2015-04-07 20:43:23 +00:00
.arcconfig
.clang-format
.clang-tidy
.gitignore Ignore compile_commands.json only at the root of the tree. 2015-03-26 18:55:42 +00:00
CMakeLists.txt Enable W4 warnings by default for MSVC builds 2015-04-07 19:01:01 +00:00
CODE_OWNERS.TXT Tom is also responsible for the 3.6 branch. 2015-03-16 18:15:27 +00:00
configure Try to unbreak Clang build to export LLVM_ABI_BREAKING_CHECKS, fixup for r233310. 2015-04-01 11:46:15 +00:00
CREDITS.TXT
LICENSE.TXT Update for a new year. 2015-03-12 01:25:29 +00:00
llvm.spec.in
LLVMBuild.txt
Makefile
Makefile.common
Makefile.config.in Try to unbreak Clang build to export LLVM_ABI_BREAKING_CHECKS, fixup for r233310. 2015-04-01 11:46:15 +00:00
Makefile.rules
README.txt Revert test commit at revision 233535. 2015-03-30 12:39:03 +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.