Skip to content

Commit 8c5e939

Browse files
authored
[libc][math][c++23] Add f{max,min}imum{,_mag,_mag_num,_num}bf16 math functions (llvm#152881)
This PR adds the following basic math functions for BFloat16 type along with the tests: - fmaximumbf16 - fmaximum_magbf16 - fmaximum_mag_numbf16 - fmaximum_numbf16 - fminimumbf16 - fminimum_magbf16 - fminimum_mag_numbf16 - fminimum_numbf16 --------- Signed-off-by: Krishna Pandey <[email protected]>
1 parent d455d45 commit 8c5e939

39 files changed

+793
-0
lines changed

libc/config/baremetal/aarch64/entrypoints.txt

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -770,7 +770,15 @@ list(APPEND TARGET_LIBM_ENTRYPOINTS
770770
libc.src.math.fabsbf16
771771
libc.src.math.floorbf16
772772
libc.src.math.fmaxbf16
773+
libc.src.math.fmaximumbf16
774+
libc.src.math.fmaximum_magbf16
775+
libc.src.math.fmaximum_mag_numbf16
776+
libc.src.math.fmaximum_numbf16
773777
libc.src.math.fminbf16
778+
libc.src.math.fminimumbf16
779+
libc.src.math.fminimum_magbf16
780+
libc.src.math.fminimum_mag_numbf16
781+
libc.src.math.fminimum_numbf16
774782
libc.src.math.roundbf16
775783
libc.src.math.roundevenbf16
776784
libc.src.math.truncbf16

libc/config/baremetal/arm/entrypoints.txt

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -773,7 +773,15 @@ list(APPEND TARGET_LIBM_ENTRYPOINTS
773773
libc.src.math.fabsbf16
774774
libc.src.math.floorbf16
775775
libc.src.math.fmaxbf16
776+
libc.src.math.fmaximumbf16
777+
libc.src.math.fmaximum_magbf16
778+
libc.src.math.fmaximum_mag_numbf16
779+
libc.src.math.fmaximum_numbf16
776780
libc.src.math.fminbf16
781+
libc.src.math.fminimumbf16
782+
libc.src.math.fminimum_magbf16
783+
libc.src.math.fminimum_mag_numbf16
784+
libc.src.math.fminimum_numbf16
777785
libc.src.math.roundbf16
778786
libc.src.math.roundevenbf16
779787
libc.src.math.truncbf16

libc/config/baremetal/riscv/entrypoints.txt

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -773,7 +773,15 @@ list(APPEND TARGET_LIBM_ENTRYPOINTS
773773
libc.src.math.fabsbf16
774774
libc.src.math.floorbf16
775775
libc.src.math.fmaxbf16
776+
libc.src.math.fmaximumbf16
777+
libc.src.math.fmaximum_magbf16
778+
libc.src.math.fmaximum_mag_numbf16
779+
libc.src.math.fmaximum_numbf16
776780
libc.src.math.fminbf16
781+
libc.src.math.fminimumbf16
782+
libc.src.math.fminimum_magbf16
783+
libc.src.math.fminimum_mag_numbf16
784+
libc.src.math.fminimum_numbf16
777785
libc.src.math.roundbf16
778786
libc.src.math.roundevenbf16
779787
libc.src.math.truncbf16

libc/config/darwin/aarch64/entrypoints.txt

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -603,7 +603,15 @@ list(APPEND TARGET_LIBM_ENTRYPOINTS
603603
libc.src.math.fabsbf16
604604
libc.src.math.floorbf16
605605
libc.src.math.fmaxbf16
606+
libc.src.math.fmaximumbf16
607+
libc.src.math.fmaximum_magbf16
608+
libc.src.math.fmaximum_mag_numbf16
609+
libc.src.math.fmaximum_numbf16
606610
libc.src.math.fminbf16
611+
libc.src.math.fminimumbf16
612+
libc.src.math.fminimum_magbf16
613+
libc.src.math.fminimum_mag_numbf16
614+
libc.src.math.fminimum_numbf16
607615
libc.src.math.roundbf16
608616
libc.src.math.roundevenbf16
609617
libc.src.math.truncbf16

libc/config/darwin/x86_64/entrypoints.txt

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -246,7 +246,16 @@ list(APPEND TARGET_LIBM_ENTRYPOINTS
246246
libc.src.math.fabsbf16
247247
libc.src.math.floorbf16
248248
libc.src.math.fmaxbf16
249+
libc.src.math.fmaximumbf16
250+
libc.src.math.fmaximum_magbf16
251+
libc.src.math.fmaximum_mag_numbf16
252+
libc.src.math.fmaximum_numbf16
249253
libc.src.math.fminbf16
254+
libc.src.math.fminimumbf16
255+
libc.src.math.fminimum_magbf16
256+
libc.src.math.fminimum_mag_numbf16
257+
libc.src.math.fminimum_numbf16
258+
250259
libc.src.math.roundbf16
251260
libc.src.math.roundevenbf16
252261
libc.src.math.truncbf16

libc/config/gpu/amdgpu/entrypoints.txt

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -629,7 +629,15 @@ list(APPEND TARGET_LIBM_ENTRYPOINTS
629629
libc.src.math.fabsbf16
630630
libc.src.math.floorbf16
631631
libc.src.math.fmaxbf16
632+
libc.src.math.fmaximumbf16
633+
libc.src.math.fmaximum_magbf16
634+
libc.src.math.fmaximum_mag_numbf16
635+
libc.src.math.fmaximum_numbf16
632636
libc.src.math.fminbf16
637+
libc.src.math.fminimumbf16
638+
libc.src.math.fminimum_magbf16
639+
libc.src.math.fminimum_mag_numbf16
640+
libc.src.math.fminimum_numbf16
633641
libc.src.math.roundbf16
634642
libc.src.math.roundevenbf16
635643
libc.src.math.truncbf16

libc/config/gpu/nvptx/entrypoints.txt

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -630,7 +630,15 @@ list(APPEND TARGET_LIBM_ENTRYPOINTS
630630
libc.src.math.fabsbf16
631631
libc.src.math.floorbf16
632632
libc.src.math.fmaxbf16
633+
libc.src.math.fmaximumbf16
634+
libc.src.math.fmaximum_magbf16
635+
libc.src.math.fmaximum_mag_numbf16
636+
libc.src.math.fmaximum_numbf16
633637
libc.src.math.fminbf16
638+
libc.src.math.fminimumbf16
639+
libc.src.math.fminimum_magbf16
640+
libc.src.math.fminimum_mag_numbf16
641+
libc.src.math.fminimum_numbf16
634642
libc.src.math.roundbf16
635643
libc.src.math.roundevenbf16
636644
libc.src.math.truncbf16

libc/config/linux/aarch64/entrypoints.txt

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -857,7 +857,15 @@ list(APPEND TARGET_LIBM_ENTRYPOINTS
857857
libc.src.math.fabsbf16
858858
libc.src.math.floorbf16
859859
libc.src.math.fmaxbf16
860+
libc.src.math.fmaximumbf16
861+
libc.src.math.fmaximum_magbf16
862+
libc.src.math.fmaximum_mag_numbf16
863+
libc.src.math.fmaximum_numbf16
860864
libc.src.math.fminbf16
865+
libc.src.math.fminimumbf16
866+
libc.src.math.fminimum_magbf16
867+
libc.src.math.fminimum_mag_numbf16
868+
libc.src.math.fminimum_numbf16
861869
libc.src.math.roundbf16
862870
libc.src.math.roundevenbf16
863871
libc.src.math.truncbf16

libc/config/linux/arm/entrypoints.txt

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -473,7 +473,15 @@ list(APPEND TARGET_LIBM_ENTRYPOINTS
473473
libc.src.math.fabsbf16
474474
libc.src.math.floorbf16
475475
libc.src.math.fmaxbf16
476+
libc.src.math.fmaximumbf16
477+
libc.src.math.fmaximum_magbf16
478+
libc.src.math.fmaximum_mag_numbf16
479+
libc.src.math.fmaximum_numbf16
476480
libc.src.math.fminbf16
481+
libc.src.math.fminimumbf16
482+
libc.src.math.fminimum_magbf16
483+
libc.src.math.fminimum_mag_numbf16
484+
libc.src.math.fminimum_numbf16
477485
libc.src.math.roundbf16
478486
libc.src.math.roundevenbf16
479487
libc.src.math.truncbf16

libc/config/linux/riscv/entrypoints.txt

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -876,7 +876,15 @@ list(APPEND TARGET_LIBM_ENTRYPOINTS
876876
libc.src.math.fabsbf16
877877
libc.src.math.floorbf16
878878
libc.src.math.fmaxbf16
879+
libc.src.math.fmaximumbf16
880+
libc.src.math.fmaximum_magbf16
881+
libc.src.math.fmaximum_mag_numbf16
882+
libc.src.math.fmaximum_numbf16
879883
libc.src.math.fminbf16
884+
libc.src.math.fminimumbf16
885+
libc.src.math.fminimum_magbf16
886+
libc.src.math.fminimum_mag_numbf16
887+
libc.src.math.fminimum_numbf16
880888
libc.src.math.roundbf16
881889
libc.src.math.roundevenbf16
882890
libc.src.math.truncbf16

0 commit comments

Comments
 (0)