diff options
| author | Craig Topper <craig.topper@sifive.com> | 2022-11-14 19:37:04 -0800 |
|---|---|---|
| committer | Craig Topper <craig.topper@sifive.com> | 2022-11-14 19:44:05 -0800 |
| commit | dde8423f21fb09c77b83d1ec50d5fff6bb940586 (patch) | |
| tree | 0cd5d700e2660a2ebcf70443ad9d8f0505c0625f /llvm/lib/Bitcode/Reader/BitcodeReader.cpp | |
| parent | 17737437ed7bb4ca646020b17df822865247d193 (diff) | |
[RISCV] Expand i32 abs to negw+max at isel.
This adds a RISCVISD::ABSW to remember that we started with an i32
abs. Previously we used a DAG combine of (sext_inreg (abs)) to
delay emitting a freeze from type legalization in order to make
ComputeNumSignBits optimizations work on other promoted nodes.
This new approach always uses negw+max even if the result doesn't
need to be sign extended. This helps the RISCVSExtWRemoval pass
if the sext.w is in another basic block.
Diffstat (limited to 'llvm/lib/Bitcode/Reader/BitcodeReader.cpp')
0 files changed, 0 insertions, 0 deletions
