[llvm-commits] CVS: llvm/utils/TableGen/DAGISelEmitter.cpp
Reid Spencer
reid at x10sys.com
Thu Nov 2 13:07:54 PST 2006
Changes in directory llvm/utils/TableGen:
DAGISelEmitter.cpp updated: 1.275 -> 1.276
---
Log message:
Revert last patch which causes tblgen to segfault (why, I'm not sure).
---
Diffs of the changes: (+6 -2)
DAGISelEmitter.cpp | 8 ++++++--
1 files changed, 6 insertions(+), 2 deletions(-)
Index: llvm/utils/TableGen/DAGISelEmitter.cpp
diff -u llvm/utils/TableGen/DAGISelEmitter.cpp:1.275 llvm/utils/TableGen/DAGISelEmitter.cpp:1.276
--- llvm/utils/TableGen/DAGISelEmitter.cpp:1.275 Thu Nov 2 14:46:16 2006
+++ llvm/utils/TableGen/DAGISelEmitter.cpp Thu Nov 2 15:07:40 2006
@@ -2259,11 +2259,13 @@
unsigned OpNo = 0;
bool NodeHasChain = NodeHasProperty (N, SDNPHasChain, ISE);
bool HasChain = PatternHasProperty(N, SDNPHasChain, ISE);
+ bool HasOutFlag = PatternHasProperty(N, SDNPOutFlag, ISE);
bool EmittedUseCheck = false;
if (HasChain) {
if (NodeHasChain)
OpNo = 1;
if (!isRoot) {
+ const SDNodeInfo &CInfo = ISE.getSDNodeInfo(N->getOperator());
// Multiple uses of actual result?
emitCheck(RootName + ".hasOneUse()");
EmittedUseCheck = true;
@@ -2327,6 +2329,7 @@
(PatternHasProperty(N, SDNPInFlag, ISE) ||
PatternHasProperty(N, SDNPOptInFlag, ISE) ||
PatternHasProperty(N, SDNPOutFlag, ISE))) {
+ const SDNodeInfo &CInfo = ISE.getSDNodeInfo(N->getOperator());
if (!EmittedUseCheck) {
// Multiple uses of actual result?
emitCheck(RootName + ".hasOneUse()");
@@ -3315,9 +3318,10 @@
PatternsByOpcode[Node->getOperator()].push_back(&PatternsToMatch[i]);
} else {
const ComplexPattern *CP;
- if (dynamic_cast<IntInit*>(Node->getLeafValue())) {
+ if (IntInit *II =
+ dynamic_cast<IntInit*>(Node->getLeafValue())) {
PatternsByOpcode[getSDNodeNamed("imm")].push_back(&PatternsToMatch[i]);
- } else if (NodeGetComplexPattern(Node, *this)) {
+ } else if ((CP = NodeGetComplexPattern(Node, *this))) {
std::vector<Record*> OpNodes = CP->getRootNodes();
for (unsigned j = 0, e = OpNodes.size(); j != e; j++) {
PatternsByOpcode[OpNodes[j]]
More information about the llvm-commits
mailing list