1930cf1cbSSiva Chandra Reddy //===-- Unittests for ilogbl ----------------------------------------------===//
2930cf1cbSSiva Chandra Reddy //
3930cf1cbSSiva Chandra Reddy // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4930cf1cbSSiva Chandra Reddy // See https://llvm.org/LICENSE.txt for license information.
5930cf1cbSSiva Chandra Reddy // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6930cf1cbSSiva Chandra Reddy //
7930cf1cbSSiva Chandra Reddy //===----------------------------------------------------------------------===//
8930cf1cbSSiva Chandra Reddy 
9930cf1cbSSiva Chandra Reddy #include "ILogbTest.h"
10930cf1cbSSiva Chandra Reddy 
11c120edc7SMichael Jones #include "src/__support/FPUtil/FPBits.h"
12c120edc7SMichael Jones #include "src/__support/FPUtil/ManipulationFunctions.h"
13930cf1cbSSiva Chandra Reddy #include "src/math/ilogbl.h"
146c3f53c7SSiva Chandra Reddy #include "utils/UnitTest/FPMatcher.h"
15930cf1cbSSiva Chandra Reddy #include "utils/UnitTest/Test.h"
163e18fb33SMichael Jones #include <math.h>
17930cf1cbSSiva Chandra Reddy 
18930cf1cbSSiva Chandra Reddy using RunContext = __llvm_libc::testing::RunContext;
19930cf1cbSSiva Chandra Reddy 
TEST_F(LlvmLibcILogbTest,SpecialNumbers_ilogbl)201df0dbfcSMichael Jones TEST_F(LlvmLibcILogbTest, SpecialNumbers_ilogbl) {
21*25226f3eSMichael Jones   test_special_numbers<long double>(&__llvm_libc::ilogbl);
22930cf1cbSSiva Chandra Reddy }
23930cf1cbSSiva Chandra Reddy 
TEST_F(LlvmLibcILogbTest,PowersOfTwo_ilogbl)241df0dbfcSMichael Jones TEST_F(LlvmLibcILogbTest, PowersOfTwo_ilogbl) {
25*25226f3eSMichael Jones   test_powers_of_two<long double>(&__llvm_libc::ilogbl);
26930cf1cbSSiva Chandra Reddy }
27930cf1cbSSiva Chandra Reddy 
TEST_F(LlvmLibcILogbTest,SomeIntegers_ilogbl)281df0dbfcSMichael Jones TEST_F(LlvmLibcILogbTest, SomeIntegers_ilogbl) {
29*25226f3eSMichael Jones   test_some_integers<long double>(&__llvm_libc::ilogbl);
30930cf1cbSSiva Chandra Reddy }
31930cf1cbSSiva Chandra Reddy 
TEST_F(LlvmLibcILogbTest,SubnormalRange_ilogbl)321df0dbfcSMichael Jones TEST_F(LlvmLibcILogbTest, SubnormalRange_ilogbl) {
33*25226f3eSMichael Jones   test_subnormal_range<long double>(&__llvm_libc::ilogbl);
34930cf1cbSSiva Chandra Reddy }
35930cf1cbSSiva Chandra Reddy 
TEST_F(LlvmLibcILogbTest,NormalRange_ilogbl)361df0dbfcSMichael Jones TEST_F(LlvmLibcILogbTest, NormalRange_ilogbl) {
37*25226f3eSMichael Jones   test_normal_range<long double>(&__llvm_libc::ilogbl);
38930cf1cbSSiva Chandra Reddy }
39