Constant propagation after hiting llvm.assume
authorPiotr Padlewski <prazek@google.com>
Fri, 28 Aug 2015 01:01:57 +0000 (01:01 +0000)
committerPiotr Padlewski <prazek@google.com>
Fri, 28 Aug 2015 01:01:57 +0000 (01:01 +0000)
commit0f4937c49201ea1044fb6359111728ebb68a0a68
treed3fdc4e2567c50cd850344074a9cfee27c95c09b
parent87a13599bb036b93dd8a5c0a98efde09e62f7198
Constant propagation after hiting llvm.assume

After hitting @llvm.assume(X) we can:
- propagate equality that X == true
- if X is icmp/fcmp (with eq operation), and one of operand
  is constant we can change all variables with constants in the same BasicBlock

http://reviews.llvm.org/D11918

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@246243 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Transforms/Scalar/GVN.cpp
test/Transforms/GVN/assume-equal.ll [new file with mode: 0644]