From c9601cdee349b369c1f049dead90791953c7294f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mi=C8=9Bca=20Dumitru?= Date: Sun, 14 Mar 2021 18:19:40 +0200 Subject: [PATCH] LibM: Implement the missing parts of the round family --- Userland/Libraries/LibM/math.cpp | 30 ++++++++++++++++++++++++++++++ Userland/Libraries/LibM/math.h | 6 ++++++ 2 files changed, 36 insertions(+) diff --git a/Userland/Libraries/LibM/math.cpp b/Userland/Libraries/LibM/math.cpp index 3cab183d24..e1059d3589 100644 --- a/Userland/Libraries/LibM/math.cpp +++ b/Userland/Libraries/LibM/math.cpp @@ -868,6 +868,36 @@ long double roundl(long double value) NOEXCEPT return internal_to_integer(value, RoundingMode::ToEven); } +long lroundf(float value) NOEXCEPT +{ + return internal_to_integer(value, RoundingMode::ToEven); +} + +long lround(double value) NOEXCEPT +{ + return internal_to_integer(value, RoundingMode::ToEven); +} + +long lroundl(long double value) NOEXCEPT +{ + return internal_to_integer(value, RoundingMode::ToEven); +} + +long long llroundf(float value) NOEXCEPT +{ + return internal_to_integer(value, RoundingMode::ToEven); +} + +long long llround(double value) NOEXCEPT +{ + return internal_to_integer(value, RoundingMode::ToEven); +} + +long long llroundd(long double value) NOEXCEPT +{ + return internal_to_integer(value, RoundingMode::ToEven); +} + float floorf(float value) NOEXCEPT { return internal_to_integer(value, RoundingMode::Down); diff --git a/Userland/Libraries/LibM/math.h b/Userland/Libraries/LibM/math.h index c6ce9733cf..55bfdcfb56 100644 --- a/Userland/Libraries/LibM/math.h +++ b/Userland/Libraries/LibM/math.h @@ -123,6 +123,12 @@ long double truncl(long double) NOEXCEPT; double round(double) NOEXCEPT; float roundf(float) NOEXCEPT; long double roundl(long double) NOEXCEPT; +long lroundf(float) NOEXCEPT; +long lround(double) NOEXCEPT; +long lroundl(long double) NOEXCEPT; +long long llroundf(float) NOEXCEPT; +long long llround(double) NOEXCEPT; +long long llroundd(long double) NOEXCEPT; double rint(double) NOEXCEPT; float rintf(float) NOEXCEPT; long lrintl(long double) NOEXCEPT;