We already try (but fail due to lack of sub op)
to convert this to fshr in AggressiveInstCombine.cpp:92.
If a target cannot lower fshr/fshl then it needs to be fixed.
Performance on targets that have such an instruction should
not be penalized.
Paths
| Differential D61152
[SimplifyCFG] use fshr instead of shl/lshr/or AbandonedPublic Authored by shawnl on Apr 25 2019, 2:02 PM.
Details
Summary We already try (but fail due to lack of sub op) If a target cannot lower fshr/fshl then it needs to be fixed.
Diff Detail
Revision Contents
Diff 196726 lib/Transforms/Utils/SimplifyCFG.cpp
test/Transforms/SimplifyCFG/rangereduce.ll
|