[all-commits] [llvm/llvm-project] 6d9f31: X86: Stop overriding getRegClass
Matt Arsenault via All-commits
all-commits at lists.llvm.org
Tue Nov 4 13:40:23 PST 2025
Branch: refs/heads/users/arsenm/x86/stop-overriding-getRegClass
Home: https://github.com/llvm/llvm-project
Commit: 6d9f319f86624bc9b2de2d7369ba505cf70ea8ad
https://github.com/llvm/llvm-project/commit/6d9f319f86624bc9b2de2d7369ba505cf70ea8ad
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-11-04 (Tue, 04 Nov 2025)
Changed paths:
M llvm/lib/Target/X86/X86InstrInfo.cpp
M llvm/lib/Target/X86/X86InstrInfo.h
M llvm/test/CodeGen/X86/apx/no-rex2-general.ll
M llvm/test/CodeGen/X86/apx/no-rex2-pseudo-amx.ll
M llvm/test/CodeGen/X86/apx/no-rex2-pseudo-x87.ll
M llvm/test/CodeGen/X86/apx/no-rex2-special.ll
Log Message:
-----------
X86: Stop overriding getRegClass
This function should not be virtual; making this virtual was
an AMDGPU hack that should be removed not spread to other
backends.
This does not need to be overridden to reserve registers. The
register reservation mechanism is orthogonal to to the register
class constraints of the instruction, this should be reporting
the underlying instruction constraint. The registers are separately
reserved, so they will be removed from the allocation order anyway.
If the actual class needs to change based on the subtarget,
it should probably generalize the LookupPtrRegClass mechanism.
This was added by #70958. The new tests there for the class are
probably not useful anymore. These instead should compile to the
end and try to stress the allocation behavior.
To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications
More information about the All-commits
mailing list