Make negative immediates in patterns work correctly, silence some warnings
building the itanium backend.

llvm-svn: 24095
diff --git a/llvm/utils/TableGen/DAGISelEmitter.cpp b/llvm/utils/TableGen/DAGISelEmitter.cpp
index fb52355..2fc324d 100644
--- a/llvm/utils/TableGen/DAGISelEmitter.cpp
+++ b/llvm/utils/TableGen/DAGISelEmitter.cpp
@@ -1592,7 +1592,7 @@
       } else if (IntInit *II = dynamic_cast<IntInit*>(Child->getLeafValue())) {
         OS << "      if (!isa<ConstantSDNode>(" << RootName << i << ") ||\n"
            << "          cast<ConstantSDNode>(" << RootName << i
-           << ")->getValue() != " << II->getValue() << ")\n"
+           << ")->getSignExtended() != " << II->getValue() << ")\n"
            << "        goto P" << PatternNo << "Fail;\n";
       } else {
         Child->dump();