summaryrefslogtreecommitdiffstats
path: root/llvm/unittests
diff options
context:
space:
mode:
Diffstat (limited to 'llvm/unittests')
-rw-r--r--llvm/unittests/IR/ConstantRangeTest.cpp16
1 files changed, 16 insertions, 0 deletions
diff --git a/llvm/unittests/IR/ConstantRangeTest.cpp b/llvm/unittests/IR/ConstantRangeTest.cpp
index 7440574cee4..d8befa88c84 100644
--- a/llvm/unittests/IR/ConstantRangeTest.cpp
+++ b/llvm/unittests/IR/ConstantRangeTest.cpp
@@ -2217,6 +2217,14 @@ TEST_F(ConstantRangeTest, USubSat) {
});
}
+TEST_F(ConstantRangeTest, UMulSat) {
+ TestUnsignedBinOpExhaustive(
+ [](const ConstantRange &CR1, const ConstantRange &CR2) {
+ return CR1.umul_sat(CR2);
+ },
+ [](const APInt &N1, const APInt &N2) { return N1.umul_sat(N2); });
+}
+
TEST_F(ConstantRangeTest, UShlSat) {
TestUnsignedBinOpExhaustive(
[](const ConstantRange &CR1, const ConstantRange &CR2) {
@@ -2245,6 +2253,14 @@ TEST_F(ConstantRangeTest, SSubSat) {
});
}
+TEST_F(ConstantRangeTest, SMulSat) {
+ TestSignedBinOpExhaustive(
+ [](const ConstantRange &CR1, const ConstantRange &CR2) {
+ return CR1.smul_sat(CR2);
+ },
+ [](const APInt &N1, const APInt &N2) { return N1.smul_sat(N2); });
+}
+
TEST_F(ConstantRangeTest, SShlSat) {
TestSignedBinOpExhaustive(
[](const ConstantRange &CR1, const ConstantRange &CR2) {
OpenPOWER on IntegriCloud