diff options
| author | Sanjay Patel <spatel@rotateright.com> | 2019-08-02 19:33:46 +0000 |
|---|---|---|
| committer | Sanjay Patel <spatel@rotateright.com> | 2019-08-02 19:33:46 +0000 |
| commit | 68264558f9998c5d72dcb7b4bc7d784d77a923ea (patch) | |
| tree | 962102d962a5ff55349ad7756c199391b0478d08 /llvm/lib/MC/MCCodeView.cpp | |
| parent | d5765ee5645948782bab583f6f8bb8a248f6c263 (diff) | |
| download | bcm5719-llvm-68264558f9998c5d72dcb7b4bc7d784d77a923ea.tar.gz bcm5719-llvm-68264558f9998c5d72dcb7b4bc7d784d77a923ea.zip | |
[DAGCombiner] try to convert opposing shifts to casts
This reverses a questionable IR canonicalization when a truncate
is free:
sra (add (shl X, N1C), AddC), N1C -->
sext (add (trunc X to (width - N1C)), AddC')
https://rise4fun.com/Alive/slRC
More details in PR42644:
https://bugs.llvm.org/show_bug.cgi?id=42644
I limited this to pre-legalization for code simplicity because that
should be enough to reverse the IR patterns. I don't have any
evidence (no regression test diffs) that we need to try this later.
Differential Revision: https://reviews.llvm.org/D65607
llvm-svn: 367710
Diffstat (limited to 'llvm/lib/MC/MCCodeView.cpp')
0 files changed, 0 insertions, 0 deletions

