Index: ELF/LinkerScript.cpp =================================================================== --- ELF/LinkerScript.cpp +++ ELF/LinkerScript.cpp @@ -96,24 +96,6 @@ 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, @@ -1652,17 +1634,17 @@ 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 == "|")