1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-22 04:22:57 +02:00
llvm-mirror/lib/Transforms
David Majnemer 82ec1d080e Optimize icmp involving addition better
Allows LLVM to optimize sequences like the following:

%add = add nsw i32 %x, 1
%cmp = icmp sgt i32 %add, %y

into:

%cmp = icmp sge i32 %x, %y

as well as:

%add1 = add nsw i32 %x, 20
%add2 = add nsw i32 %y, 57
%cmp = icmp sge i32 %add1, %add2

into:

%add = add nsw i32 %y, 37
%cmp = icmp sle i32 %cmp, %x

llvm-svn: 179316
2013-04-11 20:05:46 +00:00
..
Hello Move all of the header files which are involved in modelling the LLVM IR 2013-01-02 11:36:10 +00:00
InstCombine Optimize icmp involving addition better 2013-04-11 20:05:46 +00:00
Instrumentation [ASan] Allow disabling init-order checks for globals by source file name. 2013-04-11 13:20:00 +00:00
IPO Use a worklist to avoid a sneaky iterator invalidation. 2013-04-02 08:16:45 +00:00
ObjCARC Fix some comment typos. 2013-04-09 22:15:51 +00:00
Scalar Redo the fix Benjamin Kramer committed in r178793 about iterator invalidation in Reassociate. 2013-04-08 22:00:43 +00:00
Utils Change CloneFunctionInto to always clone Argument attributes induvidually, 2013-04-10 10:37:38 +00:00
Vectorize Rename the C function to create a SLPVectorizerPass to something sane and expose it in the header file. 2013-04-11 11:36:36 +00:00
CMakeLists.txt Extracted ObjCARC.cpp into its own library libLLVMObjCARCOpts in preparation for refactoring the ARC Optimizer. 2013-01-28 01:35:51 +00:00
LLVMBuild.txt Extracted ObjCARC.cpp into its own library libLLVMObjCARCOpts in preparation for refactoring the ARC Optimizer. 2013-01-28 01:35:51 +00:00
Makefile Extracted ObjCARC.cpp into its own library libLLVMObjCARCOpts in preparation for refactoring the ARC Optimizer. 2013-01-28 01:35:51 +00:00