llvm-project/llvm
Dan Gohman 038d02e74e Implement more aggressive folding of add operand lists when
they contain multiplications of constants with add operations.
This helps simplify several kinds of things; in particular it
helps simplify expressions like ((-1 * (%a + %b)) + %a) to %b,
as expressions like this often come up in loop trip count
computations.

llvm-svn: 73361
2009-06-14 22:58:51 +00:00
..
Xcode Remove Stacker.html from Xcode project. 2008-10-14 23:23:59 +00:00
autoconf Add a flag to permit disabling libffi. 2009-06-06 06:24:44 +00:00
bindings Give embedded metadata its own type instead of relying on EmptyStructTy. 2009-05-30 05:06:04 +00:00
cmake CMake: New variable LLVM_LIBDIR_SUFFIX. 2009-06-12 02:49:53 +00:00
docs Document noredzone and noimplicitfloat function attributes. 2009-06-12 19:45:19 +00:00
examples silence a warning. 2009-04-15 00:16:05 +00:00
include Specialize DenseMapInfo for SCEVHandle, so that SCEVHandles can be 2009-06-14 22:55:07 +00:00
lib Implement more aggressive folding of add operand lists when 2009-06-14 22:58:51 +00:00
projects Revert r67655 and r67656, as they are breaking the build. I'm 2009-03-25 00:52:11 +00:00
runtime Drop toy GC runtime. 2009-03-02 03:46:48 +00:00
test Implement more aggressive folding of add operand lists when 2009-06-14 22:58:51 +00:00
tools Bug fix: 2009-06-09 21:14:25 +00:00
unittests Reversed order of args in EXPECT_EQ() macros to be in the correct order: 2009-06-09 21:48:57 +00:00
utils Add output of the SFINAE bit for Clang's diagnostics 2009-06-14 07:24:49 +00:00
website
win32 Add a new codegen pass that normalizes dwarf exception handling 2009-05-22 20:36:31 +00:00
CMakeLists.txt CMake: New variable LLVM_LIBDIR_SUFFIX. 2009-06-12 02:49:53 +00:00
CREDITS.TXT Add myself, test commit 2009-06-14 02:03:17 +00:00
LICENSE.TXT Now that we have atomics support properly detected by configure, 2009-05-19 00:08:29 +00:00
Makefile Change 'make install' to install tblgen, for better support of out-of-tree targets, 2009-05-08 17:32:47 +00:00
Makefile.common Removed trailing whitespace from Makefiles. 2009-01-09 16:44:42 +00:00
Makefile.config.in Add a --enable-profiling option to configure to build Debug+Profile and 2009-04-17 14:49:22 +00:00
Makefile.rules On platforms like Sparc64 you need to pass -r to 2009-06-05 15:05:19 +00:00
ModuleInfo.txt Patch to build llvm with srcdir != objdir from 2009-01-23 08:42:38 +00:00
README.txt README.txt: test commit w/blank line appended 2009-03-23 21:00:45 +00:00
build-for-llvm-top.sh Patch to build llvm with srcdir != objdir from 2009-01-23 08:42:38 +00:00
configure Regenerate. 2009-06-06 06:25:09 +00:00
llvm.spec.in

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 HTML documentation provided in docs/index.html for further
assistance with LLVM.