summaryrefslogtreecommitdiffstats
path: root/llvm/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
commit141075110cfcadaf0264bcf9eff471e9a09f9cae (patch)
tree0c230a349361c4e6ae2b1b3143df1f4ddabbabc3 /llvm/utils/TableGen/CodeGenDAGPatterns.h
parentbd2140018bcab8d49d6ffc032badfe4d91416ec0 (diff)
downloadbcm5719-llvm-141075110cfcadaf0264bcf9eff471e9a09f9cae.tar.gz
bcm5719-llvm-141075110cfcadaf0264bcf9eff471e9a09f9cae.zip
TableGen: Refactor DAG patterns to enable parsing one pattern at a time.
llvm-svn: 193526
Diffstat (limited to 'llvm/utils/TableGen/CodeGenDAGPatterns.h')
-rw-r--r--llvm/utils/TableGen/CodeGenDAGPatterns.h6
1 files changed, 5 insertions, 1 deletions
diff --git a/llvm/utils/TableGen/CodeGenDAGPatterns.h b/llvm/utils/TableGen/CodeGenDAGPatterns.h
index 7c2fa367410..6fbdd4f9a85 100644
--- a/llvm/utils/TableGen/CodeGenDAGPatterns.h
+++ b/llvm/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!");
OpenPOWER on IntegriCloud