Inline a few functions.

I don't foresee having to makes these functions any stricter or
fancier, so it probably makes sense to inline them.

llvm-svn: 298252
This commit is contained in:
Rafael Espindola
2017-03-20 14:35:41 +00:00
parent 49592cf679
commit 195f23c53b

View File

@@ -96,24 +96,6 @@ static ExprValue leftShift(ExprValue A, ExprValue B) {
static ExprValue rightShift(ExprValue A, ExprValue B) {
return A.getValue() >> B.getValue();
}
static ExprValue lessThan(ExprValue A, ExprValue B) {
return A.getValue() < B.getValue();
}
static ExprValue greaterThan(ExprValue A, ExprValue B) {
return A.getValue() > B.getValue();
}
static ExprValue greaterThanOrEqual(ExprValue A, ExprValue B) {
return A.getValue() >= B.getValue();
}
static ExprValue lessThanOrEqual(ExprValue A, ExprValue B) {
return A.getValue() <= B.getValue();
}
static ExprValue equal(ExprValue A, ExprValue B) {
return A.getValue() == B.getValue();
}
static ExprValue notEqual(ExprValue A, ExprValue B) {
return A.getValue() != B.getValue();
}
static ExprValue bitAnd(ExprValue A, ExprValue B) {
moveAbsRight(A, B);
return {A.Sec, A.ForceAbsolute,
@@ -1674,17 +1656,17 @@ static Expr combine(StringRef Op, Expr L, Expr R) {
if (Op == ">>")
return [=] { return rightShift(L(), R()); };
if (Op == "<")
return [=] { return lessThan(L(), R()); };
return [=] { return L().getValue() < R().getValue(); };
if (Op == ">")
return [=] { return greaterThan(L(), R()); };
return [=] { return L().getValue() > R().getValue(); };
if (Op == ">=")
return [=] { return greaterThanOrEqual(L(), R()); };
return [=] { return L().getValue() >= R().getValue(); };
if (Op == "<=")
return [=] { return lessThanOrEqual(L(), R()); };
return [=] { return L().getValue() <= R().getValue(); };
if (Op == "==")
return [=] { return ::equal(L(), R()); };
return [=] { return L().getValue() == R().getValue(); };
if (Op == "!=")
return [=] { return notEqual(L(), R()); };
return [=] { return L().getValue() != R().getValue(); };
if (Op == "&")
return [=] { return bitAnd(L(), R()); };
if (Op == "|")