From b3c82bafc75f0dfa8c2632868e13444787f0fce2 Mon Sep 17 00:00:00 2001 From: Craig Topper Date: Wed, 18 Feb 2026 08:52:08 -0800 Subject: [PATCH] [KnownBits] Remove unneccessary calls to std::optional constructor. NFC (#181959) We can return a bool and let the compiler insert the constructor call. --- llvm/lib/Support/KnownBits.cpp | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/llvm/lib/Support/KnownBits.cpp b/llvm/lib/Support/KnownBits.cpp index 58d21154fed0..07e7781d0839 100644 --- a/llvm/lib/Support/KnownBits.cpp +++ b/llvm/lib/Support/KnownBits.cpp @@ -632,31 +632,31 @@ KnownBits KnownBits::clmul(const KnownBits &LHS, const KnownBits &RHS) { std::optional KnownBits::eq(const KnownBits &LHS, const KnownBits &RHS) { if (LHS.isConstant() && RHS.isConstant()) - return std::optional(LHS.getConstant() == RHS.getConstant()); + return LHS.getConstant() == RHS.getConstant(); if (LHS.One.intersects(RHS.Zero) || RHS.One.intersects(LHS.Zero)) - return std::optional(false); + return false; return std::nullopt; } std::optional KnownBits::ne(const KnownBits &LHS, const KnownBits &RHS) { if (std::optional KnownEQ = eq(LHS, RHS)) - return std::optional(!*KnownEQ); + return !*KnownEQ; return std::nullopt; } 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 std::optional(false); + return false; // LHS >u RHS -> true if umin(LHS) > umax(RHS) if (LHS.getMinValue().ugt(RHS.getMaxValue())) - return std::optional(true); + return true; return std::nullopt; } std::optional KnownBits::uge(const KnownBits &LHS, const KnownBits &RHS) { if (std::optional IsUGT = ugt(RHS, LHS)) - return std::optional(!*IsUGT); + return !*IsUGT; return std::nullopt; } @@ -671,16 +671,16 @@ std::optional KnownBits::ule(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 std::optional(false); + return false; // LHS >s RHS -> true if smin(LHS) > smax(RHS) if (LHS.getSignedMinValue().sgt(RHS.getSignedMaxValue())) - return std::optional(true); + return true; return std::nullopt; } std::optional KnownBits::sge(const KnownBits &LHS, const KnownBits &RHS) { if (std::optional KnownSGT = sgt(RHS, LHS)) - return std::optional(!*KnownSGT); + return !*KnownSGT; return std::nullopt; }