brintos

brintos / llvm-project-archived public Read only

0
0
Text · 3.8 KiB · b52abf3 Raw
114 lines · cpp
1//===-- Unittests for absfx -----------------------------------------------===//2//3// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.4// See https://llvm.org/LICENSE.txt for license information.5// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception6//7//===----------------------------------------------------------------------===//8 9#include "AbsTest.h"10#include "src/stdfix/abshk.h"11#include "src/stdfix/abshr.h"12#include "src/stdfix/absk.h"13#include "src/stdfix/abslk.h"14#include "src/stdfix/abslr.h"15#include "src/stdfix/absr.h"16 17#include "src/stdfix/countlshk.h"18#include "src/stdfix/countlshr.h"19#include "src/stdfix/countlsk.h"20#include "src/stdfix/countlslk.h"21#include "src/stdfix/countlslr.h"22#include "src/stdfix/countlsr.h"23#include "src/stdfix/countlsuhk.h"24#include "src/stdfix/countlsuhr.h"25#include "src/stdfix/countlsuk.h"26#include "src/stdfix/countlsulk.h"27#include "src/stdfix/countlsulr.h"28#include "src/stdfix/countlsur.h"29 30#include "src/stdfix/roundhk.h"31#include "src/stdfix/roundhr.h"32#include "src/stdfix/roundk.h"33#include "src/stdfix/roundlk.h"34#include "src/stdfix/roundlr.h"35#include "src/stdfix/roundr.h"36#include "src/stdfix/rounduhk.h"37#include "src/stdfix/rounduhr.h"38#include "src/stdfix/rounduk.h"39#include "src/stdfix/roundulk.h"40#include "src/stdfix/roundulr.h"41#include "src/stdfix/roundur.h"42 43using LIBC_NAMESPACE::abshk;44using LIBC_NAMESPACE::abshr;45using LIBC_NAMESPACE::absk;46using LIBC_NAMESPACE::abslk;47using LIBC_NAMESPACE::abslr;48using LIBC_NAMESPACE::absr;49using LIBC_NAMESPACE::countlshk;50using LIBC_NAMESPACE::countlshr;51using LIBC_NAMESPACE::countlsk;52using LIBC_NAMESPACE::countlslk;53using LIBC_NAMESPACE::countlslr;54using LIBC_NAMESPACE::countlsr;55using LIBC_NAMESPACE::countlsuhk;56using LIBC_NAMESPACE::countlsuhr;57using LIBC_NAMESPACE::countlsuk;58using LIBC_NAMESPACE::countlsulk;59using LIBC_NAMESPACE::countlsulr;60using LIBC_NAMESPACE::countlsur;61using LIBC_NAMESPACE::roundhk;62using LIBC_NAMESPACE::roundhr;63using LIBC_NAMESPACE::roundk;64using LIBC_NAMESPACE::roundlk;65using LIBC_NAMESPACE::roundlr;66using LIBC_NAMESPACE::roundr;67using LIBC_NAMESPACE::rounduhk;68using LIBC_NAMESPACE::rounduhr;69using LIBC_NAMESPACE::rounduk;70using LIBC_NAMESPACE::roundulk;71using LIBC_NAMESPACE::roundulr;72using LIBC_NAMESPACE::roundur;73 74TEST(LlvmLibcAbsfxTest, Basic) {75  ASSERT_EQ(absfx(-0.5r), absr(-0.5r));76  ASSERT_EQ(absfx(-0.5hr), abshr(-0.5hr));77  ASSERT_EQ(absfx(-0.5lr), abslr(-0.5lr));78  ASSERT_EQ(absfx(-0.5k), absk(-0.5k));79  ASSERT_EQ(absfx(-0.5hk), abshk(-0.5hk));80  ASSERT_EQ(absfx(-0.5lk), abslk(-0.5lk));81}82 83TEST(LlvmLibcRoundfxTest, Basic) {84  ASSERT_EQ(roundfx(0.75r, 0), roundr(0.75r, 0));85  ASSERT_EQ(roundfx(0.75hr, 0), roundhr(0.75hr, 0));86  ASSERT_EQ(roundfx(0.75lr, 0), roundlr(0.75lr, 0));87  ASSERT_EQ(roundfx(0.75k, 0), roundk(0.75k, 0));88  ASSERT_EQ(roundfx(0.75hk, 0), roundhk(0.75hk, 0));89  ASSERT_EQ(roundfx(0.75lk, 0), roundlk(0.75lk, 0));90 91  ASSERT_EQ(roundfx(0.75ur, 0), roundur(0.75ur, 0));92  ASSERT_EQ(roundfx(0.75uhr, 0), rounduhr(0.75uhr, 0));93  ASSERT_EQ(roundfx(0.75ulr, 0), roundulr(0.75ulr, 0));94  ASSERT_EQ(roundfx(0.75uk, 0), rounduk(0.75uk, 0));95  ASSERT_EQ(roundfx(0.75uhk, 0), rounduhk(0.75uhk, 0));96  ASSERT_EQ(roundfx(0.75ulk, 0), roundulk(0.75ulk, 0));97}98 99TEST(LlvmLibcCountlsfxTest, Basic) {100  ASSERT_EQ(countlsfx(0.5r), countlsr(0.5r));101  ASSERT_EQ(countlsfx(0.5hr), countlshr(0.5hr));102  ASSERT_EQ(countlsfx(0.5lr), countlslr(0.5lr));103  ASSERT_EQ(countlsfx(0.5k), countlsk(0.5k));104  ASSERT_EQ(countlsfx(0.5hk), countlshk(0.5hk));105  ASSERT_EQ(countlsfx(0.5lk), countlslk(0.5lk));106 107  ASSERT_EQ(countlsfx(0.5ur), countlsur(0.5ur));108  ASSERT_EQ(countlsfx(0.5uhr), countlsuhr(0.5uhr));109  ASSERT_EQ(countlsfx(0.5ulr), countlsulr(0.5ulr));110  ASSERT_EQ(countlsfx(0.5uk), countlsuk(0.5uk));111  ASSERT_EQ(countlsfx(0.5uhk), countlsuhk(0.5uhk));112  ASSERT_EQ(countlsfx(0.5ulk), countlsulk(0.5ulk));113}114