diff options
author | Siva Chandra Reddy <sivachandra@google.com> | 2020-05-27 08:22:09 +0300 |
---|---|---|
committer | Siva Chandra Reddy <sivachandra@google.com> | 2020-05-27 08:26:41 +0300 |
commit | 9f69d3d0bc65ff50b1dc3ab0a6a08ddc32b190a6 (patch) | |
tree | e9c92cadf57ce54c25039f4d0bfc75c8b9f35511 /libc | |
parent | 0ed2d4c7cba8fb15e51d0f6f4e9011027c17085c (diff) |
[libc][NFC][Obvious] Convert the MPFR operations enum to an enum class.
This was suggested in https://reviews.llvm.org/D79149.
Diffstat (limited to 'libc')
-rw-r--r-- | libc/test/src/math/cosf_test.cpp | 8 | ||||
-rw-r--r-- | libc/test/src/math/exp2f_test.cpp | 19 | ||||
-rw-r--r-- | libc/test/src/math/expf_test.cpp | 10 | ||||
-rw-r--r-- | libc/test/src/math/fabs_test.cpp | 2 | ||||
-rw-r--r-- | libc/test/src/math/fabsf_test.cpp | 3 | ||||
-rw-r--r-- | libc/test/src/math/sincosf_test.cpp | 16 | ||||
-rw-r--r-- | libc/test/src/math/sinf_test.cpp | 10 | ||||
-rw-r--r-- | libc/utils/MPFRWrapper/MPFRUtils.cpp | 14 | ||||
-rw-r--r-- | libc/utils/MPFRWrapper/MPFRUtils.h | 2 |
9 files changed, 43 insertions, 41 deletions
diff --git a/libc/test/src/math/cosf_test.cpp b/libc/test/src/math/cosf_test.cpp index f9fc9c2e2d0d..1f9dffd87c10 100644 --- a/libc/test/src/math/cosf_test.cpp +++ b/libc/test/src/math/cosf_test.cpp @@ -80,7 +80,7 @@ TEST(CosfTest, InFloatRange) { float x = valueFromBits(v); if (isnan(x) || isinf(x)) continue; - ASSERT_MPFR_MATCH(mpfr::OP_Cos, x, __llvm_libc::cosf(x), tolerance); + ASSERT_MPFR_MATCH(mpfr::Operation::Cos, x, __llvm_libc::cosf(x), tolerance); } } @@ -88,12 +88,12 @@ TEST(CosfTest, InFloatRange) { TEST(CosfTest, SmallValues) { float x = valueFromBits(0x17800000U); float result = __llvm_libc::cosf(x); - EXPECT_MPFR_MATCH(mpfr::OP_Cos, x, result, tolerance); + EXPECT_MPFR_MATCH(mpfr::Operation::Cos, x, result, tolerance); EXPECT_EQ(BitPatterns::one, valueAsBits(result)); x = valueFromBits(0x0040000U); result = __llvm_libc::cosf(x); - EXPECT_MPFR_MATCH(mpfr::OP_Cos, x, result, tolerance); + EXPECT_MPFR_MATCH(mpfr::Operation::Cos, x, result, tolerance); EXPECT_EQ(BitPatterns::one, valueAsBits(result)); } @@ -102,6 +102,6 @@ TEST(CosfTest, SmallValues) { TEST(CosfTest, SDCOMP_26094) { for (uint32_t v : sdcomp26094Values) { float x = valueFromBits(v); - ASSERT_MPFR_MATCH(mpfr::OP_Cos, x, __llvm_libc::cosf(x), tolerance); + ASSERT_MPFR_MATCH(mpfr::Operation::Cos, x, __llvm_libc::cosf(x), tolerance); } } diff --git a/libc/test/src/math/exp2f_test.cpp b/libc/test/src/math/exp2f_test.cpp index dbb7046e28bd..c900ec669544 100644 --- a/libc/test/src/math/exp2f_test.cpp +++ b/libc/test/src/math/exp2f_test.cpp @@ -92,27 +92,27 @@ TEST(ExpfTest, Borderline) { llvmlibc_errno = 0; x = valueFromBits(0x42fa0001U); - EXPECT_MPFR_MATCH(mpfr::OP_Exp2, x, __llvm_libc::exp2f(x), tolerance); + EXPECT_MPFR_MATCH(mpfr::Operation::Exp2, x, __llvm_libc::exp2f(x), tolerance); EXPECT_EQ(llvmlibc_errno, 0); x = valueFromBits(0x42ffffffU); - EXPECT_MPFR_MATCH(mpfr::OP_Exp2, x, __llvm_libc::exp2f(x), tolerance); + EXPECT_MPFR_MATCH(mpfr::Operation::Exp2, x, __llvm_libc::exp2f(x), tolerance); EXPECT_EQ(llvmlibc_errno, 0); x = valueFromBits(0xc2fa0001U); - EXPECT_MPFR_MATCH(mpfr::OP_Exp2, x, __llvm_libc::exp2f(x), tolerance); + EXPECT_MPFR_MATCH(mpfr::Operation::Exp2, x, __llvm_libc::exp2f(x), tolerance); EXPECT_EQ(llvmlibc_errno, 0); x = valueFromBits(0xc2fc0000U); - EXPECT_MPFR_MATCH(mpfr::OP_Exp2, x, __llvm_libc::exp2f(x), tolerance); + EXPECT_MPFR_MATCH(mpfr::Operation::Exp2, x, __llvm_libc::exp2f(x), tolerance); EXPECT_EQ(llvmlibc_errno, 0); x = valueFromBits(0xc2fc0001U); - EXPECT_MPFR_MATCH(mpfr::OP_Exp2, x, __llvm_libc::exp2f(x), tolerance); + EXPECT_MPFR_MATCH(mpfr::Operation::Exp2, x, __llvm_libc::exp2f(x), tolerance); EXPECT_EQ(llvmlibc_errno, 0); x = valueFromBits(0xc3150000U); - EXPECT_MPFR_MATCH(mpfr::OP_Exp2, x, __llvm_libc::exp2f(x), tolerance); + EXPECT_MPFR_MATCH(mpfr::Operation::Exp2, x, __llvm_libc::exp2f(x), tolerance); EXPECT_EQ(llvmlibc_errno, 0); } @@ -124,12 +124,12 @@ TEST(ExpfTest, Underflow) { llvmlibc_errno = 0; float x = valueFromBits(0xc3158000U); - EXPECT_MPFR_MATCH(mpfr::OP_Exp2, x, __llvm_libc::exp2f(x), tolerance); + EXPECT_MPFR_MATCH(mpfr::Operation::Exp2, x, __llvm_libc::exp2f(x), tolerance); EXPECT_EQ(llvmlibc_errno, ERANGE); llvmlibc_errno = 0; x = valueFromBits(0xc3165432U); - EXPECT_MPFR_MATCH(mpfr::OP_Exp2, x, __llvm_libc::exp2f(x), tolerance); + EXPECT_MPFR_MATCH(mpfr::Operation::Exp2, x, __llvm_libc::exp2f(x), tolerance); EXPECT_EQ(llvmlibc_errno, ERANGE); } @@ -149,6 +149,7 @@ TEST(exp2fTest, InFloatRange) { // wider precision. if (isnan(result) || isinf(result) || llvmlibc_errno != 0) continue; - ASSERT_MPFR_MATCH(mpfr::OP_Exp2, x, __llvm_libc::exp2f(x), tolerance); + ASSERT_MPFR_MATCH(mpfr::Operation::Exp2, x, __llvm_libc::exp2f(x), + tolerance); } } diff --git a/libc/test/src/math/expf_test.cpp b/libc/test/src/math/expf_test.cpp index aa50bd71974b..c99058dbf6e5 100644 --- a/libc/test/src/math/expf_test.cpp +++ b/libc/test/src/math/expf_test.cpp @@ -109,19 +109,19 @@ TEST(ExpfTest, Borderline) { llvmlibc_errno = 0; x = valueFromBits(0x42affff8U); - ASSERT_MPFR_MATCH(mpfr::OP_Exp, x, __llvm_libc::expf(x), tolerance); + ASSERT_MPFR_MATCH(mpfr::Operation::Exp, x, __llvm_libc::expf(x), tolerance); EXPECT_EQ(llvmlibc_errno, 0); x = valueFromBits(0x42b00008U); - ASSERT_MPFR_MATCH(mpfr::OP_Exp, x, __llvm_libc::expf(x), tolerance); + ASSERT_MPFR_MATCH(mpfr::Operation::Exp, x, __llvm_libc::expf(x), tolerance); EXPECT_EQ(llvmlibc_errno, 0); x = valueFromBits(0xc2affff8U); - ASSERT_MPFR_MATCH(mpfr::OP_Exp, x, __llvm_libc::expf(x), tolerance); + ASSERT_MPFR_MATCH(mpfr::Operation::Exp, x, __llvm_libc::expf(x), tolerance); EXPECT_EQ(llvmlibc_errno, 0); x = valueFromBits(0xc2b00008U); - ASSERT_MPFR_MATCH(mpfr::OP_Exp, x, __llvm_libc::expf(x), tolerance); + ASSERT_MPFR_MATCH(mpfr::Operation::Exp, x, __llvm_libc::expf(x), tolerance); EXPECT_EQ(llvmlibc_errno, 0); } @@ -141,6 +141,6 @@ TEST(ExpfTest, InFloatRange) { // wider precision. if (isnan(result) || isinf(result) || llvmlibc_errno != 0) continue; - ASSERT_MPFR_MATCH(mpfr::OP_Exp, x, __llvm_libc::expf(x), tolerance); + ASSERT_MPFR_MATCH(mpfr::Operation::Exp, x, __llvm_libc::expf(x), tolerance); } } diff --git a/libc/test/src/math/fabs_test.cpp b/libc/test/src/math/fabs_test.cpp index a4c934b07f5a..a9ce9e764298 100644 --- a/libc/test/src/math/fabs_test.cpp +++ b/libc/test/src/math/fabs_test.cpp @@ -59,6 +59,6 @@ TEST(FabsTest, InDoubleRange) { double x = valueFromBits(v); if (isnan(x) || isinf(x)) continue; - ASSERT_MPFR_MATCH(mpfr::OP_Abs, x, __llvm_libc::fabs(x), tolerance); + ASSERT_MPFR_MATCH(mpfr::Operation::Abs, x, __llvm_libc::fabs(x), tolerance); } } diff --git a/libc/test/src/math/fabsf_test.cpp b/libc/test/src/math/fabsf_test.cpp index 40e61e6091b6..4231a251bf13 100644 --- a/libc/test/src/math/fabsf_test.cpp +++ b/libc/test/src/math/fabsf_test.cpp @@ -61,6 +61,7 @@ TEST(FabsfTest, InFloatRange) { double x = valueFromBits(v); if (isnan(x) || isinf(x)) continue; - ASSERT_MPFR_MATCH(mpfr::OP_Abs, x, __llvm_libc::fabsf(x), tolerance); + ASSERT_MPFR_MATCH(mpfr::Operation::Abs, x, __llvm_libc::fabsf(x), + tolerance); } } diff --git a/libc/test/src/math/sincosf_test.cpp b/libc/test/src/math/sincosf_test.cpp index 9a87e2c9e58c..66b247aeb0af 100644 --- a/libc/test/src/math/sincosf_test.cpp +++ b/libc/test/src/math/sincosf_test.cpp @@ -95,8 +95,8 @@ TEST(SinCosfTest, InFloatRange) { float sin, cos; __llvm_libc::sincosf(x, &sin, &cos); - ASSERT_MPFR_MATCH(mpfr::OP_Cos, x, cos, tolerance); - ASSERT_MPFR_MATCH(mpfr::OP_Sin, x, sin, tolerance); + ASSERT_MPFR_MATCH(mpfr::Operation::Cos, x, cos, tolerance); + ASSERT_MPFR_MATCH(mpfr::Operation::Sin, x, sin, tolerance); } } @@ -106,16 +106,16 @@ TEST(SinCosfTest, SmallValues) { float x = valueFromBits(bits); float result_cos, result_sin; __llvm_libc::sincosf(x, &result_sin, &result_cos); - EXPECT_MPFR_MATCH(mpfr::OP_Cos, x, result_cos, tolerance); - EXPECT_MPFR_MATCH(mpfr::OP_Sin, x, result_sin, tolerance); + EXPECT_MPFR_MATCH(mpfr::Operation::Cos, x, result_cos, tolerance); + EXPECT_MPFR_MATCH(mpfr::Operation::Sin, x, result_sin, tolerance); EXPECT_EQ(BitPatterns::one, valueAsBits(result_cos)); EXPECT_EQ(bits, valueAsBits(result_sin)); bits = 0x00400000; x = valueFromBits(bits); __llvm_libc::sincosf(x, &result_sin, &result_cos); - EXPECT_MPFR_MATCH(mpfr::OP_Cos, x, result_cos, tolerance); - EXPECT_MPFR_MATCH(mpfr::OP_Sin, x, result_sin, tolerance); + EXPECT_MPFR_MATCH(mpfr::Operation::Cos, x, result_cos, tolerance); + EXPECT_MPFR_MATCH(mpfr::Operation::Sin, x, result_sin, tolerance); EXPECT_EQ(BitPatterns::one, valueAsBits(result_cos)); EXPECT_EQ(bits, valueAsBits(result_sin)); } @@ -127,7 +127,7 @@ TEST(SinCosfTest, SDCOMP_26094) { float x = valueFromBits(v); float sin, cos; __llvm_libc::sincosf(x, &sin, &cos); - EXPECT_MPFR_MATCH(mpfr::OP_Cos, x, cos, tolerance); - EXPECT_MPFR_MATCH(mpfr::OP_Sin, x, sin, tolerance); + EXPECT_MPFR_MATCH(mpfr::Operation::Cos, x, cos, tolerance); + EXPECT_MPFR_MATCH(mpfr::Operation::Sin, x, sin, tolerance); } } diff --git a/libc/test/src/math/sinf_test.cpp b/libc/test/src/math/sinf_test.cpp index e0821c621dcc..437281ada43a 100644 --- a/libc/test/src/math/sinf_test.cpp +++ b/libc/test/src/math/sinf_test.cpp @@ -80,13 +80,13 @@ TEST(SinfTest, InFloatRange) { float x = valueFromBits(v); if (isnan(x) || isinf(x)) continue; - ASSERT_MPFR_MATCH(mpfr::OP_Sin, x, __llvm_libc::sinf(x), tolerance); + ASSERT_MPFR_MATCH(mpfr::Operation::Sin, x, __llvm_libc::sinf(x), tolerance); } } TEST(SinfTest, SpecificBitPatterns) { float x = valueFromBits(0xc70d39a1); - EXPECT_MPFR_MATCH(mpfr::OP_Sin, x, __llvm_libc::sinf(x), tolerance); + EXPECT_MPFR_MATCH(mpfr::Operation::Sin, x, __llvm_libc::sinf(x), tolerance); } // For small values, sin(x) is x. @@ -94,13 +94,13 @@ TEST(SinfTest, SmallValues) { uint32_t bits = 0x17800000; float x = valueFromBits(bits); float result = __llvm_libc::sinf(x); - EXPECT_MPFR_MATCH(mpfr::OP_Sin, x, result, tolerance); + EXPECT_MPFR_MATCH(mpfr::Operation::Sin, x, result, tolerance); EXPECT_EQ(bits, valueAsBits(result)); bits = 0x00400000; x = valueFromBits(bits); result = __llvm_libc::sinf(x); - EXPECT_MPFR_MATCH(mpfr::OP_Sin, x, result, tolerance); + EXPECT_MPFR_MATCH(mpfr::Operation::Sin, x, result, tolerance); EXPECT_EQ(bits, valueAsBits(result)); } @@ -109,6 +109,6 @@ TEST(SinfTest, SmallValues) { TEST(SinfTest, SDCOMP_26094) { for (uint32_t v : sdcomp26094Values) { float x = valueFromBits(v); - EXPECT_MPFR_MATCH(mpfr::OP_Sin, x, __llvm_libc::sinf(x), tolerance); + EXPECT_MPFR_MATCH(mpfr::Operation::Sin, x, __llvm_libc::sinf(x), tolerance); } } diff --git a/libc/utils/MPFRWrapper/MPFRUtils.cpp b/libc/utils/MPFRWrapper/MPFRUtils.cpp index 74c2f760f034..51c8c3759292 100644 --- a/libc/utils/MPFRWrapper/MPFRUtils.cpp +++ b/libc/utils/MPFRWrapper/MPFRUtils.cpp @@ -86,21 +86,21 @@ public: mpfr_init2(value, mpfrPrecision); MPFRNumber mpfrInput(rawValue); switch (op) { - case OP_Abs: + case Operation::Abs: mpfr_abs(value, mpfrInput.value, MPFR_RNDN); break; - case OP_Cos: + case Operation::Cos: mpfr_cos(value, mpfrInput.value, MPFR_RNDN); break; - case OP_Sin: - mpfr_sin(value, mpfrInput.value, MPFR_RNDN); - break; - case OP_Exp: + case Operation::Exp: mpfr_exp(value, mpfrInput.value, MPFR_RNDN); break; - case OP_Exp2: + case Operation::Exp2: mpfr_exp2(value, mpfrInput.value, MPFR_RNDN); break; + case Operation::Sin: + mpfr_sin(value, mpfrInput.value, MPFR_RNDN); + break; } } diff --git a/libc/utils/MPFRWrapper/MPFRUtils.h b/libc/utils/MPFRWrapper/MPFRUtils.h index f6660f2fa78e..e39ed91281a9 100644 --- a/libc/utils/MPFRWrapper/MPFRUtils.h +++ b/libc/utils/MPFRWrapper/MPFRUtils.h @@ -39,7 +39,7 @@ struct Tolerance { uint32_t bits; }; -enum Operation { OP_Abs, OP_Cos, OP_Sin, OP_Exp, OP_Exp2 }; +enum class Operation : int { Abs, Cos, Exp, Exp2, Sin }; namespace internal { |