aboutsummaryrefslogtreecommitdiffstats
path: root/utils/TableGen/CodeGenDAGPatterns.h
diff options
context:
space:
mode:
authorAhmed Bougacha <ahmed.bougacha@gmail.com>2013-10-28 18:07:21 +0000
committerAhmed Bougacha <ahmed.bougacha@gmail.com>2013-10-28 18:07:21 +0000
commit2b43ffff322899dec2f49cb3cc13037b60679f72 (patch)
tree11230dbe41c7a409868358ba48b9d6e8d3f57c0d /utils/TableGen/CodeGenDAGPatterns.h
parent254ce94c266c4bf18a3aacc0a49e962e6dc51336 (diff)
downloadexternal_llvm-2b43ffff322899dec2f49cb3cc13037b60679f72.zip
external_llvm-2b43ffff322899dec2f49cb3cc13037b60679f72.tar.gz
external_llvm-2b43ffff322899dec2f49cb3cc13037b60679f72.tar.bz2
TableGen: Refactor DAG patterns to enable parsing one pattern at a time.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@193526 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'utils/TableGen/CodeGenDAGPatterns.h')
-rw-r--r--utils/TableGen/CodeGenDAGPatterns.h6
1 files changed, 5 insertions, 1 deletions
diff --git a/utils/TableGen/CodeGenDAGPatterns.h b/utils/TableGen/CodeGenDAGPatterns.h
index 7c2fa36..6fbdd4f 100644
--- a/utils/TableGen/CodeGenDAGPatterns.h
+++ b/utils/TableGen/CodeGenDAGPatterns.h
@@ -778,7 +778,11 @@ public:
ptm_iterator ptm_begin() const { return PatternsToMatch.begin(); }
ptm_iterator ptm_end() const { return PatternsToMatch.end(); }
-
+ /// Parse the Pattern for an instruction, and insert the result in DAGInsts.
+ typedef std::map<Record*, DAGInstruction, LessRecordByID> DAGInstMap;
+ const DAGInstruction &parseInstructionPattern(
+ CodeGenInstruction &CGI, ListInit *Pattern,
+ DAGInstMap &DAGInsts);
const DAGInstruction &getInstruction(Record *R) const {
assert(Instructions.count(R) && "Unknown instruction!");