[committed,2/2] benchtests: Better libmvec integration

Message ID 20220429065028.2868756-3-siddhesh@sourceware.org
State Committed
Commit 5b5b1012d579bfb38e11cea3767bec06554c0063
Headers
Series benchtests: libmvec cleanups |

Commit Message

Siddhesh Poyarekar April 29, 2022, 6:50 a.m. UTC
  Improve libmvec benchmark integration so that in future other
architectures may be able to run their libmvec benchmarks as well.  This
now allows libmvec benchmarks to be run with `make BENCHSET=bench-math`.

Signed-off-by: Siddhesh Poyarekar <siddhesh@sourceware.org>
---
 benchtests/Makefile         | 32 +++++++++++++++++---------------
 sysdeps/x86_64/fpu/Makefile |  4 ----
 2 files changed, 17 insertions(+), 19 deletions(-)
  

Patch

diff --git a/benchtests/Makefile b/benchtests/Makefile
index 7943d1c58a..149d87e22e 100644
--- a/benchtests/Makefile
+++ b/benchtests/Makefile
@@ -113,12 +113,6 @@  bench-string := \
   ffsll \
 # bench-string
 
-ifeq (${BENCHSET},)
-bench := $(bench-math) $(bench-pthread) $(bench-string)
-else
-bench := $(foreach B,$(filter bench-%,${BENCHSET}), ${${B}})
-endif
-
 # String function benchmarks.
 string-benchset := \
   bzero \
@@ -299,15 +293,6 @@  bench-extra-objs = json-lib.o
 extra-objs += $(bench-extra-objs)
 others-extras = $(bench-extra-objs)
 
-# NB: Use "=" instead of ":=" since sysdeps Makefiles may add more
-# benches.
-binaries-bench = $(addprefix $(objpfx)bench-,$(bench))
-extra-objs += $(addsuffix .o,$(addprefix bench-,$(bench)))
-binaries-benchset = $(addprefix $(objpfx)bench-,$(benchset))
-extra-objs += $(addsuffix .o,$(addprefix bench-,$(benchset)))
-binaries-bench-malloc := $(addprefix $(objpfx)bench-,$(bench-malloc))
-extra-objs += $(addsuffix .o,$(addprefix bench-,$(bench-malloc)))
-
 # The default duration: 1 seconds.
 ifndef BENCH_DURATION
 BENCH_DURATION := 1
@@ -344,6 +329,23 @@  extra-objs += bench-timing-type.o
 
 include ../Rules
 
+bench-math += $(bench-libmvec)
+
+ifeq (${BENCHSET},)
+bench := $(bench-math) $(bench-pthread) $(bench-string)
+else
+bench := $(foreach B,$(filter bench-%,${BENCHSET}), ${${B}})
+endif
+
+# NB: Use "=" instead of ":=" since sysdeps Makefiles may add more
+# benches.
+binaries-bench = $(addprefix $(objpfx)bench-,$(bench))
+extra-objs += $(addsuffix .o,$(addprefix bench-,$(bench)))
+binaries-benchset = $(addprefix $(objpfx)bench-,$(benchset))
+extra-objs += $(addsuffix .o,$(addprefix bench-,$(benchset)))
+binaries-bench-malloc := $(addprefix $(objpfx)bench-,$(bench-malloc))
+extra-objs += $(addsuffix .o,$(addprefix bench-,$(bench-malloc)))
+
 # This makes sure CPPFLAGS-nonlib and CFLAGS-nonlib are passed
 # for all these modules.
 cpp-srcs-left := $(binaries-benchset:=.c) $(binaries-bench:=.c) \
diff --git a/sysdeps/x86_64/fpu/Makefile b/sysdeps/x86_64/fpu/Makefile
index 24af49e068..7233174ede 100644
--- a/sysdeps/x86_64/fpu/Makefile
+++ b/sysdeps/x86_64/fpu/Makefile
@@ -86,10 +86,6 @@  float-vlen16-arch-ext-cflags = -mavx512f
 
 bench-libmvec := $(bench-libmvec-double) $(bench-libmvec-float)
 
-ifeq (${BENCHSET},)
-bench += $(bench-libmvec)
-endif
-
 ifeq (${STATIC-BENCHTESTS},yes)
 libmvec-benchtests = $(common-objpfx)mathvec/libmvec.a $(common-objpfx)math/libm.a
 else