From 65cbfa0f370f70bb5bd57c084fd73dde6fa35cee Mon Sep 17 00:00:00 2001 From: Alkis Evlogimenos Date: Tue, 21 Sep 2004 21:22:11 +0000 Subject: [PATCH] The real x87 floating point registers should not be allocatable. They are only used by the stackifier when transforming FPn register allocations to the real stack file x87 registers. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16472 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/Target/X86/X86RegisterInfo.td | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/lib/Target/X86/X86RegisterInfo.td b/lib/Target/X86/X86RegisterInfo.td index 4262a9ffd70..628a239d014 100644 --- a/lib/Target/X86/X86RegisterInfo.td +++ b/lib/Target/X86/X86RegisterInfo.td @@ -86,5 +86,13 @@ def R32 : RegisterClass { def RFP : RegisterClass; -// Floating point stack registers. -def RST : RegisterClass; +// Floating point stack registers (these are not allocatable by the +// register allocator - the floating point stackifier is responsible +// for transforming FPn allocations to STn registers) +def RST : RegisterClass { + let Methods = [{ + iterator allocation_order_end(MachineFunction &MF) const { + return begin(); + } + }]; +}