[PATCH] D126771: [fastalloc] Support allocate specific register class in fastalloc.

Xiang Zhang via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Jun 22 17:47:50 PDT 2022


xiangzhangllvm added inline comments.


================
Comment at: llvm/lib/CodeGen/RegAllocFast.cpp:1164
       } else if (Reg.isPhysical()) {
         if (!MRI->isReserved(Reg)) {
           if (MO.isDef()) {
----------------
LuoYuanke wrote:
> xiangzhangllvm wrote:
> > Are you handling here too ?
> > Here when we allocating tile registers (we don't want allocation/handle other non-tile registers). But the logic here is possible to handle other non-tile registers, for example we may reload for non-tile registers in definePhysReg.
> > This may not has correction problem, but it is very strange to handle the non-tile registers in tile register fast allocation. And even in non-AMX program, the problem still existed. 
> For physical register it is not filtered. I think the pass won't do anything for physical registers given there is no virtual register for the corresponding register class.
LGTM, Just a flaw here:
e.g. The GPRs' physic regs will be handled 2 times.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D126771



More information about the llvm-commits mailing list