From e3b557809604d036af6e00c60f012c2025b59a5e Mon Sep 17 00:00:00 2001 From: Dimitry Andric Date: Sat, 11 Feb 2023 13:38:04 +0100 Subject: Vendor import of llvm-project main llvmorg-16-init-18548-gb0daacf58f41, the last commit before the upstream release/17.x branch was created. --- llvm/lib/Support/KnownBits.cpp | 56 +++++++++++++++++++++--------------------- 1 file changed, 28 insertions(+), 28 deletions(-) (limited to 'llvm/lib/Support/KnownBits.cpp') diff --git a/llvm/lib/Support/KnownBits.cpp b/llvm/lib/Support/KnownBits.cpp index 9f34405e54fc..745c46fb6ffb 100644 --- a/llvm/lib/Support/KnownBits.cpp +++ b/llvm/lib/Support/KnownBits.cpp @@ -330,65 +330,65 @@ KnownBits KnownBits::ashr(const KnownBits &LHS, const KnownBits &RHS) { return Known; } -Optional KnownBits::eq(const KnownBits &LHS, const KnownBits &RHS) { +std::optional KnownBits::eq(const KnownBits &LHS, const KnownBits &RHS) { if (LHS.isConstant() && RHS.isConstant()) - return Optional(LHS.getConstant() == RHS.getConstant()); + return std::optional(LHS.getConstant() == RHS.getConstant()); if (LHS.One.intersects(RHS.Zero) || RHS.One.intersects(LHS.Zero)) - return Optional(false); - return None; + return std::optional(false); + return std::nullopt; } -Optional KnownBits::ne(const KnownBits &LHS, const KnownBits &RHS) { - if (Optional KnownEQ = eq(LHS, RHS)) - return Optional(!*KnownEQ); - return None; +std::optional KnownBits::ne(const KnownBits &LHS, const KnownBits &RHS) { + if (std::optional KnownEQ = eq(LHS, RHS)) + return std::optional(!*KnownEQ); + return std::nullopt; } -Optional KnownBits::ugt(const KnownBits &LHS, const KnownBits &RHS) { +std::optional KnownBits::ugt(const KnownBits &LHS, const KnownBits &RHS) { // LHS >u RHS -> false if umax(LHS) <= umax(RHS) if (LHS.getMaxValue().ule(RHS.getMinValue())) - return Optional(false); + return std::optional(false); // LHS >u RHS -> true if umin(LHS) > umax(RHS) if (LHS.getMinValue().ugt(RHS.getMaxValue())) - return Optional(true); - return None; + return std::optional(true); + return std::nullopt; } -Optional KnownBits::uge(const KnownBits &LHS, const KnownBits &RHS) { - if (Optional IsUGT = ugt(RHS, LHS)) - return Optional(!*IsUGT); - return None; +std::optional KnownBits::uge(const KnownBits &LHS, const KnownBits &RHS) { + if (std::optional IsUGT = ugt(RHS, LHS)) + return std::optional(!*IsUGT); + return std::nullopt; } -Optional KnownBits::ult(const KnownBits &LHS, const KnownBits &RHS) { +std::optional KnownBits::ult(const KnownBits &LHS, const KnownBits &RHS) { return ugt(RHS, LHS); } -Optional KnownBits::ule(const KnownBits &LHS, const KnownBits &RHS) { +std::optional KnownBits::ule(const KnownBits &LHS, const KnownBits &RHS) { return uge(RHS, LHS); } -Optional KnownBits::sgt(const KnownBits &LHS, const KnownBits &RHS) { +std::optional KnownBits::sgt(const KnownBits &LHS, const KnownBits &RHS) { // LHS >s RHS -> false if smax(LHS) <= smax(RHS) if (LHS.getSignedMaxValue().sle(RHS.getSignedMinValue())) - return Optional(false); + return std::optional(false); // LHS >s RHS -> true if smin(LHS) > smax(RHS) if (LHS.getSignedMinValue().sgt(RHS.getSignedMaxValue())) - return Optional(true); - return None; + return std::optional(true); + return std::nullopt; } -Optional KnownBits::sge(const KnownBits &LHS, const KnownBits &RHS) { - if (Optional KnownSGT = sgt(RHS, LHS)) - return Optional(!*KnownSGT); - return None; +std::optional KnownBits::sge(const KnownBits &LHS, const KnownBits &RHS) { + if (std::optional KnownSGT = sgt(RHS, LHS)) + return std::optional(!*KnownSGT); + return std::nullopt; } -Optional KnownBits::slt(const KnownBits &LHS, const KnownBits &RHS) { +std::optional KnownBits::slt(const KnownBits &LHS, const KnownBits &RHS) { return sgt(RHS, LHS); } -Optional KnownBits::sle(const KnownBits &LHS, const KnownBits &RHS) { +std::optional KnownBits::sle(const KnownBits &LHS, const KnownBits &RHS) { return sge(RHS, LHS); } -- cgit v1.2.3