aboutsummaryrefslogtreecommitdiff
path: root/llvm/unittests/Support/KnownBitsTest.cpp
diff options
context:
space:
mode:
authorFangrui Song <i@maskray.me>2022-12-16 22:44:08 +0000
committerFangrui Song <i@maskray.me>2022-12-16 22:44:08 +0000
commit2fa744e631cbabe583da010ec56560edbc7a5384 (patch)
treedb931423c9394a852b65bdf5072ba997463114d5 /llvm/unittests/Support/KnownBitsTest.cpp
parent27249c06b775c73b7fa9f2d8e48cac1a85169481 (diff)
downloadllvm-2fa744e631cbabe583da010ec56560edbc7a5384.zip
llvm-2fa744e631cbabe583da010ec56560edbc7a5384.tar.gz
llvm-2fa744e631cbabe583da010ec56560edbc7a5384.tar.bz2
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.
Diffstat (limited to 'llvm/unittests/Support/KnownBitsTest.cpp')
-rw-r--r--llvm/unittests/Support/KnownBitsTest.cpp42
1 files changed, 21 insertions, 21 deletions
diff --git a/llvm/unittests/Support/KnownBitsTest.cpp b/llvm/unittests/Support/KnownBitsTest.cpp
index 0c3d9df..2f5d2e8 100644
--- a/llvm/unittests/Support/KnownBitsTest.cpp
+++ b/llvm/unittests/Support/KnownBitsTest.cpp
@@ -369,27 +369,27 @@ TEST(KnownBitsTest, ICmpExhaustive) {
EXPECT_EQ(AllSLT || NoneSLT, KnownSLT.has_value());
EXPECT_EQ(AllSLE || NoneSLE, KnownSLE.has_value());
- EXPECT_EQ(AllEQ, KnownEQ.has_value() && KnownEQ.value());
- EXPECT_EQ(AllNE, KnownNE.has_value() && KnownNE.value());
- EXPECT_EQ(AllUGT, KnownUGT.has_value() && KnownUGT.value());
- EXPECT_EQ(AllUGE, KnownUGE.has_value() && KnownUGE.value());
- EXPECT_EQ(AllULT, KnownULT.has_value() && KnownULT.value());
- EXPECT_EQ(AllULE, KnownULE.has_value() && KnownULE.value());
- EXPECT_EQ(AllSGT, KnownSGT.has_value() && KnownSGT.value());
- EXPECT_EQ(AllSGE, KnownSGE.has_value() && KnownSGE.value());
- EXPECT_EQ(AllSLT, KnownSLT.has_value() && KnownSLT.value());
- EXPECT_EQ(AllSLE, KnownSLE.has_value() && KnownSLE.value());
-
- EXPECT_EQ(NoneEQ, KnownEQ.has_value() && !KnownEQ.value());
- EXPECT_EQ(NoneNE, KnownNE.has_value() && !KnownNE.value());
- EXPECT_EQ(NoneUGT, KnownUGT.has_value() && !KnownUGT.value());
- EXPECT_EQ(NoneUGE, KnownUGE.has_value() && !KnownUGE.value());
- EXPECT_EQ(NoneULT, KnownULT.has_value() && !KnownULT.value());
- EXPECT_EQ(NoneULE, KnownULE.has_value() && !KnownULE.value());
- EXPECT_EQ(NoneSGT, KnownSGT.has_value() && !KnownSGT.value());
- EXPECT_EQ(NoneSGE, KnownSGE.has_value() && !KnownSGE.value());
- EXPECT_EQ(NoneSLT, KnownSLT.has_value() && !KnownSLT.value());
- EXPECT_EQ(NoneSLE, KnownSLE.has_value() && !KnownSLE.value());
+ EXPECT_EQ(AllEQ, KnownEQ.has_value() && *KnownEQ);
+ EXPECT_EQ(AllNE, KnownNE.has_value() && *KnownNE);
+ EXPECT_EQ(AllUGT, KnownUGT.has_value() && *KnownUGT);
+ EXPECT_EQ(AllUGE, KnownUGE.has_value() && *KnownUGE);
+ EXPECT_EQ(AllULT, KnownULT.has_value() && *KnownULT);
+ EXPECT_EQ(AllULE, KnownULE.has_value() && *KnownULE);
+ EXPECT_EQ(AllSGT, KnownSGT.has_value() && *KnownSGT);
+ EXPECT_EQ(AllSGE, KnownSGE.has_value() && *KnownSGE);
+ EXPECT_EQ(AllSLT, KnownSLT.has_value() && *KnownSLT);
+ EXPECT_EQ(AllSLE, KnownSLE.has_value() && *KnownSLE);
+
+ EXPECT_EQ(NoneEQ, KnownEQ.has_value() && !*KnownEQ);
+ EXPECT_EQ(NoneNE, KnownNE.has_value() && !*KnownNE);
+ EXPECT_EQ(NoneUGT, KnownUGT.has_value() && !*KnownUGT);
+ EXPECT_EQ(NoneUGE, KnownUGE.has_value() && !*KnownUGE);
+ EXPECT_EQ(NoneULT, KnownULT.has_value() && !*KnownULT);
+ EXPECT_EQ(NoneULE, KnownULE.has_value() && !*KnownULE);
+ EXPECT_EQ(NoneSGT, KnownSGT.has_value() && !*KnownSGT);
+ EXPECT_EQ(NoneSGE, KnownSGE.has_value() && !*KnownSGE);
+ EXPECT_EQ(NoneSLT, KnownSLT.has_value() && !*KnownSLT);
+ EXPECT_EQ(NoneSLE, KnownSLE.has_value() && !*KnownSLE);
});
});
}