diff options
author | Pengcheng Wang <wangpengcheng.pp@bytedance.com> | 2024-04-16 15:37:31 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-04-16 15:37:31 +0800 |
commit | dbaa1893c9afe6a245860efb8d68875ba4fd6794 (patch) | |
tree | 3b50b8e4dd65181be1463a67f770df91d3d052d9 /llvm/lib/Transforms/Utils/Local.cpp | |
parent | a169d4c2e974ceb20b86faea3fa4ac286a1d44e8 (diff) | |
download | llvm-dbaa1893c9afe6a245860efb8d68875ba4fd6794.zip llvm-dbaa1893c9afe6a245860efb8d68875ba4fd6794.tar.gz llvm-dbaa1893c9afe6a245860efb8d68875ba4fd6794.tar.bz2 |
[RISCV] Generate more W instructons
We rename `TuneNoStripWSuffix` to `TunePreferWInst`.
If all the users of an instruction just use the low 32 bits, we can
convert it to its W variant.
A quick test on Coremark (`-O3 -march=rv64gc`):
| | W instructions | code size(.text) |
|--------|----------------|------------------|
| before | 302 | 12257 |
| after | 343 | 12265 |
| | +13.58% | +0.065% |
Reviewers: asb, dtcxzyw, preames, lukel97, michaelmaitland, topperc
Reviewed By: topperc, dtcxzyw
Pull Request: https://github.com/llvm/llvm-project/pull/87237
Diffstat (limited to 'llvm/lib/Transforms/Utils/Local.cpp')
0 files changed, 0 insertions, 0 deletions