Use INT64_C to emit constant values, to avoid problems with
constants that don't fit in an int. This fixes "this decimal constant is unsigned only in ISO C90" warnings. llvm-svn: 57668
This commit is contained in:
parent
3c683f5bf2
commit
10549c29a8
|
@ -444,7 +444,8 @@ public:
|
|||
if (N->isLeaf()) {
|
||||
if (IntInit *II = dynamic_cast<IntInit*>(N->getLeafValue())) {
|
||||
emitCheck("cast<ConstantSDNode>(" + RootName +
|
||||
")->getSExtValue() == " + itostr(II->getValue()));
|
||||
")->getSExtValue() == INT64_C(" +
|
||||
itostr(II->getValue()) + ")");
|
||||
return;
|
||||
} else if (!NodeIsComplexPattern(N)) {
|
||||
assert(0 && "Cannot match this as a leaf value!");
|
||||
|
@ -578,7 +579,7 @@ public:
|
|||
const char *MaskPredicate = N->getOperator()->getName() == "or"
|
||||
? "CheckOrMask(" : "CheckAndMask(";
|
||||
emitCheck(MaskPredicate + RootName + "0, cast<ConstantSDNode>(" +
|
||||
RootName + "1), " + itostr(II->getValue()) + ")");
|
||||
RootName + "1), INT64_C(" + itostr(II->getValue()) + "))");
|
||||
|
||||
EmitChildMatchCode(N->getChild(0), N, RootName + utostr(0), RootName,
|
||||
ChainSuffix + utostr(0), FoundChain);
|
||||
|
|
Loading…
Reference in New Issue