[PATCH] D100296: [WIP] Teach Greedy RA to recognize special case live-through

Serguei Katkov via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Apr 12 03:47:22 PDT 2021


skatkov created this revision.
skatkov added reviewers: reames, dantrushin.
Herald added subscribers: pengfei, hiraditya, MatzeB.
skatkov requested review of this revision.
Herald added a project: LLVM.

Statepoint instruction has a deopt section which is actually live-through the call.
Currently the is handled by special post pass after RA - fixup-statepoint-caller-saved.

This change teaches Greedy RA that if segment of live interval is ended with statepoint
instruction and its reg is used in deopt bundle then this live interval interferes regmask of this statepoint
and as a result caller-saved register cannot be assigned to this live interval.


https://reviews.llvm.org/D100296

Files:
  llvm/lib/CodeGen/LiveIntervals.cpp
  llvm/test/CodeGen/X86/statepoint-regs.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D100296.336796.patch
Type: text/x-patch
Size: 17763 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20210412/b49503da/attachment.bin>


More information about the llvm-commits mailing list