Update gcc 4.3 warnings fix patch with recent head changes

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47368 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Anton Korobeynikov
2008-02-20 11:10:28 +00:00
parent ae9f3a3b7c
commit 4c71dfe356
12 changed files with 58 additions and 40 deletions

View File

@ -385,16 +385,16 @@ static GenericValue executeFCMP_OGT(GenericValue Src1, GenericValue Src2,
return Dest;
}
#define IMPLEMENT_UNORDERED(TY, X,Y) \
if (TY == Type::FloatTy) \
if (X.FloatVal != X.FloatVal || Y.FloatVal != Y.FloatVal) { \
Dest.IntVal = APInt(1,true); \
return Dest; \
} \
else if (X.DoubleVal != X.DoubleVal || Y.DoubleVal != Y.DoubleVal) { \
Dest.IntVal = APInt(1,true); \
return Dest; \
}
#define IMPLEMENT_UNORDERED(TY, X,Y) \
if (TY == Type::FloatTy) { \
if (X.FloatVal != X.FloatVal || Y.FloatVal != Y.FloatVal) { \
Dest.IntVal = APInt(1,true); \
return Dest; \
} \
} else if (X.DoubleVal != X.DoubleVal || Y.DoubleVal != Y.DoubleVal) { \
Dest.IntVal = APInt(1,true); \
return Dest; \
}
static GenericValue executeFCMP_UEQ(GenericValue Src1, GenericValue Src2,
@ -901,11 +901,12 @@ void Interpreter::visitCallSite(CallSite CS) {
// We do this by zero or sign extending the value as appropriate
// according to the parameter attributes
const Type *Ty = V->getType();
if (Ty->isInteger() && (ArgVals.back().IntVal.getBitWidth() < 32))
if (Ty->isInteger() && (ArgVals.back().IntVal.getBitWidth() < 32)) {
if (CS.paramHasAttr(pNum, ParamAttr::ZExt))
ArgVals.back().IntVal = ArgVals.back().IntVal.zext(32);
else if (CS.paramHasAttr(pNum, ParamAttr::SExt))
ArgVals.back().IntVal = ArgVals.back().IntVal.sext(32);
}
}
// To handle indirect calls, we must get the pointer value from the argument