diff options
author | Nitin John Raj <nitin.raj@sifive.com> | 2022-12-22 11:28:53 -0800 |
---|---|---|
committer | Craig Topper <craig.topper@sifive.com> | 2022-12-22 14:19:26 -0800 |
commit | d64d3c5a8f81fb07f1455ccb9f4489109cadee72 (patch) | |
tree | aa53f2815a83920640b39d380f768a7045f72bfa /llvm/lib/MC/MCDwarf.cpp | |
parent | 947dfc95ca914385c181f24bbc1a16143c17b5f0 (diff) | |
download | llvm-d64d3c5a8f81fb07f1455ccb9f4489109cadee72.zip llvm-d64d3c5a8f81fb07f1455ccb9f4489109cadee72.tar.gz llvm-d64d3c5a8f81fb07f1455ccb9f4489109cadee72.tar.bz2 |
[RISCV] Add pass to remove W suffix from ADDIW and SLLIW to improve compressibility
SLLI and ADD are more compressible than SLLIW and ADDW. SLLI/ADD both have a 5-bit register encoding. SLLIW/ADDW have a 3-bit register encoding. They both require the dest to also be one of the sources.
We aggressively form ADDW/SLLIW as it helps hasAllWBitUsers in RISCVISelDAGToDAG to not require recursion. So we need a pass to remove excessive -w suffixes.
Differential Revision: https://reviews.llvm.org/D139948
Diffstat (limited to 'llvm/lib/MC/MCDwarf.cpp')
0 files changed, 0 insertions, 0 deletions