[NFC][InstCombine] Shift amount reassociation: add flag preservation test
authorRoman Lebedev <lebedev.ri@gmail.com>
Fri, 28 Jun 2019 15:32:52 +0000 (15:32 +0000)
committerRoman Lebedev <lebedev.ri@gmail.com>
Fri, 28 Jun 2019 15:32:52 +0000 (15:32 +0000)
commit9f1dffdb024f4caa4aace4804aa4ac46dba523da
tree14d4fb76e3e7b47dfc1ac922fcea988ac0723851
parentd12966c088357bcdf6fbc796f6414cd019f1996a
[NFC][InstCombine] Shift amount reassociation: add flag preservation test

As discussed in https://reviews.llvm.org/D63812#inline-569870
* exact on both lshr => exact https://rise4fun.com/Alive/plHk
* exact on both ashr => exact https://rise4fun.com/Alive/QDAA
* nuw on both shl => nuw https://rise4fun.com/Alive/5Uk
* nsw on both shl => nsw https://rise4fun.com/Alive/0plg

So basically if the same flag is set on both original shifts -> set it on new shift.
Don't think we can do anything with non-matching flags on shl.

llvm-svn: 364652
llvm/test/Transforms/InstCombine/shift-amount-reassociation.ll