Specifically, we transform
zext(2^K * (trunc X to iN)) to iM -> 2^K * (zext(trunc X to i{N-K}) to iM)<nuw>
This is helpful because pulling the 2^K out of the zext allows further
optimizations.
Differential D48158
[SCEV] Simplify zext/trunc idiom that appears when handling bitmasks. jlebar on Jun 13 2018, 8:32 PM. Authored by
Details Specifically, we transform zext(2^K * (trunc X to iN)) to iM -> 2^K * (zext(trunc X to i{N-K}) to iM)<nuw> This is helpful because pulling the 2^K out of the zext allows further
Diff Detail
Event TimelineComment Actions lgtm
|