std::optional::value => operator*/operator->
authorFangrui Song <i@maskray.me>
Fri, 16 Dec 2022 22:44:08 +0000 (22:44 +0000)
committerFangrui Song <i@maskray.me>
Fri, 16 Dec 2022 22:44:08 +0000 (22:44 +0000)
commit2fa744e631cbabe583da010ec56560edbc7a5384
treedb931423c9394a852b65bdf5072ba997463114d5
parent27249c06b775c73b7fa9f2d8e48cac1a85169481
std::optional::value => operator*/operator->

value() has undesired exception checking semantics and calls
__throw_bad_optional_access in libc++. Moreover, the API is unavailable without
_LIBCPP_NO_EXCEPTIONS on older Mach-O platforms (see
_LIBCPP_AVAILABILITY_BAD_OPTIONAL_ACCESS).

This commit fixes LLVMAnalysis and its dependencies.
39 files changed:
llvm/include/llvm/Analysis/BlockFrequencyInfoImpl.h
llvm/include/llvm/Analysis/VectorUtils.h
llvm/include/llvm/Bitstream/BitstreamWriter.h
llvm/include/llvm/IR/IRBuilder.h
llvm/include/llvm/MC/MCSymbolWasm.h
llvm/include/llvm/MC/MCSymbolXCOFF.h
llvm/include/llvm/Support/Casting.h
llvm/lib/Analysis/BranchProbabilityInfo.cpp
llvm/lib/Analysis/IRSimilarityIdentifier.cpp
llvm/lib/Analysis/InlineCost.cpp
llvm/lib/Analysis/InstructionSimplify.cpp
llvm/lib/Analysis/LazyValueInfo.cpp
llvm/lib/Analysis/MemoryBuiltins.cpp
llvm/lib/Analysis/MustExecute.cpp
llvm/lib/Analysis/ProfileSummaryInfo.cpp
llvm/lib/Analysis/ScalarEvolution.cpp
llvm/lib/Analysis/VectorUtils.cpp
llvm/lib/DebugInfo/DWARF/DWARFContext.cpp
llvm/lib/DebugInfo/DWARF/DWARFDebugLine.cpp
llvm/lib/IR/DebugInfo.cpp
llvm/lib/IR/Instructions.cpp
llvm/lib/IR/IntrinsicInst.cpp
llvm/lib/IR/LLVMContextImpl.cpp
llvm/lib/InterfaceStub/IFSHandler.cpp
llvm/lib/MC/MCAsmStreamer.cpp
llvm/lib/MC/MCContext.cpp
llvm/lib/MC/MCDisassembler/MCDisassembler.cpp
llvm/lib/MC/MCParser/MasmParser.cpp
llvm/lib/MC/MCSchedule.cpp
llvm/lib/MC/MCSectionXCOFF.cpp
llvm/lib/Object/ELFObjectFile.cpp
llvm/lib/Support/Process.cpp
llvm/lib/Support/VirtualFileSystem.cpp
llvm/lib/Support/raw_ostream.cpp
llvm/lib/TableGen/Record.cpp
llvm/unittests/FileCheck/FileCheckTest.cpp
llvm/unittests/Support/AlignmentTest.cpp
llvm/unittests/Support/KnownBitsTest.cpp
llvm/utils/TableGen/GlobalISelEmitter.cpp