Canonicalization for @llvm.assume
authorHal Finkel <hfinkel@anl.gov>
Fri, 25 Jul 2014 21:45:17 +0000 (21:45 +0000)
committerHal Finkel <hfinkel@anl.gov>
Fri, 25 Jul 2014 21:45:17 +0000 (21:45 +0000)
commit5cb8ab5b5af971ee589f2659529a5759378c76ad
treeb24f2a27c94b556eefffd3a74452cd905adbb5d8
parenta7f2c540fa1810cb8d6253c23dc77d99d3a2e4d0
Canonicalization for @llvm.assume

Adds simple logical canonicalization of assumption intrinsics to instcombine,
currently:
 - invariant(a && b) -> invariant(a); invariant(b)
 - invariant(!(a || b)) -> invariant(!a); invariant(!b)

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