From 21d03f2de0087d60dbf575d95924404a97852879 Mon Sep 17 00:00:00 2001 From: Evan Cheng Date: Thu, 18 May 2006 20:42:07 +0000 Subject: lib/Target/Target.td git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28386 91177308-0d34-0410-b5e6-96231b3b80d8 --- utils/TableGen/InstrInfoEmitter.cpp | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) (limited to 'utils/TableGen/InstrInfoEmitter.cpp') diff --git a/utils/TableGen/InstrInfoEmitter.cpp b/utils/TableGen/InstrInfoEmitter.cpp index a713bc330d..66d17cb86b 100644 --- a/utils/TableGen/InstrInfoEmitter.cpp +++ b/utils/TableGen/InstrInfoEmitter.cpp @@ -139,11 +139,13 @@ void InstrInfoEmitter::run(std::ostream &OS) { for (unsigned i = 0, e = OperandInfo.size(); i != e; ++i) { Record *RC = OperandInfo[i]; // FIXME: We only care about register operands for now. - if (RC && RC->isSubClassOf("RegisterClass")) { - OS << "{ &" << getQualifiedName(RC) << "RegClass }, "; - } else { - OS << "{ 0 }, "; - } + if (RC && RC->isSubClassOf("RegisterClass")) + OS << "{ &" << getQualifiedName(RC) << "RegClass, 0 }, "; + else if (RC && RC->getName() == "ptr_rc") + // Ptr value whose register class is resolved via callback. + OS << "{ 0, 1 }, "; + else + OS << "{ 0, 0 }, "; } OS << "};\n"; } -- cgit v1.2.3-70-g09d2