[PATCH] D137821: Handle register spill in BranchRelaxation pass

Xiaodong Liu via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Nov 11 02:10:42 PST 2022


XiaodongLoong created this revision.
Herald added subscribers: hiraditya, qcolombet.
Herald added a project: All.
XiaodongLoong requested review of this revision.
Herald added a project: LLVM.
Herald added a subscriber: llvm-commits.

When the range of the unconditional branch is overflow, the indirect
branch way is used. The case when there is no scavenged register for
indirect branch needs to spill register to stack.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D137821

Files:
  llvm/lib/Target/LoongArch/LoongArchFrameLowering.cpp
  llvm/lib/Target/LoongArch/LoongArchInstrInfo.cpp
  llvm/lib/Target/LoongArch/LoongArchMachineFunctionInfo.h
  llvm/test/CodeGen/LoongArch/branch-relaxation-spill-32.ll
  llvm/test/CodeGen/LoongArch/branch-relaxation-spill-64.ll
  llvm/test/CodeGen/LoongArch/branch-relaxation.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D137821.474697.patch
Type: text/x-patch
Size: 31565 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20221111/d26d4758/attachment.bin>


More information about the llvm-commits mailing list