Fork of llvm with experimental commits and workarounds for RPCS3
Go to file
David Majnemer a39248360a InstSimplify: The upper bound of X / C was missing a rounding step
Summary:
When calculating the upper bound of X / -8589934592, we would perform
the following calculation: Floor[INT_MAX / 8589934592]

However, flooring the result would make us wrongly come to the
conclusion that 1073741824 was not in the set of possible values.
Instead, use the ceiling of the result.

Reviewers: nicholas

Subscribers: llvm-commits

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

llvm-svn: 212976
2014-07-14 19:49:57 +00:00
autoconf
bindings [OCaml] Documentation improvements. 2014-07-02 22:17:20 +00:00
cmake [CMake][Win32.DLL] Let llvm_add_library(SHARED) link dependent libraries as PRIVATE. 2014-07-14 12:26:15 +00:00
docs Add FileCheck -implicit-check-not option to allow stricter tests without adding too many CHECK-NOTs manually. 2014-07-11 12:39:32 +00:00
examples [CMake] Update libdeps. 2014-07-14 05:01:53 +00:00
include Add CreatePointerBitCastOrAddrSpaceCast to IRBuilder and co. 2014-07-14 17:24:35 +00:00
lib InstSimplify: The upper bound of X / C was missing a rounding step 2014-07-14 19:49:57 +00:00
projects
test InstSimplify: The upper bound of X / C was missing a rounding step 2014-07-14 19:49:57 +00:00
tools llvm-objdump: Handle BSS sections larger than the object file 2014-07-14 16:20:14 +00:00
unittests [CMake] Update libdeps. 2014-07-14 05:01:53 +00:00
utils Option: Propagate flags from groups to options in each group 2014-07-12 00:18:58 +00:00
.arcconfig
.clang-format
.gitignore Add Polly to the ignored trees. 2014-06-25 13:13:36 +00:00
CMakeLists.txt [CMake] Introduce LLVM_SHLIB_OUTPUT_INTDIR. 2014-07-04 04:23:26 +00:00
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 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.