aboutsummaryrefslogtreecommitdiffstats
path: root/utils/TableGen/DAGISelEmitter.cpp
diff options
context:
space:
mode:
authorEvan Cheng <evan.cheng@apple.com>2005-12-08 02:14:08 +0000
committerEvan Cheng <evan.cheng@apple.com>2005-12-08 02:14:08 +0000
commit3aa39f439a0971a2502b2c728a8006becaf96601 (patch)
treee6801bc85862c41d7505df78b05077ec97056802 /utils/TableGen/DAGISelEmitter.cpp
parentec693f77c03f5511001bfcac8180de6b551f7b1d (diff)
downloadexternal_llvm-3aa39f439a0971a2502b2c728a8006becaf96601.zip
external_llvm-3aa39f439a0971a2502b2c728a8006becaf96601.tar.gz
external_llvm-3aa39f439a0971a2502b2c728a8006becaf96601.tar.bz2
* Added an explicit type field to ComplexPattern.
* Renamed MatchingNodes to RootNodes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24636 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'utils/TableGen/DAGISelEmitter.cpp')
-rw-r--r--utils/TableGen/DAGISelEmitter.cpp5
1 files changed, 2 insertions, 3 deletions
diff --git a/utils/TableGen/DAGISelEmitter.cpp b/utils/TableGen/DAGISelEmitter.cpp
index cf5abc2..3379f46 100644
--- a/utils/TableGen/DAGISelEmitter.cpp
+++ b/utils/TableGen/DAGISelEmitter.cpp
@@ -478,8 +478,7 @@ static unsigned char getIntrinsicType(Record *R, bool NotRegisters,
// Using a VTSDNode or CondCodeSDNode.
return MVT::Other;
} else if (R->isSubClassOf("ComplexPattern")) {
- const CodeGenTarget &T = TP.getDAGISelEmitter().getTargetInfo();
- return T.getPointerType();
+ return TP.getDAGISelEmitter().getComplexPattern(R).getValueType();
} else if (R->getName() == "node") {
// Placeholder.
return MVT::isUnknown;
@@ -2256,7 +2255,7 @@ void DAGISelEmitter::EmitInstructionSelector(std::ostream &OS) {
dynamic_cast<IntInit*>(Node->getLeafValue())) {
PatternsByOpcode[getSDNodeNamed("imm")].push_back(&PatternsToMatch[i]);
} else if ((CP = NodeGetComplexPattern(Node, *this))) {
- std::vector<Record*> OpNodes = CP->getMatchingNodes();
+ std::vector<Record*> OpNodes = CP->getRootNodes();
for (unsigned j = 0, e = OpNodes.size(); j != e; j++) {
PatternsByOpcode[OpNodes[j]].insert(PatternsByOpcode[OpNodes[j]].begin(),
&PatternsToMatch[i]);