diff options
author | Fangrui Song <i@maskray.me> | 2022-12-16 23:21:27 +0000 |
---|---|---|
committer | Fangrui Song <i@maskray.me> | 2022-12-16 23:21:27 +0000 |
commit | 51b685734b0e185bca9d0eec66b3bcb636ed9c02 (patch) | |
tree | 1d3cf7527fef8d8023e8de1858ef42a350be2747 /llvm/lib/CodeGen/ExpandVectorPredication.cpp | |
parent | be931f89451b650e081daf875213c19f658caf25 (diff) | |
download | llvm-51b685734b0e185bca9d0eec66b3bcb636ed9c02.zip llvm-51b685734b0e185bca9d0eec66b3bcb636ed9c02.tar.gz llvm-51b685734b0e185bca9d0eec66b3bcb636ed9c02.tar.bz2 |
[Transforms,CodeGen] 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).
Diffstat (limited to 'llvm/lib/CodeGen/ExpandVectorPredication.cpp')
-rw-r--r-- | llvm/lib/CodeGen/ExpandVectorPredication.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/llvm/lib/CodeGen/ExpandVectorPredication.cpp b/llvm/lib/CodeGen/ExpandVectorPredication.cpp index 23b70ce..5ee76ff 100644 --- a/llvm/lib/CodeGen/ExpandVectorPredication.cpp +++ b/llvm/lib/CodeGen/ExpandVectorPredication.cpp @@ -423,7 +423,7 @@ CachingVPExpander::expandPredicationInMemoryIntrinsic(IRBuilder<> &Builder, StoreInst *NewStore = Builder.CreateStore(DataParam, PtrParam, /*IsVolatile*/ false); if (AlignOpt.has_value()) - NewStore->setAlignment(AlignOpt.value()); + NewStore->setAlignment(*AlignOpt); NewMemoryInst = NewStore; } else NewMemoryInst = Builder.CreateMaskedStore( @@ -435,7 +435,7 @@ CachingVPExpander::expandPredicationInMemoryIntrinsic(IRBuilder<> &Builder, LoadInst *NewLoad = Builder.CreateLoad(VPI.getType(), PtrParam, /*IsVolatile*/ false); if (AlignOpt.has_value()) - NewLoad->setAlignment(AlignOpt.value()); + NewLoad->setAlignment(*AlignOpt); NewMemoryInst = NewLoad; } else NewMemoryInst = Builder.CreateMaskedLoad( |