[all-commits] [llvm/llvm-project] 240512: [LoongArch] Add a pass to rewrite rd to r0 for non...
hev via All-commits
all-commits at lists.llvm.org
Fri Jun 7 00:39:27 PDT 2024
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 240512c43234f58b3924cd90fe0781445d97e98d
https://github.com/llvm/llvm-project/commit/240512c43234f58b3924cd90fe0781445d97e98d
Author: hev <wangrui at loongson.cn>
Date: 2024-06-07 (Fri, 07 Jun 2024)
Changed paths:
M llvm/lib/Target/LoongArch/CMakeLists.txt
M llvm/lib/Target/LoongArch/LoongArch.h
A llvm/lib/Target/LoongArch/LoongArchDeadRegisterDefinitions.cpp
M llvm/lib/Target/LoongArch/LoongArchTargetMachine.cpp
M llvm/test/CodeGen/LoongArch/global-address.ll
M llvm/test/CodeGen/LoongArch/intrinsic-la64.ll
M llvm/test/CodeGen/LoongArch/intrinsic.ll
M llvm/test/CodeGen/LoongArch/ir-instruction/br.ll
M llvm/test/CodeGen/LoongArch/ir-instruction/load-store.ll
M llvm/test/CodeGen/LoongArch/psabi-restricted-scheduling.ll
M llvm/utils/gn/secondary/llvm/lib/Target/LoongArch/BUILD.gn
Log Message:
-----------
[LoongArch] Add a pass to rewrite rd to r0 for non-computational instrs whose return values are unused (#94590)
This patch adds a peephole pass `LoongArchDeadRegisterDefinitions`. It
rewrites `rd` to `r0` when `rd` is marked as dead. It may improve the
register allocation and reduce pipeline hazards on CPUs without register
renaming and OOO.
To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications
More information about the All-commits
mailing list