From ad1ed016ce722a6a9b27473dbf8a6e5d75ce46b1 Mon Sep 17 00:00:00 2001 From: Andrew Lenharth Date: Thu, 17 Aug 2006 17:50:12 +0000 Subject: [PATCH] Fix handling of 'g'. Closes 883 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29750 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/Target/X86/X86ISelLowering.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/lib/Target/X86/X86ISelLowering.cpp b/lib/Target/X86/X86ISelLowering.cpp index 7a479599342..d9dd66d848e 100644 --- a/lib/Target/X86/X86ISelLowering.cpp +++ b/lib/Target/X86/X86ISelLowering.cpp @@ -4187,6 +4187,9 @@ X86TargetLowering::getConstraintType(char ConstraintLetter) const { case 'S': case 'D': case 'c': + case 'g': //FIXME: This over-constrains g. It should be replaced by rmi in + // target independent code (I think this constraint is target + // independent) return C_RegisterClass; default: return TargetLowering::getConstraintType(ConstraintLetter); } @@ -4218,6 +4221,7 @@ getRegClassForInlineAsmConstraint(const std::string &Constraint, break; case 'r': // GENERAL_REGS case 'R': // LEGACY_REGS + case 'g': if (VT == MVT::i32) return make_vector(X86::EAX, X86::EDX, X86::ECX, X86::EBX, X86::ESI, X86::EDI, X86::EBP, X86::ESP, 0); -- 2.34.1