[llvm-commits] CVS: llvm/utils/TableGen/DAGISelEmitter.cpp
Chris Lattner
lattner at cs.uiuc.edu
Thu Nov 17 09:44:05 PST 2005
Changes in directory llvm/utils/TableGen:
DAGISelEmitter.cpp updated: 1.75 -> 1.76
---
Log message:
Validate that the input to 'Pat' patterns is sane.
---
Diffs of the changes: (+8 -0)
DAGISelEmitter.cpp | 8 ++++++++
1 files changed, 8 insertions(+)
Index: llvm/utils/TableGen/DAGISelEmitter.cpp
diff -u llvm/utils/TableGen/DAGISelEmitter.cpp:1.75 llvm/utils/TableGen/DAGISelEmitter.cpp:1.76
--- llvm/utils/TableGen/DAGISelEmitter.cpp:1.75 Thu Nov 17 01:39:45 2005
+++ llvm/utils/TableGen/DAGISelEmitter.cpp Thu Nov 17 11:43:52 2005
@@ -1212,6 +1212,14 @@
// never do anything with this pattern: report it to the user.
if (!Pattern->InferAllTypes())
Pattern->error("Could not infer all types in pattern!");
+
+ // Validate that the input pattern is correct.
+ {
+ std::map<std::string, TreePatternNode*> InstInputs;
+ std::map<std::string, Record*> InstResults;
+ FindPatternInputsAndOutputs(Pattern, Pattern->getOnlyTree(),
+ InstInputs, InstResults);
+ }
ListInit *LI = Patterns[i]->getValueAsListInit("ResultInstrs");
if (LI->getSize() == 0) continue; // no pattern.
More information about the llvm-commits
mailing list