benchtests: Add benchmarks for frexp functions

Add benchmark support for frexp, frexpf, and frexpl to measure the
performance improvement of the fast path optimization.

- Created frexp-inputs, frexpf-inputs, frexpl-inputs with random test values
- Added frexp, frexpf, frexpl to bench-math list
- Added CFLAGS to disable builtins for accurate benchmarking

These benchmarks will be used to quantify the performance gains from the
fast path optimization for normal floating-point numbers.

Signed-off-by: Osama Abdelkader <osama.abdelkader@gmail.com>
This commit is contained in:
Osama Abdelkader 2025-11-04 19:55:05 +02:00 committed by Adhemerval Zanella
parent b983c854e6
commit ff041e8f8e
4 changed files with 3022 additions and 0 deletions

View File

@ -82,6 +82,9 @@ bench-math := \
fminf \
fmod \
fmodf \
frexp \
frexpf \
frexpl \
hypot \
hypotf \
ilogb \
@ -347,6 +350,9 @@ CFLAGS-bench-trunc.c += -fno-builtin
CFLAGS-bench-truncf.c += -fno-builtin
CFLAGS-bench-fmod.c += -fno-builtin
CFLAGS-bench-fmodf.c += -fno-builtin
CFLAGS-bench-frexp.c += -fno-builtin
CFLAGS-bench-frexpf.c += -fno-builtin
CFLAGS-bench-frexpl.c += -fno-builtin
CFLAGS-bench-remainder.c += -fno-builtin
CFLAGS-bench-remainderf.c += -fno-builtin
CFLAGS-bench-roundeven.c += -fno-builtin

1005
benchtests/frexp-inputs Normal file

File diff suppressed because it is too large Load Diff

1005
benchtests/frexpf-inputs Normal file

File diff suppressed because it is too large Load Diff

1006
benchtests/frexpl-inputs Normal file

File diff suppressed because it is too large Load Diff