[llvm] [TableGen][GISel] Learn to import patterns with physreg defs (PR #120343)

Matt Arsenault via llvm-commits llvm-commits at lists.llvm.org
Sun Dec 22 23:54:21 PST 2024


arsenm wrote:

> That's what I thought, too. It appears that `getMinimalPhysRegClass` may return an unallocatable register class and we aren't allowed to create virtual registers with unallocatable classes. 

You can find the smallest allocatable class with with getAllocatableClass(getMinimalPhysRegClass()), and there's presumably a CodeGenRegisters equivalent too


> we don't know what register classes are going to be legal for a value type, so we probably need to emit something to do a runtime check. 

No, there should be no need for a runtime or type check. The type based class logic in InstrEmitter is one of the issues with SelectionDAG we're trying to avoid.



https://github.com/llvm/llvm-project/pull/120343


More information about the llvm-commits mailing list