[PATCH] D126048: [SplitKit] Handle early clobber + tied to def correctly

Matthias Braun via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Aug 29 07:22:12 PDT 2022


MatzeB added inline comments.


================
Comment at: llvm/lib/CodeGen/SplitKit.cpp:1369
+        // Before extend:
+        //   %0 = [0r, 0d) [16e, 32d)
+        // The point we want to extend is 0d to 16e not 16r in this case, but if
----------------
Allen wrote:
> sorry for the naive question, what's the mean of **(tied-def 0)**?
> 
> Does it only mean that the operand is early-clobber? or **tied-def 0** implicit defined the higher bits are zero ?
> I also don't known what is the mean of "0r, 0d, 16e and 32d".
when an operand is marked with `tied-def 0` then it must get the same register assigned as operand 0 (after two-address instruction pass anyway).

16e etc. is the way slot indexes are printed (slot index 16, **e**arly clobber instruction slot). You could look in SlotIndexes.h or watch my regalloc tutorial from the developers meeting.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D126048/new/

https://reviews.llvm.org/D126048



More information about the llvm-commits mailing list