[PATCH] D100358: GlobalISel: Defer register creation in handleAssignments

Matt Arsenault via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Apr 12 19:24:57 PDT 2021


arsenm created this revision.
arsenm added reviewers: paquette, aemerson, bogner, dsanders.
Herald added subscribers: hiraditya, rovka.
arsenm requested review of this revision.
Herald added a subscriber: wdng.
Herald added a project: LLVM.

This is currently built on top of the SelectionDAG call lowering, but
does not use it the same way. SelectionDAG passes legalized types to
the assignment functions, and the tablegenerated assignment functions
may change the value types expected for registers. This does not
change the types used, just moves the register creation to help fix
this in the future.

      

Defer the register creation until after all of the assignment
decisions have been made. This will also help have correct tail call
compatibility checking in a future change. Currently it does not work
as expected for any arguments split across multiple registers.


https://reviews.llvm.org/D100358

Files:
  llvm/lib/CodeGen/GlobalISel/CallLowering.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D100358.337025.patch
Type: text/x-patch
Size: 7092 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20210413/3a9131a3/attachment.bin>


More information about the llvm-commits mailing list