minor code simplification

llvm-svn: 26918
diff --git a/llvm/utils/TableGen/DAGISelEmitter.cpp b/llvm/utils/TableGen/DAGISelEmitter.cpp
index d1651b4..dc170a5 100644
--- a/llvm/utils/TableGen/DAGISelEmitter.cpp
+++ b/llvm/utils/TableGen/DAGISelEmitter.cpp
@@ -698,17 +698,11 @@
     if (getNumChildren() != 1)
       TP.error("Node transform '" + getOperator()->getName() +
                "' requires one operand!");
-    unsigned char ExtType0 = getExtTypeNum(0);
-    unsigned char ChildExtType0 = getChild(0)->getExtTypeNum(0);
-    if (ExtType0 == MVT::isInt ||
-        ExtType0 == MVT::isFP ||
-        ExtType0 == MVT::isUnknown ||
-        ChildExtType0 == MVT::isInt ||
-        ChildExtType0 == MVT::isFP ||
-        ChildExtType0 == MVT::isUnknown) {
-      // If either the output or input of the xform does not have exact
-      // type info. We assume they must be the same. Otherwise, it is perfectly
-      // legal to transform from one type to a completely different type.
+
+    // If either the output or input of the xform does not have exact
+    // type info. We assume they must be the same. Otherwise, it is perfectly
+    // legal to transform from one type to a completely different type.
+    if (!hasTypeSet() || !getChild(0)->hasTypeSet()) {
       bool MadeChange = UpdateNodeType(getChild(0)->getExtTypes(), TP);
       MadeChange |= getChild(0)->UpdateNodeType(getExtTypes(), TP);
       return MadeChange;