llvm/lib/Transforms
Duncan Sands 7ecfcc1639 Fix a crash observed by Shuxin Yang. The issue here is that LinearizeExprTree,
the utility for extracting a chain of operations from the IR, thought that it
might as well combine any constants it came across (rather than just returning
them along with everything else).  On the other hand, the factorization code
would like to see the individual constants (this is quite reasonable: it is
much easier to pull a factor of 3 out of 2*3 than it is to pull it out of 6;
you may think 6/3 isn't so hard, but due to overflow it's not as easy to undo
multiplications of constants as it may at first appear).  This patch therefore
makes LinearizeExprTree stupider: it now leaves optimizing to the optimization
part of reassociate, and sticks to just analysing the IR.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168035 91177308-0d34-0410-b5e6-96231b3b80d8
2012-11-15 09:58:38 +00:00
..
Hello Since the Hello pass is built as a loadable dynamic library, don't try to convert it to new-style registration yet. 2010-10-07 00:31:16 +00:00
InstCombine InstCombineAndOrXor.cpp: Escape bracket in doxygen description. [-Wdocumentation] 2012-11-15 00:35:50 +00:00
Instrumentation [TSan] fix indentation 2012-11-14 14:33:59 +00:00
IPO Revert the series of commits starting with r166578 which introduced the 2012-11-01 08:07:29 +00:00
Scalar Fix a crash observed by Shuxin Yang. The issue here is that LinearizeExprTree, 2012-11-15 09:58:38 +00:00
Utils Figure out <size> argument of llvm.lifetime intrinsics at the moment they are created (during function inlining) 2012-11-13 07:15:32 +00:00
Vectorize Replace std::vector -> SmallVector in BBVectorize 2012-11-14 19:53:27 +00:00
CMakeLists.txt Add a basic-block autovectorization pass. 2012-02-01 03:51:43 +00:00
LLVMBuild.txt Add a basic-block autovectorization pass. 2012-02-01 03:51:43 +00:00
Makefile Add a basic-block autovectorization pass. 2012-02-01 03:51:43 +00:00