[PATCH] D55238: MIR: Preserve incoming frame index numbers

Matt Arsenault via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Dec 3 15:35:11 PST 2018


arsenm created this revision.
arsenm added reviewers: arphaman, MatzeB.
Herald added subscribers: tpr, wdng.

Don't skip incrementing the frame index number
if the object is dead. Instructions can still be
referencing the old frame index number, and this
doesn't attempt to remap those. The resulting
 MIR then fails to load because the use instructions
use a higher frame index number than recorded
list of stack objects.

      

I'm not sure it's possible to craft a testcase
with the existing set of passes. It requires
selectively marking some stack objects
dead in an essentially random order.
StackSlotColoring condenses towards
the low indexes. This avoids a regression in a
future AMDGPU commit when some frame indexes
 are lowered separately from PEI.


https://reviews.llvm.org/D55238

Files:
  docs/MIRLangRef.rst
  include/llvm/CodeGen/TargetPassConfig.h
  lib/CodeGen/TargetPassConfig.cpp
  test/CodeGen/Generic/llc-start-stop-instance.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D55238.176497.patch
Type: text/x-patch
Size: 5881 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20181203/2b0d5505/attachment.bin>


More information about the llvm-commits mailing list