{"push_id":1379629231,"size":1,"distinct_size":1,"ref":"refs/heads/master","head":"e7291efa87e67dc68f44741b2b5cd4e7925d917c","before":"92c5c9e3abbd4dea13e6b4168fb752f9af6bbb30","commits":[{"sha":"e7291efa87e67dc68f44741b2b5cd4e7925d917c","author":{"name":"Sanjay Patel","email":"8a358757f1b64d62facccc1fd839683fb6856b45@rotateright.com"},"message":"[InstCombine] Fold nuw left-shifts in `ugt`/`ule` comparisons.\n\nThis transforms\n\n%a = shl nuw %x, c1\n%b = icmp {ugt|ule} %a, c0\n\ninto\n\n%b = icmp {ugt|ule} %x, (c0 >> c1)\n\nz3:\n\n(declare-const x (_ BitVec 64))\n(declare-const c0 (_ BitVec 64))\n(declare-const c1 (_ BitVec 64))\n\n(push)\n(assert (= x (bvlshr (bvshl x c1) c1)))  ; nuw\n(assert (not (= (bvugt (bvshl x c1) c0)\n                (bvugt x\n                       (bvlshr c0 c1)))))\n(check-sat)\n(get-model)\n(pop)\n\n(push)\n(assert (= x (bvlshr (bvshl x c1) c1)))  ; nuw\n(assert (not (= (bvule (bvshl x c1) c0)\n                (bvule x\n                       (bvlshr c0 c1)))))\n(check-sat)\n(get-model)\n(pop)\n\nPatch by bryant!\n\nDifferential Revision: https://reviews.llvm.org/D25913\n\n\ngit-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@285729 91177308-0d34-0410-b5e6-96231b3b80d8","distinct":true,"url":"https://api.github.com/repos/llvm-mirror/llvm/commits/e7291efa87e67dc68f44741b2b5cd4e7925d917c"}]}
{"actor":{"display_login":"llvm-mirror"}}