aboutsummaryrefslogtreecommitdiff
path: root/lib/Analysis/BasicAliasAnalysis.cpp
diff options
context:
space:
mode:
authorDuncan Sands <baldrick@free.fr>2011-01-18 09:24:58 +0000
committerDuncan Sands <baldrick@free.fr>2011-01-18 09:24:58 +0000
commitfe02c69f84ad52d42be934e4fe702f03e4991a6a (patch)
treeaa3ac73de8b775633dc315afb6b202b8ed74770e /lib/Analysis/BasicAliasAnalysis.cpp
parent908d8e82b5cc19d1a0a55a5fbc9dfd87359d726e (diff)
Simplify (X<<1)-X into X. According to my auto-simplier this is the most common missed
simplification in fully optimized code. It occurs sporadically in the testsuite, and many times in 403.gcc: the final bitcode has 131 fewer subtractions after this change. The reason that the multiplies are not eliminated is the same reason that instcombine did not catch this: they are used by other instructions (instcombine catches this with a more general transform which in general is only profitable if the operands have only one use). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@123754 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Analysis/BasicAliasAnalysis.cpp')
0 files changed, 0 insertions, 0 deletions