Author: Kazu Hirata Date: 2022-06-20T11:49:10-07:00 New Revision: ad7ce1e7696148d093b96a6262ebc8fd5e216187
URL: https://github.com/llvm/llvm-project/commit/ad7ce1e7696148d093b96a6262ebc8fd5e216187 DIFF: https://github.com/llvm/llvm-project/commit/ad7ce1e7696148d093b96a6262ebc8fd5e216187.diff LOG: Don't use Optional::hasValue (NFC) Added: Modified: clang/lib/CodeGen/CodeGenFunction.h clang/lib/Driver/Driver.cpp clang/lib/Sema/SemaTemplateInstantiate.cpp clang/lib/Sema/TreeTransform.h lldb/source/Plugins/SymbolFile/Breakpad/SymbolFileBreakpad.cpp llvm/lib/ExecutionEngine/Orc/IndirectionUtils.cpp llvm/lib/IR/Attributes.cpp llvm/lib/Remarks/YAMLRemarkSerializer.cpp llvm/lib/Target/MSP430/MSP430TargetMachine.cpp llvm/lib/Target/RISCV/RISCVTargetMachine.cpp llvm/lib/Transforms/IPO/OpenMPOpt.cpp mlir/lib/Analysis/IntRangeAnalysis.cpp mlir/lib/Conversion/AffineToStandard/AffineToStandard.cpp mlir/lib/Conversion/FuncToLLVM/FuncToLLVM.cpp mlir/lib/Dialect/Affine/Transforms/LoopFusion.cpp mlir/lib/Dialect/Affine/Utils/LoopUtils.cpp mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp Removed: ################################################################################ diff --git a/clang/lib/CodeGen/CodeGenFunction.h b/clang/lib/CodeGen/CodeGenFunction.h index 938db2a887c59..a7de87b552d28 100644 --- a/clang/lib/CodeGen/CodeGenFunction.h +++ b/clang/lib/CodeGen/CodeGenFunction.h @@ -1529,10 +1529,7 @@ class CodeGenFunction : public CodeGenTypeCache { /// Get the profiler's count for the given statement. uint64_t getProfileCount(const Stmt *S) { - Optional<uint64_t> Count = PGO.getStmtCount(S); - if (!Count.hasValue()) - return 0; - return *Count; + return PGO.getStmtCount(S).value_or(0); } /// Set the profiler's current count. diff --git a/clang/lib/Driver/Driver.cpp b/clang/lib/Driver/Driver.cpp index cbde26668b78c..167c726c53919 100644 --- a/clang/lib/Driver/Driver.cpp +++ b/clang/lib/Driver/Driver.cpp @@ -3282,8 +3282,7 @@ class OffloadingActionBuilder final { DDep, CudaDeviceActions[I]->getType()); } - if (!CompileDeviceOnly || !BundleOutput.hasValue() || - BundleOutput.getValue()) { + if (!CompileDeviceOnly || !BundleOutput || *BundleOutput) { // Create HIP fat binary with a special "link" action. CudaFatBinary = C.MakeAction<LinkJobAction>(CudaDeviceActions, types::TY_HIP_FATBIN); @@ -3383,8 +3382,7 @@ class OffloadingActionBuilder final { // in a fat binary for mixed host-device compilation. For device-only // compilation, creates a fat binary. OffloadAction::DeviceDependences DDeps; - if (!CompileDeviceOnly || !BundleOutput.hasValue() || - BundleOutput.getValue()) { + if (!CompileDeviceOnly || !BundleOutput || *BundleOutput) { auto *TopDeviceLinkAction = C.MakeAction<LinkJobAction>( Actions, CompileDeviceOnly ? types::TY_HIP_FATBIN : types::TY_Object); diff --git a/clang/lib/Sema/SemaTemplateInstantiate.cpp b/clang/lib/Sema/SemaTemplateInstantiate.cpp index 62478e7129695..8e59c449ae656 100644 --- a/clang/lib/Sema/SemaTemplateInstantiate.cpp +++ b/clang/lib/Sema/SemaTemplateInstantiate.cpp @@ -1996,8 +1996,7 @@ TemplateInstantiator::TransformExprRequirement(concepts::ExprRequirement *Req) { TransRetReq.emplace(TPL); } } - assert(TransRetReq.hasValue() && - "All code paths leading here must set TransRetReq"); + assert(TransRetReq && "All code paths leading here must set TransRetReq"); if (Expr *E = TransExpr.dyn_cast<Expr *>()) return RebuildExprRequirement(E, Req->isSimple(), Req->getNoexceptLoc(), std::move(*TransRetReq)); diff --git a/clang/lib/Sema/TreeTransform.h b/clang/lib/Sema/TreeTransform.h index 03f147480421a..ef09352551044 100644 --- a/clang/lib/Sema/TreeTransform.h +++ b/clang/lib/Sema/TreeTransform.h @@ -12634,8 +12634,7 @@ TreeTransform<Derived>::TransformExprRequirement(concepts::ExprRequirement *Req) return nullptr; TransRetReq.emplace(TPL); } - assert(TransRetReq.hasValue() && - "All code paths leading here must set TransRetReq"); + assert(TransRetReq && "All code paths leading here must set TransRetReq"); if (Expr *E = TransExpr.dyn_cast<Expr *>()) return getDerived().RebuildExprRequirement(E, Req->isSimple(), Req->getNoexceptLoc(), diff --git a/lldb/source/Plugins/SymbolFile/Breakpad/SymbolFileBreakpad.cpp b/lldb/source/Plugins/SymbolFile/Breakpad/SymbolFileBreakpad.cpp index 58e581fce728d..16d84fb01f610 100644 --- a/lldb/source/Plugins/SymbolFile/Breakpad/SymbolFileBreakpad.cpp +++ b/lldb/source/Plugins/SymbolFile/Breakpad/SymbolFileBreakpad.cpp @@ -698,8 +698,7 @@ SymbolFileBreakpad::ParseWinUnwindPlan(const Bookmark &bookmark, LineIterator It(*m_objfile_sp, Record::StackWin, bookmark); llvm::Optional<StackWinRecord> record = StackWinRecord::parse(*It); - assert(record.hasValue() && - "Record already parsed successfully in ParseUnwindData!"); + assert(record && "Record already parsed successfully in ParseUnwindData!"); auto plan_sp = std::make_shared<UnwindPlan>(lldb::eRegisterKindLLDB); plan_sp->SetSourceName("breakpad STACK WIN"); diff --git a/llvm/lib/ExecutionEngine/Orc/IndirectionUtils.cpp b/llvm/lib/ExecutionEngine/Orc/IndirectionUtils.cpp index a3942b1066858..38cab526704fc 100644 --- a/llvm/lib/ExecutionEngine/Orc/IndirectionUtils.cpp +++ b/llvm/lib/ExecutionEngine/Orc/IndirectionUtils.cpp @@ -442,8 +442,7 @@ Error addFunctionPointerRelocationsToCurrentSymbol(jitlink::Symbol &Sym, auto RelocOffInInstr = MIA.getMemoryOperandRelocationOffset(Instr, InstrSize); - if (!RelocOffInInstr.hasValue() || - InstrSize - RelocOffInInstr.getValue() != 4) { + if (!RelocOffInInstr || InstrSize - *RelocOffInInstr != 4) { LLVM_DEBUG(dbgs() << "Skipping unknown self-relocation at " << InstrStart); continue; diff --git a/llvm/lib/IR/Attributes.cpp b/llvm/lib/IR/Attributes.cpp index fa6638f6779b6..6d9f94b5eefd7 100644 --- a/llvm/lib/IR/Attributes.cpp +++ b/llvm/lib/IR/Attributes.cpp @@ -55,8 +55,7 @@ static const unsigned AllocSizeNumElemsNotPresent = -1; static uint64_t packAllocSizeArgs(unsigned ElemSizeArg, const Optional<unsigned> &NumElemsArg) { - assert((!NumElemsArg.hasValue() || - *NumElemsArg != AllocSizeNumElemsNotPresent) && + assert((!NumElemsArg || *NumElemsArg != AllocSizeNumElemsNotPresent) && "Attempting to pack a reserved value"); return uint64_t(ElemSizeArg) << 32 | diff --git a/llvm/lib/Remarks/YAMLRemarkSerializer.cpp b/llvm/lib/Remarks/YAMLRemarkSerializer.cpp index f70fee3f9291d..fff2b655e8218 100644 --- a/llvm/lib/Remarks/YAMLRemarkSerializer.cpp +++ b/llvm/lib/Remarks/YAMLRemarkSerializer.cpp @@ -59,8 +59,7 @@ template <> struct MappingTraits<remarks::Remark *> { if (auto *Serializer = dyn_cast<YAMLStrTabRemarkSerializer>( reinterpret_cast<RemarkSerializer *>(io.getContext()))) { - assert(Serializer->StrTab.hasValue() && - "YAMLStrTabSerializer with no StrTab."); + assert(Serializer->StrTab && "YAMLStrTabSerializer with no StrTab."); StringTable &StrTab = *Serializer->StrTab; unsigned PassID = StrTab.add(Remark->PassName).first; unsigned NameID = StrTab.add(Remark->RemarkName).first; @@ -84,8 +83,7 @@ template <> struct MappingTraits<RemarkLocation> { if (auto *Serializer = dyn_cast<YAMLStrTabRemarkSerializer>( reinterpret_cast<RemarkSerializer *>(io.getContext()))) { - assert(Serializer->StrTab.hasValue() && - "YAMLStrTabSerializer with no StrTab."); + assert(Serializer->StrTab && "YAMLStrTabSerializer with no StrTab."); StringTable &StrTab = *Serializer->StrTab; unsigned FileID = StrTab.add(File).first; io.mapRequired("File", FileID); @@ -139,8 +137,7 @@ template <> struct MappingTraits<Argument> { if (auto *Serializer = dyn_cast<YAMLStrTabRemarkSerializer>( reinterpret_cast<RemarkSerializer *>(io.getContext()))) { - assert(Serializer->StrTab.hasValue() && - "YAMLStrTabSerializer with no StrTab."); + assert(Serializer->StrTab && "YAMLStrTabSerializer with no StrTab."); StringTable &StrTab = *Serializer->StrTab; auto ValueID = StrTab.add(A.Val).first; io.mapRequired(A.Key.data(), ValueID); diff --git a/llvm/lib/Target/MSP430/MSP430TargetMachine.cpp b/llvm/lib/Target/MSP430/MSP430TargetMachine.cpp index 319271357bf27..6bba224aab8b2 100644 --- a/llvm/lib/Target/MSP430/MSP430TargetMachine.cpp +++ b/llvm/lib/Target/MSP430/MSP430TargetMachine.cpp @@ -27,9 +27,7 @@ extern "C" LLVM_EXTERNAL_VISIBILITY void LLVMInitializeMSP430Target() { } static Reloc::Model getEffectiveRelocModel(Optional<Reloc::Model> RM) { - if (!RM.hasValue()) - return Reloc::Static; - return *RM; + return RM.value_or(Reloc::Static); } static std::string computeDataLayout(const Triple &TT, StringRef CPU, diff --git a/llvm/lib/Target/RISCV/RISCVTargetMachine.cpp b/llvm/lib/Target/RISCV/RISCVTargetMachine.cpp index 0dc6445926a90..726eb6ff00b0f 100644 --- a/llvm/lib/Target/RISCV/RISCVTargetMachine.cpp +++ b/llvm/lib/Target/RISCV/RISCVTargetMachine.cpp @@ -63,9 +63,7 @@ static StringRef computeDataLayout(const Triple &TT) { static Reloc::Model getEffectiveRelocModel(const Triple &TT, Optional<Reloc::Model> RM) { - if (!RM.hasValue()) - return Reloc::Static; - return *RM; + return RM.value_or(Reloc::Static); } RISCVTargetMachine::RISCVTargetMachine(const Target &T, const Triple &TT, diff --git a/llvm/lib/Transforms/IPO/OpenMPOpt.cpp b/llvm/lib/Transforms/IPO/OpenMPOpt.cpp index 60c9266c669b6..f458afafa6984 100644 --- a/llvm/lib/Transforms/IPO/OpenMPOpt.cpp +++ b/llvm/lib/Transforms/IPO/OpenMPOpt.cpp @@ -2412,8 +2412,7 @@ struct AAICVTrackerFunction : public AAICVTracker { auto CallCheck = [&](Instruction &I) { Optional<Value *> ReplVal = getValueForCall(A, I, ICV); - if (ReplVal.hasValue() && - ValuesMap.insert(std::make_pair(&I, *ReplVal)).second) + if (ReplVal && ValuesMap.insert(std::make_pair(&I, *ReplVal)).second) HasChanged = ChangeStatus::CHANGED; return true; diff --git a/mlir/lib/Analysis/IntRangeAnalysis.cpp b/mlir/lib/Analysis/IntRangeAnalysis.cpp index 5b75d75b32326..f887d68d12ec2 100644 --- a/mlir/lib/Analysis/IntRangeAnalysis.cpp +++ b/mlir/lib/Analysis/IntRangeAnalysis.cpp @@ -165,8 +165,7 @@ ChangeResult detail::IntRangeAnalysisImpl::visitOperation( bool isYieldedResult = llvm::any_of(v.getUsers(), [](Operation *op) { return op->hasTrait<OpTrait::IsTerminator>(); }); - if (isYieldedResult && oldRange.hasValue() && - !(lattice.getValue() == *oldRange)) { + if (isYieldedResult && oldRange && !(lattice.getValue() == *oldRange)) { LLVM_DEBUG(llvm::dbgs() << "Loop variant loop result detected\n"); result |= lattice.markPessimisticFixpoint(); } @@ -269,8 +268,7 @@ ChangeResult detail::IntRangeAnalysisImpl::visitNonControlFlowArguments( bool isYieldedValue = llvm::any_of(v.getUsers(), [](Operation *op) { return op->hasTrait<OpTrait::IsTerminator>(); }); - if (isYieldedValue && oldRange.hasValue() && - !(lattice.getValue() == *oldRange)) { + if (isYieldedValue && oldRange && !(lattice.getValue() == *oldRange)) { LLVM_DEBUG(llvm::dbgs() << "Loop variant loop result detected\n"); result |= lattice.markPessimisticFixpoint(); } diff --git a/mlir/lib/Conversion/AffineToStandard/AffineToStandard.cpp b/mlir/lib/Conversion/AffineToStandard/AffineToStandard.cpp index a30a313212160..f94e973acf210 100644 --- a/mlir/lib/Conversion/AffineToStandard/AffineToStandard.cpp +++ b/mlir/lib/Conversion/AffineToStandard/AffineToStandard.cpp @@ -223,8 +223,7 @@ class AffineParallelLowering : public OpRewritePattern<AffineParallelOp> { Optional<arith::AtomicRMWKind> reductionOp = arith::symbolizeAtomicRMWKind( static_cast<uint64_t>(reduction.cast<IntegerAttr>().getInt())); - assert(reductionOp.hasValue() && - "Reduction operation cannot be of None Type"); + assert(reductionOp && "Reduction operation cannot be of None Type"); arith::AtomicRMWKind reductionOpValue = reductionOp.getValue(); identityVals.push_back( arith::getIdentityValue(reductionOpValue, resultType, rewriter, loc)); @@ -244,8 +243,7 @@ class AffineParallelLowering : public OpRewritePattern<AffineParallelOp> { Optional<arith::AtomicRMWKind> reductionOp = arith::symbolizeAtomicRMWKind( reductions[i].cast<IntegerAttr>().getInt()); - assert(reductionOp.hasValue() && - "Reduction Operation cannot be of None Type"); + assert(reductionOp && "Reduction Operation cannot be of None Type"); arith::AtomicRMWKind reductionOpValue = reductionOp.getValue(); rewriter.setInsertionPoint(&parOp.getBody()->back()); auto reduceOp = rewriter.create<scf::ReduceOp>( diff --git a/mlir/lib/Conversion/FuncToLLVM/FuncToLLVM.cpp b/mlir/lib/Conversion/FuncToLLVM/FuncToLLVM.cpp index 58b81c1f88386..43673f1cfa43b 100644 --- a/mlir/lib/Conversion/FuncToLLVM/FuncToLLVM.cpp +++ b/mlir/lib/Conversion/FuncToLLVM/FuncToLLVM.cpp @@ -316,8 +316,7 @@ struct FuncOpConversionBase : public ConvertOpToLLVMPattern<func::FuncOp> { llvmType.cast<LLVM::LLVMFunctionType>().getNumParams()); for (unsigned i = 0, e = funcOp.getNumArguments(); i < e; ++i) { auto mapping = result.getInputMapping(i); - assert(mapping.hasValue() && - "unexpected deletion of function argument"); + assert(mapping && "unexpected deletion of function argument"); for (size_t j = 0; j < mapping->size; ++j) newArgAttrs[mapping->inputNo + j] = argAttrDicts[i]; } diff --git a/mlir/lib/Dialect/Affine/Transforms/LoopFusion.cpp b/mlir/lib/Dialect/Affine/Transforms/LoopFusion.cpp index 8a33ae02f99b2..bcd9b5dff8ac9 100644 --- a/mlir/lib/Dialect/Affine/Transforms/LoopFusion.cpp +++ b/mlir/lib/Dialect/Affine/Transforms/LoopFusion.cpp @@ -914,8 +914,7 @@ static Value createPrivateMemRef(AffineForOp forOp, Operation *srcStoreOpInst, // by 'srcStoreOpInst' at depth 'dstLoopDepth'. Optional<int64_t> numElements = region.getConstantBoundingSizeAndShape(&newShape, &lbs, &lbDivisors); - assert(numElements.hasValue() && - "non-constant number of elts in local buffer"); + assert(numElements && "non-constant number of elts in local buffer"); const FlatAffineValueConstraints *cst = region.getConstraints(); // 'outerIVs' holds the values that this memory region is symbolic/parametric diff --git a/mlir/lib/Dialect/Affine/Utils/LoopUtils.cpp b/mlir/lib/Dialect/Affine/Utils/LoopUtils.cpp index aa20e084f1e82..7452647a524e8 100644 --- a/mlir/lib/Dialect/Affine/Utils/LoopUtils.cpp +++ b/mlir/lib/Dialect/Affine/Utils/LoopUtils.cpp @@ -1096,8 +1096,7 @@ LogicalResult mlir::loopUnrollByFactor( Optional<uint64_t> mayBeConstantTripCount = getConstantTripCount(forOp); if (unrollFactor == 1) { - if (mayBeConstantTripCount.hasValue() && - mayBeConstantTripCount.getValue() == 1 && + if (mayBeConstantTripCount && *mayBeConstantTripCount == 1 && failed(promoteIfSingleIteration(forOp))) return failure(); return success(); @@ -1206,8 +1205,7 @@ LogicalResult mlir::loopUnrollJamByFactor(AffineForOp forOp, Optional<uint64_t> mayBeConstantTripCount = getConstantTripCount(forOp); if (unrollJamFactor == 1) { - if (mayBeConstantTripCount.hasValue() && - mayBeConstantTripCount.getValue() == 1 && + if (mayBeConstantTripCount && *mayBeConstantTripCount == 1 && failed(promoteIfSingleIteration(forOp))) return failure(); return success(); diff --git a/mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp b/mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp index ea5f27e9654b4..1ed13fe7c6c0e 100644 --- a/mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp +++ b/mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp @@ -2777,8 +2777,7 @@ LogicalResult LLVMDialect::verifyOperationAttribute(Operation *op, Optional<NamedAttribute> loopOptions = loopAttr.getNamed(LLVMDialect::getLoopOptionsAttrName()); - if (loopOptions.hasValue() && - !loopOptions->getValue().isa<LoopOptionsAttr>()) + if (loopOptions && !loopOptions->getValue().isa<LoopOptionsAttr>()) return op->emitOpError() << "expected '" << LLVMDialect::getLoopOptionsAttrName() << "' to be a `loopopts` attribute"; _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits