diff mbox series

[bug#72471,10/24] gnu: xnnpack: Update to commit 08f1489.

Message ID 20240804221635.3805-10-david.elsing@posteo.net
State New
Headers show
Series Update PyTorch and dependencies | expand

Commit Message

David Elsing Aug. 4, 2024, 10:15 p.m. UTC
More tests fail when building the shared library, so they are disabled.  The
scripts to generate the autogenerated files run all commands at once, so they
are converted to Makefiles first.

* gnu/packages/machine-learning.scm (xnnpack): Update to commit 08f1489.
[source]: Remove patch.  Adjust snippet.
[arguments]<#:configure-flags>: Add "-DXNNPACK_BUILD_TESTS=OFF".
<#:tests?>: Disable tests.
<#:phases>: Adjust 'fix-cmake' phase.  Convert code generation scripts to
Makefiles and run them.  Run different missing scripts.
* gnu/packages/patches/xnnpack-remove-broken-tests.patch: Remove file.
* gnu/packages/patches/xnnpack-system-libraries.patch: Remove file.
* gnu/local.mk (dist_patch_DATA): Remove them.
---
 gnu/local.mk                                  |    2 -
 gnu/packages/machine-learning.scm             |  102 +-
 .../patches/xnnpack-remove-broken-tests.patch |  337 ---
 .../patches/xnnpack-system-libraries.patch    | 2660 -----------------
 4 files changed, 65 insertions(+), 3036 deletions(-)
 delete mode 100644 gnu/packages/patches/xnnpack-remove-broken-tests.patch
 delete mode 100644 gnu/packages/patches/xnnpack-system-libraries.patch
diff mbox series

Patch

diff --git a/gnu/local.mk b/gnu/local.mk
index 6d2b14e72d..fd8262de55 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -2259,8 +2259,6 @@  dist_patch_DATA =						\
   %D%/packages/patches/xfce4-settings-defaults.patch		\
   %D%/packages/patches/xgboost-use-system-dmlc-core.patch       \
   %D%/packages/patches/xmonad-dynamic-linking.patch		\
-  %D%/packages/patches/xnnpack-remove-broken-tests.patch	\
-  %D%/packages/patches/xnnpack-system-libraries.patch		\
   %D%/packages/patches/xplanet-1.3.1-cxx11-eof.patch		\
   %D%/packages/patches/xplanet-1.3.1-libdisplay_DisplayOutput.cpp.patch	\
   %D%/packages/patches/xplanet-1.3.1-libimage_gif.c.patch	\
diff --git a/gnu/packages/machine-learning.scm b/gnu/packages/machine-learning.scm
index 5a909311e2..6fcfc1d167 100644
--- a/gnu/packages/machine-learning.scm
+++ b/gnu/packages/machine-learning.scm
@@ -4106,7 +4106,7 @@  (define-public qnnpack
 (define-public xnnpack
   ;; There's currently no tag on this repo.
   (let ((version "0.0")
-        (commit "51a987591a6fc9f0fc0707077f53d763ac132cbf")
+        (commit "08f1489fc815e8f121d4d2676c4863d2b51bfe73")
         (revision "3"))
     (package
       (name "xnnpack")
@@ -4119,34 +4119,14 @@  (define-public xnnpack
          (file-name (git-file-name name version))
          (sha256
           (base32
-           "1rzby82xq8d0rl1d148yz88jh9cpsw5c8b2yw7yg39mi7qmr55rm"))
-         ;; Some tests fail to link as they use internal symbols, which are
-         ;; not included in the shared library.
-         ;; XXX: Additionally, these tests fail on i686 due to incorrect results:
-         ;; 171 - f32-vlrelu-test (Failed)
-         ;; 211 - qs8-gavgpool-minmax-fp32-test (Failed)
-         ;; 224 - qu8-avgpool-minmax-fp32-test (Failed)
-         ;; 228 - qu8-gavgpool-minmax-fp32-test (Failed)
-         ;; 263 - x32-packx-test (Failed)
-         (patches (search-patches "xnnpack-remove-broken-tests.patch"))
+           "00jjhz0nfggbdnqqvcznba03pcyy7gssd24yhhzjhincnz9qh8jr"))
          (modules '((guix build utils)
                     (ice-9 ftw)
                     (ice-9 textual-ports)
                     (srfi srfi-26)))
          (snippet
           '(begin
-             ;; Remove autogenerated files
-             (for-each
-              (lambda (dir)
-                (let ((gendir (string-append "src/" dir "/gen")))
-                  (when (file-exists? gendir)
-                    (delete-file-recursively gendir)
-                    ;; Needed for the scripts generating the files
-                    (mkdir gendir))))
-              (scandir "src" (negate (cut member <> '("." "..")))))
-             (delete-file-recursively "google3")
-             (delete-file "cmake/microkernels.cmake")
-             ;; Additional autogenerated files which contain the string
+             ;; Remove autogenerated files, which contain the string
              ;; "Auto-generated file"
              (for-each
               (lambda (dir)
@@ -4159,8 +4139,18 @@  (define-public xnnpack
                                 (get-string-all port)
                                 "Auto-generated file")))
                        (delete-file path))))
-                 (scandir dir (negate (cut member <> '("." ".."))))))
-              '("test" "bench" "eval" "models" "src/enums" "src/xnnpack"))))))
+                 (scandir dir (negate (cut member <> '("." ".." "simd"))))))
+              (cons*
+               "test" "bench" "eval" "models" "src/enums" "src/xnnpack"
+               "gen" "cmake/gen"
+               (filter
+                identity
+                (map
+                 (lambda (dir)
+                   (let ((path
+                          (string-append "src/" dir "/gen")))
+                     (and (file-exists? path) path)))
+                 (scandir "src" (negate (cut member <> '("." ".."))))))))))))
       (build-system cmake-build-system)
       (arguments
        (list
@@ -4169,7 +4159,11 @@  (define-public xnnpack
                              "-DBUILD_SHARED_LIBS=ON"
                              "-DCMAKE_POSITION_INDEPENDENT_CODE=ON"
                              "-DXNNPACK_LIBRARY_TYPE=shared"
-                             "-DXNNPACK_BUILD_BENCHMARKS=FALSE")
+                             "-DXNNPACK_BUILD_BENCHMARKS=FALSE"
+                             ;; Tests fail to build with -DXNNPACK_LIBRARY_TYPE=shared:
+                             ;; https://github.com/google/XNNPACK/issues/6285
+                             "-DXNNPACK_BUILD_TESTS=OFF")
+        #:tests? #f
         #:modules '((ice-9 ftw)
                     (guix build cmake-build-system)
                     (guix build utils))
@@ -4179,27 +4173,61 @@  (define-public xnnpack
               (lambda _
                 (substitute* "CMakeLists.txt"
                   (("TARGET_INCLUDE_DIRECTORIES\\((pthreadpool|cpuinfo).*") "")
-                  ((".*IF\\(NOT TARGET gtest\\).*")
-                   "IF(FALSE)\n")
-                  (("SET\\(CMAKE_CXX_STANDARD 11\\)")
-                   "SET(CMAKE_CXX_STANDARD 14)")
                   (("AMD64") "x86_64"))))
             (add-after 'patch-source-shebangs 'generate-files
               (lambda _
+                ;; This script just calls two other scripts.
+                (delete-file "scripts/generate-tests-and-benchmarks.sh")
+                ;; The bash scripts run all jobs at once and then wait, so we
+                ;; convert them to Makefiles.
                 (for-each
                  (lambda (name)
+                   (define counter 0) ; For the targets
+                   (define target-deps "")
                    (when (and (string-prefix? "generate" name)
-                              (string-suffix? ".sh" name)
-                              (not (equal? "generate-amalgamation.sh" name)))
-                     (display (string-append name "\n"))
-                     (invoke "bash" (string-append "scripts/" name))))
+                              (string-suffix? ".sh" name))
+                     (let ((file (string-append "scripts/" name)))
+                       (substitute* file
+                         ;; Turn the commands into targets and remove trailing
+                         ;; '&' characters
+                         (("(.*(\\.sh|\\.py|-o |--output)[^&]*)&?[[:space:]]*$" _ command)
+                          (begin
+                            (set! counter (+ counter 1))
+                            (string-append "target" (number->string counter)
+                                           ":" target-deps
+                                           "\n\t" command "\n")))
+                         (("[[:space:]]*wait[[:space:]]*") "")
+                         ;; The commands after this line depend on the
+                         ;; previous commands in the file.
+                         (("JIT requires assembly files to be generated first.*" all)
+                          (begin
+                            (set! target-deps
+                                  (string-append
+                                   target-deps " target"
+                                   (string-join
+                                    (map number->string (iota counter 1)) " target")))
+                            all)))
+                       (display (string-append "Running " name "\n"))
+                       (apply invoke "make" "-s" "-f" file "-j"
+                              (number->string (parallel-job-count))
+                              (map
+                               (lambda (i)
+                                 (string-append "target" (number->string i)))
+                               (iota counter 1))))))
                  (scandir "scripts"))
                 ;; These need to run after the above scripts
                 (display "Remaining files\n")
                 (invoke "python3" "tools/update-microkernels.py")
-                (substitute* "tools/amalgamate-microkernels.py"
-                  (("BUILD") "BUILD.bazel"))
-                (invoke "bash" "scripts/generate-amalgamation.sh"))))))
+                (invoke "python3" "tools/update-microkernels.py" "-a")
+                (invoke "python3" "tools/generate-lut-norm-test.py"
+                        "--spec" "test/u8-lut32norm.yaml"
+                        "--output" "test/u8-lut32norm.cc")
+                (invoke "python3" "tools/generate-gemm-test.py"
+                        "--spec" "test/qd8-f16-qb4w-gemm-minmax.yaml"
+                        "--output-test" "test/qd8-f16-qb4w-gemm-minmax.cc")
+                (invoke "python3" "tools/generate-gemm-test.py"
+                        "--spec" "test/qd8-f32-qb4w-gemm-minmax.yaml"
+                        "--output-test" "test/qd8-f32-qb4w-gemm-minmax.cc"))))))
       (inputs
        (list clog
              cpuinfo
diff --git a/gnu/packages/patches/xnnpack-remove-broken-tests.patch b/gnu/packages/patches/xnnpack-remove-broken-tests.patch
deleted file mode 100644
index 91b7ca9998..0000000000
--- a/gnu/packages/patches/xnnpack-remove-broken-tests.patch
+++ /dev/null
@@ -1,337 +0,0 @@ 
-These tests fail to build because we are building a shared library.
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 95df99eae..ab57d5efa 100755
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -978,16 +978,6 @@ IF(XNNPACK_BUILD_TESTS)
-     TARGET_LINK_LIBRARIES(add-nd-eager-test PRIVATE XNNPACK fp16 gtest gtest_main)
-     ADD_TEST(NAME add-nd-eager-test COMMAND add-nd-eager-test)
- 
--    ADD_EXECUTABLE(argmax-pooling-nhwc-test test/argmax-pooling-nhwc.cc)
--    TARGET_INCLUDE_DIRECTORIES(argmax-pooling-nhwc-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(argmax-pooling-nhwc-test PRIVATE XNNPACK gtest gtest_main)
--    ADD_TEST(NAME argmax-pooling-nhwc-test COMMAND argmax-pooling-nhwc-test)
--
--    ADD_EXECUTABLE(average-pooling-nhwc-test test/average-pooling-nhwc.cc)
--    TARGET_INCLUDE_DIRECTORIES(average-pooling-nhwc-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(average-pooling-nhwc-test PRIVATE XNNPACK fp16 gtest gtest_main)
--    ADD_TEST(NAME average-pooling-nhwc-test COMMAND average-pooling-nhwc-test)
--
-     ADD_EXECUTABLE(bankers-rounding-nc-test test/bankers-rounding-nc.cc)
-     TARGET_INCLUDE_DIRECTORIES(bankers-rounding-nc-test PRIVATE src test)
-     TARGET_LINK_LIBRARIES(bankers-rounding-nc-test PRIVATE XNNPACK fp16 gtest gtest_main)
-@@ -1066,11 +1056,6 @@ IF(XNNPACK_BUILD_TESTS)
-     TARGET_LINK_LIBRARIES(copy-nc-eager-test PRIVATE XNNPACK gtest gtest_main)
-     ADD_TEST(NAME copy-nc-eager-test COMMAND copy-nc-eager-test)
- 
--    ADD_EXECUTABLE(deconvolution-nhwc-test test/deconvolution-nhwc.cc)
--    TARGET_INCLUDE_DIRECTORIES(deconvolution-nhwc-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(deconvolution-nhwc-test PRIVATE XNNPACK fp16 gtest gtest_main)
--    ADD_TEST(NAME deconvolution-nhwc-test COMMAND deconvolution-nhwc-test)
--
-     ADD_EXECUTABLE(depth-to-space-nchw2nhwc-test test/depth-to-space-nchw2nhwc.cc)
-     TARGET_INCLUDE_DIRECTORIES(depth-to-space-nchw2nhwc-test PRIVATE src test)
-     TARGET_LINK_LIBRARIES(depth-to-space-nchw2nhwc-test PRIVATE XNNPACK gtest gtest_main)
-@@ -1116,11 +1101,6 @@ IF(XNNPACK_BUILD_TESTS)
-     TARGET_LINK_LIBRARIES(floor-nc-eager-test PRIVATE XNNPACK fp16 gtest gtest_main)
-     ADD_TEST(NAME floor-nc-eager-test COMMAND floor-nc-eager-test)
- 
--    ADD_EXECUTABLE(global-average-pooling-nwc-test test/global-average-pooling-nwc.cc)
--    TARGET_INCLUDE_DIRECTORIES(global-average-pooling-nwc-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(global-average-pooling-nwc-test PRIVATE XNNPACK fp16 gtest gtest_main)
--    ADD_TEST(NAME global-average-pooling-nwc-test COMMAND global-average-pooling-nwc-test)
--
-     ADD_EXECUTABLE(global-average-pooling-ncw-test test/global-average-pooling-ncw.cc)
-     TARGET_INCLUDE_DIRECTORIES(global-average-pooling-ncw-test PRIVATE src test)
-     TARGET_LINK_LIBRARIES(global-average-pooling-ncw-test PRIVATE XNNPACK fp16 gtest gtest_main)
-@@ -1146,11 +1126,6 @@ IF(XNNPACK_BUILD_TESTS)
-     TARGET_LINK_LIBRARIES(leaky-relu-nc-eager-test PRIVATE XNNPACK fp16 gtest gtest_main)
-     ADD_TEST(NAME leaky-relu-nc-eager-test COMMAND leaky-relu-nc-eager-test)
- 
--    ADD_EXECUTABLE(max-pooling-nhwc-test test/max-pooling-nhwc.cc)
--    TARGET_INCLUDE_DIRECTORIES(max-pooling-nhwc-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(max-pooling-nhwc-test PRIVATE XNNPACK fp16 gtest gtest_main)
--    ADD_TEST(NAME max-pooling-nhwc-test COMMAND max-pooling-nhwc-test)
--
-     ADD_EXECUTABLE(maximum-nd-test test/maximum-nd.cc)
-     TARGET_INCLUDE_DIRECTORIES(maximum-nd-test PRIVATE src test)
-     TARGET_LINK_LIBRARIES(maximum-nd-test PRIVATE XNNPACK fp16 gtest gtest_main)
-@@ -1191,11 +1166,6 @@ IF(XNNPACK_BUILD_TESTS)
-     TARGET_LINK_LIBRARIES(negate-nc-eager-test PRIVATE XNNPACK fp16 gtest gtest_main)
-     ADD_TEST(NAME negate-nc-eager-test COMMAND negate-nc-eager-test)
- 
--    ADD_EXECUTABLE(prelu-nc-test test/prelu-nc.cc)
--    TARGET_INCLUDE_DIRECTORIES(prelu-nc-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(prelu-nc-test PRIVATE XNNPACK fp16 gtest gtest_main)
--    ADD_TEST(NAME prelu-nc-test COMMAND prelu-nc-test)
--
-     ADD_EXECUTABLE(resize-bilinear-nhwc-test test/resize-bilinear-nhwc.cc)
-     TARGET_INCLUDE_DIRECTORIES(resize-bilinear-nhwc-test PRIVATE src test)
-     TARGET_LINK_LIBRARIES(resize-bilinear-nhwc-test PRIVATE XNNPACK fp16 gtest gtest_main)
-@@ -1312,16 +1282,6 @@ IF(XNNPACK_BUILD_TESTS)
-     TARGET_LINK_LIBRARIES(fusion-test PRIVATE XNNPACK gtest gtest_main)
-     ADD_TEST(NAME fusion-test COMMAND fusion-test)
- 
--    ADD_EXECUTABLE(memory-planner-test test/memory-planner-test.cc)
--    TARGET_INCLUDE_DIRECTORIES(memory-planner-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(memory-planner-test PRIVATE XNNPACK gtest gtest_main)
--    ADD_TEST(NAME memory-planner-test COMMAND memory-planner-test)
--
--    ADD_EXECUTABLE(subgraph-fp16-test test/subgraph-fp16.cc)
--    TARGET_INCLUDE_DIRECTORIES(subgraph-fp16-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(subgraph-fp16-test PRIVATE XNNPACK gtest gtest_main)
--    ADD_TEST(NAME subgraph-fp16-test COMMAND subgraph-fp16-test)
--
-     ADD_EXECUTABLE(subgraph-nchw-test test/subgraph-nchw.cc)
-     TARGET_INCLUDE_DIRECTORIES(subgraph-nchw-test PRIVATE src test)
-     TARGET_LINK_LIBRARIES(subgraph-nchw-test PRIVATE XNNPACK gtest gtest_main)
-@@ -1347,226 +1307,6 @@ IF(XNNPACK_BUILD_TESTS)
-     TARGET_INCLUDE_DIRECTORIES(argmax-pooling-2d-test PRIVATE src test)
-     TARGET_LINK_LIBRARIES(argmax-pooling-2d-test PRIVATE XNNPACK gtest gtest_main)
-     ADD_TEST(NAME argmax-pooling-2d-test COMMAND argmax-pooling-2d-test)
--
--    ADD_EXECUTABLE(average-pooling-2d-test test/average-pooling-2d.cc)
--    TARGET_INCLUDE_DIRECTORIES(average-pooling-2d-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(average-pooling-2d-test PRIVATE XNNPACK fp16 gtest gtest_main subgraph)
--    ADD_TEST(NAME average-pooling-2d-test COMMAND average-pooling-2d-test)
--
--    ADD_EXECUTABLE(bankers-rounding-test test/bankers-rounding.cc)
--    TARGET_INCLUDE_DIRECTORIES(bankers-rounding-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(bankers-rounding-test PRIVATE XNNPACK fp16 gtest gtest_main subgraph)
--    ADD_TEST(NAME bankers-rounding-test COMMAND bankers-rounding-test)
--
--    ADD_EXECUTABLE(ceiling-test test/ceiling.cc)
--    TARGET_INCLUDE_DIRECTORIES(ceiling-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(ceiling-test PRIVATE XNNPACK fp16 gtest gtest_main subgraph)
--    ADD_TEST(NAME ceiling-test COMMAND ceiling-test)
--
--    ADD_EXECUTABLE(clamp-test test/clamp.cc)
--    TARGET_INCLUDE_DIRECTORIES(clamp-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(clamp-test PRIVATE XNNPACK fp16 gtest gtest_main subgraph)
--    ADD_TEST(NAME clamp-test COMMAND clamp-test)
--
--    ADD_EXECUTABLE(concatenate2-test test/concatenate2.cc)
--    TARGET_INCLUDE_DIRECTORIES(concatenate2-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(concatenate2-test PRIVATE XNNPACK gtest gtest_main subgraph)
--    ADD_TEST(NAME concatenate2-test COMMAND concatenate2-test)
--
--    ADD_EXECUTABLE(concatenate3-test test/concatenate3.cc)
--    TARGET_INCLUDE_DIRECTORIES(concatenate3-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(concatenate3-test PRIVATE XNNPACK gtest gtest_main subgraph)
--    ADD_TEST(NAME concatenate3-test COMMAND concatenate3-test)
--
--    ADD_EXECUTABLE(concatenate4-test test/concatenate4.cc)
--    TARGET_INCLUDE_DIRECTORIES(concatenate4-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(concatenate4-test PRIVATE XNNPACK gtest gtest_main subgraph)
--    ADD_TEST(NAME concatenate4-test COMMAND concatenate4-test)
--
--    ADD_EXECUTABLE(convert-test test/convert.cc)
--    TARGET_INCLUDE_DIRECTORIES(convert-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(convert-test PRIVATE XNNPACK fp16 gtest gtest_main subgraph)
--    ADD_TEST(NAME convert-test COMMAND convert-test)
--
--    ADD_EXECUTABLE(convolution-2d-test test/convolution-2d.cc)
--    SET_TARGET_PROPERTIES(convolution-2d-test PROPERTIES CXX_EXTENSIONS YES)
--    TARGET_INCLUDE_DIRECTORIES(convolution-2d-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(convolution-2d-test PRIVATE XNNPACK fp16 gtest gtest_main subgraph convolution-test-helpers)
--    ADD_TEST(NAME convolution-2d-test COMMAND convolution-2d-test)
--
--    ADD_EXECUTABLE(copy-test test/copy.cc)
--    TARGET_INCLUDE_DIRECTORIES(copy-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(copy-test PRIVATE XNNPACK fp16 gtest gtest_main subgraph)
--    ADD_TEST(NAME copy-test COMMAND copy-test)
--
--    ADD_EXECUTABLE(deconvolution-2d-test test/deconvolution-2d.cc)
--    SET_TARGET_PROPERTIES(deconvolution-2d-test PROPERTIES CXX_EXTENSIONS YES)
--    TARGET_INCLUDE_DIRECTORIES(deconvolution-2d-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(deconvolution-2d-test PRIVATE XNNPACK fp16 gtest gtest_main subgraph convolution-test-helpers)
--    ADD_TEST(NAME deconvolution-2d-test COMMAND deconvolution-2d-test)
--
--    ADD_EXECUTABLE(depth-to-space-test test/depth-to-space.cc)
--    TARGET_INCLUDE_DIRECTORIES(depth-to-space-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(depth-to-space-test PRIVATE XNNPACK fp16 gtest gtest_main subgraph)
--    ADD_TEST(NAME depth-to-space-test COMMAND depth-to-space-test)
--
--    ADD_EXECUTABLE(depthwise-convolution-2d-test test/depthwise-convolution-2d.cc)
--    SET_TARGET_PROPERTIES(depthwise-convolution-2d-test PROPERTIES CXX_EXTENSIONS YES)
--    TARGET_INCLUDE_DIRECTORIES(depthwise-convolution-2d-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(depthwise-convolution-2d-test PRIVATE XNNPACK fp16 gtest gtest_main subgraph convolution-test-helpers)
--    ADD_TEST(NAME depthwise-convolution-2d-test COMMAND depthwise-convolution-2d-test)
--
--    ADD_EXECUTABLE(divide2-test test/divide2.cc)
--    TARGET_INCLUDE_DIRECTORIES(divide2-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(divide2-test PRIVATE XNNPACK fp16 gtest gtest_main subgraph)
--    ADD_TEST(NAME divide2-test COMMAND divide2-test)
--
--    ADD_EXECUTABLE(elu-test test/elu.cc)
--    TARGET_INCLUDE_DIRECTORIES(elu-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(elu-test PRIVATE XNNPACK fp16 gtest gtest_main subgraph)
--    ADD_TEST(NAME elu-test COMMAND elu-test)
--
--    ADD_EXECUTABLE(even-split2-test test/even-split2.cc)
--    TARGET_INCLUDE_DIRECTORIES(even-split2-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(even-split2-test PRIVATE XNNPACK fp16 gtest gtest_main subgraph)
--    ADD_TEST(NAME even-split2-test COMMAND even-split2-test)
--
--    ADD_EXECUTABLE(even-split3-test test/even-split3.cc)
--    TARGET_INCLUDE_DIRECTORIES(even-split3-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(even-split3-test PRIVATE XNNPACK fp16 gtest gtest_main subgraph)
--    ADD_TEST(NAME even-split3-test COMMAND even-split3-test)
--
--    ADD_EXECUTABLE(even-split4-test test/even-split4.cc)
--    TARGET_INCLUDE_DIRECTORIES(even-split4-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(even-split4-test PRIVATE XNNPACK fp16 gtest gtest_main subgraph)
--    ADD_TEST(NAME even-split4-test COMMAND even-split4-test)
--
--    ADD_EXECUTABLE(floor-test test/floor.cc)
--    TARGET_INCLUDE_DIRECTORIES(floor-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(floor-test PRIVATE XNNPACK fp16 gtest gtest_main subgraph)
--    ADD_TEST(NAME floor-test COMMAND floor-test)
--
--    ADD_EXECUTABLE(fully-connected-test test/fully-connected.cc)
--    TARGET_INCLUDE_DIRECTORIES(fully-connected-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(fully-connected-test PRIVATE XNNPACK fp16 gtest gtest_main subgraph)
--    ADD_TEST(NAME fully-connected-test COMMAND fully-connected-test)
--
--    ADD_EXECUTABLE(global-average-pooling-1d-test test/global-average-pooling-1d.cc)
--    TARGET_INCLUDE_DIRECTORIES(global-average-pooling-1d-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(global-average-pooling-1d-test PRIVATE XNNPACK fp16 gtest gtest_main subgraph)
--    ADD_TEST(NAME global-average-pooling-1d-test COMMAND global-average-pooling-1d-test)
--
--    ADD_EXECUTABLE(global-average-pooling-2d-test test/global-average-pooling-2d.cc)
--    TARGET_INCLUDE_DIRECTORIES(global-average-pooling-2d-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(global-average-pooling-2d-test PRIVATE XNNPACK fp16 gtest gtest_main subgraph)
--    ADD_TEST(NAME global-average-pooling-2d-test COMMAND global-average-pooling-2d-test)
--
--    ADD_EXECUTABLE(hardswish-test test/hardswish.cc)
--    TARGET_INCLUDE_DIRECTORIES(hardswish-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(hardswish-test PRIVATE XNNPACK fp16 gtest gtest_main subgraph)
--    ADD_TEST(NAME hardswish-test COMMAND hardswish-test)
--
--    ADD_EXECUTABLE(leaky-relu-test test/leaky-relu.cc)
--    TARGET_INCLUDE_DIRECTORIES(leaky-relu-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(leaky-relu-test PRIVATE XNNPACK fp16 gtest gtest_main subgraph)
--    ADD_TEST(NAME leaky-relu-test COMMAND leaky-relu-test)
--
--    ADD_EXECUTABLE(max-pooling-2d-test test/max-pooling-2d.cc)
--    TARGET_INCLUDE_DIRECTORIES(max-pooling-2d-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(max-pooling-2d-test PRIVATE XNNPACK fp16 gtest gtest_main subgraph)
--    ADD_TEST(NAME max-pooling-2d-test COMMAND max-pooling-2d-test)
--
--    ADD_EXECUTABLE(maximum2-test test/maximum2.cc)
--    TARGET_INCLUDE_DIRECTORIES(maximum2-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(maximum2-test PRIVATE XNNPACK fp16 gtest gtest_main subgraph)
--    ADD_TEST(NAME maximum2-test COMMAND maximum2-test)
--
--    ADD_EXECUTABLE(minimum2-test test/minimum2.cc)
--    TARGET_INCLUDE_DIRECTORIES(minimum2-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(minimum2-test PRIVATE XNNPACK fp16 gtest gtest_main subgraph)
--    ADD_TEST(NAME minimum2-test COMMAND minimum2-test)
--
--    ADD_EXECUTABLE(multiply2-test test/multiply2.cc)
--    TARGET_INCLUDE_DIRECTORIES(multiply2-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(multiply2-test PRIVATE XNNPACK fp16 gtest gtest_main subgraph)
--    ADD_TEST(NAME multiply2-test COMMAND multiply2-test)
--
--    ADD_EXECUTABLE(negate-test test/negate.cc)
--    TARGET_INCLUDE_DIRECTORIES(negate-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(negate-test PRIVATE XNNPACK fp16 gtest gtest_main subgraph)
--    ADD_TEST(NAME negate-test COMMAND negate-test)
--
--    ADD_EXECUTABLE(prelu-test test/prelu.cc)
--    TARGET_INCLUDE_DIRECTORIES(prelu-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(prelu-test PRIVATE XNNPACK fp16 gtest gtest_main subgraph)
--    ADD_TEST(NAME prelu-test COMMAND prelu-test)
--
--    ADD_EXECUTABLE(sigmoid-test test/sigmoid.cc)
--    SET_TARGET_PROPERTIES(sigmoid-test PROPERTIES CXX_EXTENSIONS YES)
--    TARGET_INCLUDE_DIRECTORIES(sigmoid-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(sigmoid-test PRIVATE XNNPACK fp16 gtest gtest_main subgraph)
--    ADD_TEST(NAME sigmoid-test COMMAND sigmoid-test)
--
--    ADD_EXECUTABLE(static-slice-test test/static-slice.cc)
--    SET_TARGET_PROPERTIES(static-slice-test PROPERTIES CXX_EXTENSIONS YES)
--    TARGET_INCLUDE_DIRECTORIES(static-slice-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(static-slice-test PRIVATE XNNPACK fp16 gmock gtest gtest_main subgraph)
--    ADD_TEST(NAME static-slice-test COMMAND static-slice-test)
--
--    ADD_EXECUTABLE(softmax-test test/softmax.cc)
--    TARGET_INCLUDE_DIRECTORIES(softmax-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(softmax-test PRIVATE XNNPACK fp16 gtest gtest_main subgraph)
--    ADD_TEST(NAME softmax-test COMMAND softmax-test)
--
--    ADD_EXECUTABLE(space-to-depth-2d-test test/space-to-depth-2d.cc)
--    TARGET_INCLUDE_DIRECTORIES(space-to-depth-2d-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(space-to-depth-2d-test PRIVATE XNNPACK fp16 gtest gtest_main subgraph)
--    ADD_TEST(NAME space-to-depth-2d-test COMMAND space-to-depth-2d-test)
--
--    ADD_EXECUTABLE(square-test test/square.cc)
--    TARGET_INCLUDE_DIRECTORIES(square-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(square-test PRIVATE XNNPACK fp16 gtest gtest_main subgraph)
--    ADD_TEST(NAME square-test COMMAND square-test)
--
--    ADD_EXECUTABLE(square-root-test test/square.cc)
--    TARGET_INCLUDE_DIRECTORIES(square-root-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(square-root-test PRIVATE XNNPACK fp16 gtest gtest_main subgraph)
--    ADD_TEST(NAME square-root-test COMMAND square-root-test)
--
--    ADD_EXECUTABLE(squared-difference-test test/squared-difference.cc)
--    TARGET_INCLUDE_DIRECTORIES(squared-difference-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(squared-difference-test PRIVATE XNNPACK fp16 gtest gtest_main subgraph)
--    ADD_TEST(NAME squared-difference-test COMMAND squared-difference-test)
--
--    ADD_EXECUTABLE(static-constant-pad-test test/static-constant-pad.cc)
--    TARGET_INCLUDE_DIRECTORIES(static-constant-pad-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(static-constant-pad-test PRIVATE XNNPACK fp16 gtest gtest_main subgraph)
--    ADD_TEST(NAME static-constant-pad-test COMMAND static-constant-pad-test)
--
--    ADD_EXECUTABLE(static-reshape-test test/static-reshape.cc)
--    TARGET_INCLUDE_DIRECTORIES(static-reshape-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(static-reshape-test PRIVATE XNNPACK fp16 gtest gtest_main subgraph)
--    ADD_TEST(NAME static-reshape-test COMMAND static-reshape-test)
--
--    ADD_EXECUTABLE(static-resize-bilinear-2d-test test/static-resize-bilinear-2d.cc)
--    TARGET_INCLUDE_DIRECTORIES(static-resize-bilinear-2d-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(static-resize-bilinear-2d-test PRIVATE XNNPACK fp16 gtest gtest_main subgraph)
--    ADD_TEST(NAME static-resize-bilinear-2d-test COMMAND static-resize-bilinear-2d-test)
--
--    ADD_EXECUTABLE(static-transpose-test test/static-transpose.cc)
--    TARGET_INCLUDE_DIRECTORIES(static-transpose-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(static-transpose-test PRIVATE XNNPACK fp16 gtest gtest_main subgraph)
--    ADD_TEST(NAME static-transpose-test COMMAND static-transpose-test)
--
--    ADD_EXECUTABLE(subtract2-test test/subtract2.cc)
--    TARGET_INCLUDE_DIRECTORIES(subtract2-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(subtract2-test PRIVATE XNNPACK fp16 gtest gtest_main subgraph)
--    ADD_TEST(NAME subtract2-test COMMAND subtract2-test)
--
--    ADD_EXECUTABLE(unpooling-2d-test test/unpooling-2d.cc)
--    TARGET_INCLUDE_DIRECTORIES(unpooling-2d-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(unpooling-2d-test PRIVATE XNNPACK fp16 gtest gtest_main subgraph)
--    ADD_TEST(NAME unpooling-2d-test COMMAND unpooling-2d-test)
-   ENDIF()
- 
-   # ---[ Normalization unit tests
-@@ -2834,21 +2574,7 @@ IF(XNNPACK_BUILD_TESTS)
-     ADD_EXECUTABLE(microkernel-utils-test test/microkernel-utils.cc)
-     TARGET_INCLUDE_DIRECTORIES(microkernel-utils-test PRIVATE include src)
-     TARGET_LINK_LIBRARIES(microkernel-utils-test PRIVATE microkernel-utils gtest gtest_main pthreadpool)
--
--    ADD_EXECUTABLE(operator-utils-test test/operator-utils.cc)
--    TARGET_INCLUDE_DIRECTORIES(operator-utils-test PRIVATE include src)
--    TARGET_LINK_LIBRARIES(operator-utils-test PRIVATE XNNPACK gtest gtest_main pthreadpool)
-   ENDIF()
--
--  ADD_EXECUTABLE(packing-test test/packing.cc)
--  TARGET_INCLUDE_DIRECTORIES(packing-test PRIVATE include src)
--  TARGET_LINK_LIBRARIES(packing-test PRIVATE fp16 gtest gtest_main pthreadpool)
--  TARGET_LINK_LIBRARIES(packing-test PRIVATE XNNPACK microkernel-utils operator-utils packing)
--
--  ADD_EXECUTABLE(indirection-test test/indirection.cc)
--  TARGET_INCLUDE_DIRECTORIES(indirection-test PRIVATE include src)
--  TARGET_LINK_LIBRARIES(indirection-test PRIVATE gtest gtest_main pthreadpool)
--  TARGET_LINK_LIBRARIES(indirection-test PRIVATE XNNPACK indirection)
- ENDIF()
- 
- # ---[ XNNPACK microbenchmarks
diff --git a/gnu/packages/patches/xnnpack-system-libraries.patch b/gnu/packages/patches/xnnpack-system-libraries.patch
deleted file mode 100644
index a711aa0d6c..0000000000
--- a/gnu/packages/patches/xnnpack-system-libraries.patch
+++ /dev/null
@@ -1,2660 +0,0 @@ 
-This patch allows the build process to use the provided dependencies instead
-of adding their source as CMake sub-directories (in which case "make install"
-would install googletest's and googlebenchmark's libraries and headers).
-
-diff a/CMakeLists.txt b/CMakeLists.txt
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt	2023-12-27 13:29:04.608138355 +0100
-@@ -850,25 +850,8 @@
-     SET_PROPERTY(TARGET pthreadpool PROPERTY IMPORTED_IMPLIB "${PTHREADPOOL_LIBRARY}")
-   ENDIF()
- ENDIF()
--TARGET_LINK_LIBRARIES(microkernels-all PRIVATE pthreadpool)
--TARGET_LINK_LIBRARIES(microkernels-prod PRIVATE pthreadpool)
--TARGET_LINK_LIBRARIES(hardware-config PRIVATE pthreadpool)
--TARGET_LINK_LIBRARIES(indirection PRIVATE pthreadpool)
--TARGET_LINK_LIBRARIES(jit PRIVATE pthreadpool)
--TARGET_LINK_LIBRARIES(logging PRIVATE pthreadpool)
--TARGET_LINK_LIBRARIES(microparams-init PRIVATE pthreadpool)
--TARGET_LINK_LIBRARIES(normalization PRIVATE pthreadpool)
--TARGET_LINK_LIBRARIES(packing PRIVATE pthreadpool)
- IF(XNNPACK_BUILD_LIBRARY)
-   TARGET_LINK_LIBRARIES(XNNPACK PUBLIC pthreadpool)
--  TARGET_LINK_LIBRARIES(allocator PRIVATE pthreadpool)
--  TARGET_LINK_LIBRARIES(cache PRIVATE memory pthreadpool)
--  TARGET_LINK_LIBRARIES(subgraph PRIVATE pthreadpool)
--  TARGET_LINK_LIBRARIES(operators PRIVATE pthreadpool)
--  TARGET_LINK_LIBRARIES(operator-run PRIVATE pthreadpool)
--  TARGET_LINK_LIBRARIES(operator-utils PRIVATE pthreadpool)
--  TARGET_LINK_LIBRARIES(mutex PRIVATE pthreadpool)
--  TARGET_LINK_LIBRARIES(memory PRIVATE pthreadpool)
-   TARGET_LINK_LIBRARIES(post-operation PUBLIC pthreadpool allocator)
- ENDIF()
- 
-@@ -889,12 +872,6 @@
-     SET_PROPERTY(TARGET fxdiv PROPERTY LINKER_LANGUAGE C)
-   ENDIF()
- ENDIF()
--TARGET_LINK_LIBRARIES(microkernels-all PRIVATE fxdiv)
--TARGET_LINK_LIBRARIES(microkernels-prod PRIVATE fxdiv)
--TARGET_LINK_LIBRARIES(indirection PRIVATE fxdiv)
--IF(XNNPACK_BUILD_LIBRARY)
--  TARGET_LINK_LIBRARIES(XNNPACK PRIVATE fxdiv)
--ENDIF()
- 
- # ---[ Configure FP16
- IF(NOT TARGET fp16)
-@@ -913,17 +890,7 @@
-     SET_PROPERTY(TARGET fp16 PROPERTY LINKER_LANGUAGE C)
-   ENDIF()
- ENDIF()
--TARGET_LINK_LIBRARIES(microkernels-all PRIVATE fp16)
--TARGET_LINK_LIBRARIES(microkernels-prod PRIVATE fp16)
--TARGET_LINK_LIBRARIES(microparams-init PRIVATE fp16)
--TARGET_LINK_LIBRARIES(packing PRIVATE fp16)
--TARGET_LINK_LIBRARIES(indirection PRIVATE fp16)
- IF(XNNPACK_BUILD_LIBRARY)
--  TARGET_LINK_LIBRARIES(subgraph PRIVATE fp16)
--  TARGET_LINK_LIBRARIES(operators PRIVATE fp16)
--  TARGET_LINK_LIBRARIES(operator-run PRIVATE fp16)
--
--  TARGET_LINK_LIBRARIES(XNNPACK PRIVATE fp16)
-   INSTALL(TARGETS XNNPACK
-       LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
-       ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
-@@ -943,7 +910,7 @@
-   # Helper libraries
-   ADD_LIBRARY(gemm-microkernel-tester STATIC test/gemm-microkernel-tester.cc)
-   TARGET_INCLUDE_DIRECTORIES(gemm-microkernel-tester PRIVATE . include src test)
--  TARGET_LINK_LIBRARIES(gemm-microkernel-tester PRIVATE fp16 pthreadpool gtest)
-+  TARGET_LINK_LIBRARIES(gemm-microkernel-tester PRIVATE gtest)
-   TARGET_LINK_LIBRARIES(gemm-microkernel-tester PRIVATE jit packing)
-   IF(XNNPACK_BUILD_LIBRARY)
-     TARGET_LINK_LIBRARIES(gemm-microkernel-tester PRIVATE XNNPACK post-operation)
-@@ -960,22 +927,22 @@
-     # ---[ Build operator-level unit tests
-     ADD_EXECUTABLE(abs-nc-test test/abs-nc.cc)
-     TARGET_INCLUDE_DIRECTORIES(abs-nc-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(abs-nc-test PRIVATE XNNPACK fp16 gtest gtest_main)
-+    TARGET_LINK_LIBRARIES(abs-nc-test PRIVATE XNNPACK gtest gtest_main)
-     ADD_TEST(NAME abs-nc-test COMMAND abs-nc-test)
- 
-     ADD_EXECUTABLE(abs-nc-eager-test test/abs-nc-eager.cc)
-     TARGET_INCLUDE_DIRECTORIES(abs-nc-eager-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(abs-nc-eager-test PRIVATE XNNPACK fp16 gtest gtest_main)
-+    TARGET_LINK_LIBRARIES(abs-nc-eager-test PRIVATE XNNPACK gtest gtest_main)
-     ADD_TEST(NAME abs-nc-eager-test COMMAND abs-nc-eager-test)
- 
-     ADD_EXECUTABLE(add-nd-test test/add-nd.cc)
-     TARGET_INCLUDE_DIRECTORIES(add-nd-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(add-nd-test PRIVATE XNNPACK fp16 gtest gtest_main)
-+    TARGET_LINK_LIBRARIES(add-nd-test PRIVATE XNNPACK gtest gtest_main)
-     ADD_TEST(NAME add-nd-test COMMAND add-nd-test)
- 
-     ADD_EXECUTABLE(add-nd-eager-test test/add-nd-eager.cc)
-     TARGET_INCLUDE_DIRECTORIES(add-nd-eager-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(add-nd-eager-test PRIVATE XNNPACK fp16 gtest gtest_main)
-+    TARGET_LINK_LIBRARIES(add-nd-eager-test PRIVATE XNNPACK gtest gtest_main)
-     ADD_TEST(NAME add-nd-eager-test COMMAND add-nd-eager-test)
- 
-     ADD_EXECUTABLE(argmax-pooling-nhwc-test test/argmax-pooling-nhwc.cc)
-@@ -985,27 +952,27 @@
- 
-     ADD_EXECUTABLE(average-pooling-nhwc-test test/average-pooling-nhwc.cc)
-     TARGET_INCLUDE_DIRECTORIES(average-pooling-nhwc-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(average-pooling-nhwc-test PRIVATE XNNPACK fp16 gtest gtest_main)
-+    TARGET_LINK_LIBRARIES(average-pooling-nhwc-test PRIVATE XNNPACK gtest gtest_main)
-     ADD_TEST(NAME average-pooling-nhwc-test COMMAND average-pooling-nhwc-test)
- 
-     ADD_EXECUTABLE(bankers-rounding-nc-test test/bankers-rounding-nc.cc)
-     TARGET_INCLUDE_DIRECTORIES(bankers-rounding-nc-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(bankers-rounding-nc-test PRIVATE XNNPACK fp16 gtest gtest_main)
-+    TARGET_LINK_LIBRARIES(bankers-rounding-nc-test PRIVATE XNNPACK gtest gtest_main)
-     ADD_TEST(NAME bankers-rounding-nc-test COMMAND bankers-rounding-nc-test)
- 
-     ADD_EXECUTABLE(bankers-rounding-nc-eager-test test/bankers-rounding-nc-eager.cc)
-     TARGET_INCLUDE_DIRECTORIES(bankers-rounding-nc-eager-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(bankers-rounding-nc-eager-test PRIVATE XNNPACK fp16 gtest gtest_main)
-+    TARGET_LINK_LIBRARIES(bankers-rounding-nc-eager-test PRIVATE XNNPACK gtest gtest_main)
-     ADD_TEST(NAME bankers-rounding-nc-eager-test COMMAND bankers-rounding-nc-eager-test)
- 
-     ADD_EXECUTABLE(ceiling-nc-test test/ceiling-nc.cc)
-     TARGET_INCLUDE_DIRECTORIES(ceiling-nc-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(ceiling-nc-test PRIVATE XNNPACK fp16 gtest gtest_main)
-+    TARGET_LINK_LIBRARIES(ceiling-nc-test PRIVATE XNNPACK gtest gtest_main)
-     ADD_TEST(NAME ceiling-nc-test COMMAND ceiling-nc-test)
- 
-     ADD_EXECUTABLE(ceiling-nc-eager-test test/ceiling-nc-eager.cc)
-     TARGET_INCLUDE_DIRECTORIES(ceiling-nc-eager-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(ceiling-nc-eager-test PRIVATE XNNPACK fp16 gtest gtest_main)
-+    TARGET_LINK_LIBRARIES(ceiling-nc-eager-test PRIVATE XNNPACK gtest gtest_main)
-     ADD_TEST(NAME ceiling-nc-eager-test COMMAND ceiling-nc-eager-test)
- 
-     ADD_EXECUTABLE(channel-shuffle-nc-test test/channel-shuffle-nc.cc)
-@@ -1015,12 +982,12 @@
- 
-     ADD_EXECUTABLE(clamp-nc-test test/clamp-nc.cc)
-     TARGET_INCLUDE_DIRECTORIES(clamp-nc-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(clamp-nc-test PRIVATE XNNPACK fp16 gtest gtest_main)
-+    TARGET_LINK_LIBRARIES(clamp-nc-test PRIVATE XNNPACK gtest gtest_main)
-     ADD_TEST(NAME clamp-nc-test COMMAND clamp-nc-test)
- 
-     ADD_EXECUTABLE(clamp-nc-eager-test test/clamp-nc-eager.cc)
-     TARGET_INCLUDE_DIRECTORIES(clamp-nc-eager-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(clamp-nc-eager-test PRIVATE XNNPACK fp16 gtest gtest_main)
-+    TARGET_LINK_LIBRARIES(clamp-nc-eager-test PRIVATE XNNPACK gtest gtest_main)
-     ADD_TEST(NAME clamp-nc-eager-test COMMAND clamp-nc-eager-test)
- 
-     ADD_EXECUTABLE(constant-pad-nd-test test/constant-pad-nd.cc)
-@@ -1035,25 +1002,25 @@
- 
-     ADD_EXECUTABLE(convert-nc-test test/convert-nc.cc)
-     TARGET_INCLUDE_DIRECTORIES(convert-nc-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(convert-nc-test PRIVATE XNNPACK fp16 gtest gtest_main)
-+    TARGET_LINK_LIBRARIES(convert-nc-test PRIVATE XNNPACK gtest gtest_main)
-     ADD_TEST(NAME convert-nc-test COMMAND convert-nc-test)
- 
-     ADD_EXECUTABLE(convert-nc-eager-test test/convert-nc-eager.cc)
-     TARGET_INCLUDE_DIRECTORIES(convert-nc-eager-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(convert-nc-eager-test PRIVATE XNNPACK fp16 gtest gtest_main)
-+    TARGET_LINK_LIBRARIES(convert-nc-eager-test PRIVATE XNNPACK gtest gtest_main)
-     ADD_TEST(NAME convert-nc-eager-test COMMAND convert-nc-eager-test)
- 
-     ADD_EXECUTABLE(convolution-nhwc-test test/convolution-nhwc.cc)
-     SET_TARGET_PROPERTIES(convolution-nhwc-test PROPERTIES CXX_EXTENSIONS YES)
-     TARGET_INCLUDE_DIRECTORIES(convolution-nhwc-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(convolution-nhwc-test PRIVATE XNNPACK fp16 gtest gtest_main)
-+    TARGET_LINK_LIBRARIES(convolution-nhwc-test PRIVATE XNNPACK gtest gtest_main)
-     TARGET_LINK_LIBRARIES(convolution-nhwc-test PRIVATE convolution-test-helpers)
-     ADD_TEST(NAME convolution-nhwc-test COMMAND convolution-nhwc-test)
- 
-     ADD_EXECUTABLE(convolution-nchw-test test/convolution-nchw.cc)
-     SET_TARGET_PROPERTIES(convolution-nchw-test PROPERTIES CXX_EXTENSIONS YES)
-     TARGET_INCLUDE_DIRECTORIES(convolution-nchw-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(convolution-nchw-test PRIVATE XNNPACK fp16 gtest gtest_main)
-+    TARGET_LINK_LIBRARIES(convolution-nchw-test PRIVATE XNNPACK gtest gtest_main)
-     ADD_TEST(NAME convolution-nchw-test COMMAND convolution-nchw-test)
- 
-     ADD_EXECUTABLE(copy-nc-test test/copy-nc.cc)
-@@ -1068,7 +1035,7 @@
- 
-     ADD_EXECUTABLE(deconvolution-nhwc-test test/deconvolution-nhwc.cc)
-     TARGET_INCLUDE_DIRECTORIES(deconvolution-nhwc-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(deconvolution-nhwc-test PRIVATE XNNPACK fp16 gtest gtest_main)
-+    TARGET_LINK_LIBRARIES(deconvolution-nhwc-test PRIVATE XNNPACK gtest gtest_main)
-     ADD_TEST(NAME deconvolution-nhwc-test COMMAND deconvolution-nhwc-test)
- 
-     ADD_EXECUTABLE(depth-to-space-nchw2nhwc-test test/depth-to-space-nchw2nhwc.cc)
-@@ -1083,197 +1050,197 @@
- 
-     ADD_EXECUTABLE(divide-nd-test test/divide-nd.cc)
-     TARGET_INCLUDE_DIRECTORIES(divide-nd-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(divide-nd-test PRIVATE XNNPACK fp16 gtest gtest_main)
-+    TARGET_LINK_LIBRARIES(divide-nd-test PRIVATE XNNPACK gtest gtest_main)
-     ADD_TEST(NAME divide-nd-test COMMAND divide-nd-test)
- 
-     ADD_EXECUTABLE(divide-nd-eager-test test/divide-nd-eager.cc)
-     TARGET_INCLUDE_DIRECTORIES(divide-nd-eager-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(divide-nd-eager-test PRIVATE XNNPACK fp16 gtest gtest_main)
-+    TARGET_LINK_LIBRARIES(divide-nd-eager-test PRIVATE XNNPACK gtest gtest_main)
-     ADD_TEST(NAME divide-nd-eager-test COMMAND divide-nd-eager-test)
- 
-     ADD_EXECUTABLE(elu-nc-test test/elu-nc.cc)
-     TARGET_INCLUDE_DIRECTORIES(elu-nc-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(elu-nc-test PRIVATE XNNPACK fp16 gtest gtest_main)
-+    TARGET_LINK_LIBRARIES(elu-nc-test PRIVATE XNNPACK gtest gtest_main)
-     ADD_TEST(NAME elu-nc-test COMMAND elu-nc-test)
- 
-     ADD_EXECUTABLE(elu-nc-eager-test test/elu-nc-eager.cc)
-     TARGET_INCLUDE_DIRECTORIES(elu-nc-eager-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(elu-nc-eager-test PRIVATE XNNPACK fp16 gtest gtest_main)
-+    TARGET_LINK_LIBRARIES(elu-nc-eager-test PRIVATE XNNPACK gtest gtest_main)
-     ADD_TEST(NAME elu-nc-eager-test COMMAND elu-nc-eager-test)
- 
-     ADD_EXECUTABLE(fully-connected-nc-test test/fully-connected-nc.cc)
-     TARGET_INCLUDE_DIRECTORIES(fully-connected-nc-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(fully-connected-nc-test PRIVATE XNNPACK fp16 gtest gtest_main)
-+    TARGET_LINK_LIBRARIES(fully-connected-nc-test PRIVATE XNNPACK gtest gtest_main)
-     ADD_TEST(NAME fully-connected-nc-test COMMAND fully-connected-nc-test)
- 
-     ADD_EXECUTABLE(floor-nc-test test/floor-nc.cc)
-     TARGET_INCLUDE_DIRECTORIES(floor-nc-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(floor-nc-test PRIVATE XNNPACK fp16 gtest gtest_main)
-+    TARGET_LINK_LIBRARIES(floor-nc-test PRIVATE XNNPACK gtest gtest_main)
-     ADD_TEST(NAME floor-nc-test COMMAND floor-nc-test)
- 
-     ADD_EXECUTABLE(floor-nc-eager-test test/floor-nc-eager.cc)
-     TARGET_INCLUDE_DIRECTORIES(floor-nc-eager-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(floor-nc-eager-test PRIVATE XNNPACK fp16 gtest gtest_main)
-+    TARGET_LINK_LIBRARIES(floor-nc-eager-test PRIVATE XNNPACK gtest gtest_main)
-     ADD_TEST(NAME floor-nc-eager-test COMMAND floor-nc-eager-test)
- 
-     ADD_EXECUTABLE(global-average-pooling-nwc-test test/global-average-pooling-nwc.cc)
-     TARGET_INCLUDE_DIRECTORIES(global-average-pooling-nwc-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(global-average-pooling-nwc-test PRIVATE XNNPACK fp16 gtest gtest_main)
-+    TARGET_LINK_LIBRARIES(global-average-pooling-nwc-test PRIVATE XNNPACK gtest gtest_main)
-     ADD_TEST(NAME global-average-pooling-nwc-test COMMAND global-average-pooling-nwc-test)
- 
-     ADD_EXECUTABLE(global-average-pooling-ncw-test test/global-average-pooling-ncw.cc)
-     TARGET_INCLUDE_DIRECTORIES(global-average-pooling-ncw-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(global-average-pooling-ncw-test PRIVATE XNNPACK fp16 gtest gtest_main)
-+    TARGET_LINK_LIBRARIES(global-average-pooling-ncw-test PRIVATE XNNPACK gtest gtest_main)
-     ADD_TEST(NAME global-average-pooling-ncw-test COMMAND global-average-pooling-ncw-test)
- 
-     ADD_EXECUTABLE(hardswish-nc-test test/hardswish-nc.cc)
-     TARGET_INCLUDE_DIRECTORIES(hardswish-nc-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(hardswish-nc-test PRIVATE XNNPACK fp16 gtest gtest_main)
-+    TARGET_LINK_LIBRARIES(hardswish-nc-test PRIVATE XNNPACK gtest gtest_main)
-     ADD_TEST(NAME hardswish-nc-test COMMAND hardswish-nc-test)
- 
-     ADD_EXECUTABLE(hardswish-nc-eager-test test/hardswish-nc-eager.cc)
-     TARGET_INCLUDE_DIRECTORIES(hardswish-nc-eager-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(hardswish-nc-eager-test PRIVATE XNNPACK fp16 gtest gtest_main)
-+    TARGET_LINK_LIBRARIES(hardswish-nc-eager-test PRIVATE XNNPACK gtest gtest_main)
-     ADD_TEST(NAME hardswish-nc-eager-test COMMAND hardswish-nc-eager-test)
- 
-     ADD_EXECUTABLE(leaky-relu-nc-test test/leaky-relu-nc.cc)
-     TARGET_INCLUDE_DIRECTORIES(leaky-relu-nc-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(leaky-relu-nc-test PRIVATE XNNPACK fp16 gtest gtest_main)
-+    TARGET_LINK_LIBRARIES(leaky-relu-nc-test PRIVATE XNNPACK gtest gtest_main)
-     ADD_TEST(NAME leaky-relu-nc-test COMMAND leaky-relu-nc-test)
- 
-     ADD_EXECUTABLE(leaky-relu-nc-eager-test test/leaky-relu-nc-eager.cc)
-     TARGET_INCLUDE_DIRECTORIES(leaky-relu-nc-eager-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(leaky-relu-nc-eager-test PRIVATE XNNPACK fp16 gtest gtest_main)
-+    TARGET_LINK_LIBRARIES(leaky-relu-nc-eager-test PRIVATE XNNPACK gtest gtest_main)
-     ADD_TEST(NAME leaky-relu-nc-eager-test COMMAND leaky-relu-nc-eager-test)
- 
-     ADD_EXECUTABLE(max-pooling-nhwc-test test/max-pooling-nhwc.cc)
-     TARGET_INCLUDE_DIRECTORIES(max-pooling-nhwc-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(max-pooling-nhwc-test PRIVATE XNNPACK fp16 gtest gtest_main)
-+    TARGET_LINK_LIBRARIES(max-pooling-nhwc-test PRIVATE XNNPACK gtest gtest_main)
-     ADD_TEST(NAME max-pooling-nhwc-test COMMAND max-pooling-nhwc-test)
- 
-     ADD_EXECUTABLE(maximum-nd-test test/maximum-nd.cc)
-     TARGET_INCLUDE_DIRECTORIES(maximum-nd-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(maximum-nd-test PRIVATE XNNPACK fp16 gtest gtest_main)
-+    TARGET_LINK_LIBRARIES(maximum-nd-test PRIVATE XNNPACK gtest gtest_main)
-     ADD_TEST(NAME maximum-nd-test COMMAND maximum-nd-test)
- 
-     ADD_EXECUTABLE(maximum-nd-eager-test test/maximum-nd-eager.cc)
-     TARGET_INCLUDE_DIRECTORIES(maximum-nd-eager-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(maximum-nd-eager-test PRIVATE XNNPACK fp16 gtest gtest_main)
-+    TARGET_LINK_LIBRARIES(maximum-nd-eager-test PRIVATE XNNPACK gtest gtest_main)
-     ADD_TEST(NAME maximum-nd-eager-test COMMAND maximum-nd-eager-test)
- 
-     ADD_EXECUTABLE(minimum-nd-test test/minimum-nd.cc)
-     TARGET_INCLUDE_DIRECTORIES(minimum-nd-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(minimum-nd-test PRIVATE XNNPACK fp16 gtest gtest_main)
-+    TARGET_LINK_LIBRARIES(minimum-nd-test PRIVATE XNNPACK gtest gtest_main)
-     ADD_TEST(NAME minimum-nd-test COMMAND minimum-nd-test)
- 
-     ADD_EXECUTABLE(minimum-nd-eager-test test/minimum-nd-eager.cc)
-     TARGET_INCLUDE_DIRECTORIES(minimum-nd-eager-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(minimum-nd-eager-test PRIVATE XNNPACK fp16 gtest gtest_main)
-+    TARGET_LINK_LIBRARIES(minimum-nd-eager-test PRIVATE XNNPACK gtest gtest_main)
-     ADD_TEST(NAME minimum-nd-eager-test COMMAND minimum-nd-eager-test)
- 
-     ADD_EXECUTABLE(multiply-nd-test test/multiply-nd.cc)
-     TARGET_INCLUDE_DIRECTORIES(multiply-nd-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(multiply-nd-test PRIVATE XNNPACK fp16 gtest gtest_main)
-+    TARGET_LINK_LIBRARIES(multiply-nd-test PRIVATE XNNPACK gtest gtest_main)
-     ADD_TEST(NAME multiply-nd-test COMMAND multiply-nd-test)
- 
-     ADD_EXECUTABLE(multiply-nd-eager-test test/multiply-nd-eager.cc)
-     TARGET_INCLUDE_DIRECTORIES(multiply-nd-eager-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(multiply-nd-eager-test PRIVATE XNNPACK fp16 gtest gtest_main)
-+    TARGET_LINK_LIBRARIES(multiply-nd-eager-test PRIVATE XNNPACK gtest gtest_main)
-     ADD_TEST(NAME multiply-nd-eager-test COMMAND multiply-nd-eager-test)
- 
-     ADD_EXECUTABLE(negate-nc-test test/negate-nc.cc)
-     TARGET_INCLUDE_DIRECTORIES(negate-nc-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(negate-nc-test PRIVATE XNNPACK fp16 gtest gtest_main)
-+    TARGET_LINK_LIBRARIES(negate-nc-test PRIVATE XNNPACK gtest gtest_main)
-     ADD_TEST(NAME negate-nc-test COMMAND negate-nc-test)
- 
-     ADD_EXECUTABLE(negate-nc-eager-test test/negate-nc-eager.cc)
-     TARGET_INCLUDE_DIRECTORIES(negate-nc-eager-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(negate-nc-eager-test PRIVATE XNNPACK fp16 gtest gtest_main)
-+    TARGET_LINK_LIBRARIES(negate-nc-eager-test PRIVATE XNNPACK gtest gtest_main)
-     ADD_TEST(NAME negate-nc-eager-test COMMAND negate-nc-eager-test)
- 
-     ADD_EXECUTABLE(prelu-nc-test test/prelu-nc.cc)
-     TARGET_INCLUDE_DIRECTORIES(prelu-nc-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(prelu-nc-test PRIVATE XNNPACK fp16 gtest gtest_main)
-+    TARGET_LINK_LIBRARIES(prelu-nc-test PRIVATE XNNPACK gtest gtest_main)
-     ADD_TEST(NAME prelu-nc-test COMMAND prelu-nc-test)
- 
-     ADD_EXECUTABLE(resize-bilinear-nhwc-test test/resize-bilinear-nhwc.cc)
-     TARGET_INCLUDE_DIRECTORIES(resize-bilinear-nhwc-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(resize-bilinear-nhwc-test PRIVATE XNNPACK fp16 gtest gtest_main)
-+    TARGET_LINK_LIBRARIES(resize-bilinear-nhwc-test PRIVATE XNNPACK gtest gtest_main)
-     ADD_TEST(NAME resize-bilinear-nhwc-test COMMAND resize-bilinear-nhwc-test)
- 
-     ADD_EXECUTABLE(resize-bilinear-nchw-test test/resize-bilinear-nchw.cc)
-     TARGET_INCLUDE_DIRECTORIES(resize-bilinear-nchw-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(resize-bilinear-nchw-test PRIVATE XNNPACK fp16 gtest gtest_main)
-+    TARGET_LINK_LIBRARIES(resize-bilinear-nchw-test PRIVATE XNNPACK gtest gtest_main)
-     ADD_TEST(NAME resize-bilinear-nchw-test COMMAND resize-bilinear-nchw-test)
- 
-     ADD_EXECUTABLE(sigmoid-nc-test test/sigmoid-nc.cc)
-     TARGET_INCLUDE_DIRECTORIES(sigmoid-nc-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(sigmoid-nc-test PRIVATE XNNPACK fp16 gtest gtest_main)
-+    TARGET_LINK_LIBRARIES(sigmoid-nc-test PRIVATE XNNPACK gtest gtest_main)
-     ADD_TEST(NAME sigmoid-nc-test COMMAND sigmoid-nc-test)
- 
-     ADD_EXECUTABLE(sigmoid-nc-eager-test test/sigmoid-nc-eager.cc)
-     TARGET_INCLUDE_DIRECTORIES(sigmoid-nc-eager-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(sigmoid-nc-eager-test PRIVATE XNNPACK fp16 gtest gtest_main)
-+    TARGET_LINK_LIBRARIES(sigmoid-nc-eager-test PRIVATE XNNPACK gtest gtest_main)
-     ADD_TEST(NAME sigmoid-nc-eager-test COMMAND sigmoid-nc-eager-test)
- 
-     ADD_EXECUTABLE(slice-nd-test test/slice-nd.cc)
-     TARGET_INCLUDE_DIRECTORIES(slice-nd-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(slice-nd-test PRIVATE XNNPACK fp16 gtest gtest_main)
-+    TARGET_LINK_LIBRARIES(slice-nd-test PRIVATE XNNPACK gtest gtest_main)
-     ADD_TEST(NAME slice-nd-test COMMAND slice-nd-test)
- 
-     ADD_EXECUTABLE(slice-nd-eager-test test/slice-nd-eager.cc)
-     TARGET_INCLUDE_DIRECTORIES(slice-nd-eager-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(slice-nd-eager-test PRIVATE XNNPACK fp16 gtest gtest_main)
-+    TARGET_LINK_LIBRARIES(slice-nd-eager-test PRIVATE XNNPACK gtest gtest_main)
-     ADD_TEST(NAME slice-nd-eager-test COMMAND slice-nd-eager-test)
- 
-     ADD_EXECUTABLE(softmax-nc-test test/softmax-nc.cc)
-     TARGET_INCLUDE_DIRECTORIES(softmax-nc-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(softmax-nc-test PRIVATE XNNPACK fp16 gtest gtest_main)
-+    TARGET_LINK_LIBRARIES(softmax-nc-test PRIVATE XNNPACK gtest gtest_main)
-     ADD_TEST(NAME softmax-nc-test COMMAND softmax-nc-test)
- 
-     ADD_EXECUTABLE(space-to-depth-nhwc-test test/space-to-depth-nhwc.cc)
-     TARGET_INCLUDE_DIRECTORIES(space-to-depth-nhwc-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(space-to-depth-nhwc-test PRIVATE XNNPACK fp16 gtest gtest_main)
-+    TARGET_LINK_LIBRARIES(space-to-depth-nhwc-test PRIVATE XNNPACK gtest gtest_main)
-     ADD_TEST(NAME space-to-depth-nhwc-test COMMAND space-to-depth-nhwc-test)
- 
-     ADD_EXECUTABLE(square-nc-test test/square-nc.cc)
-     TARGET_INCLUDE_DIRECTORIES(square-nc-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(square-nc-test PRIVATE XNNPACK fp16 gtest gtest_main)
-+    TARGET_LINK_LIBRARIES(square-nc-test PRIVATE XNNPACK gtest gtest_main)
-     ADD_TEST(NAME square-nc-test COMMAND square-nc-test)
- 
-     ADD_EXECUTABLE(square-nc-eager-test test/square-nc-eager.cc)
-     TARGET_INCLUDE_DIRECTORIES(square-nc-eager-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(square-nc-eager-test PRIVATE XNNPACK fp16 gtest gtest_main)
-+    TARGET_LINK_LIBRARIES(square-nc-eager-test PRIVATE XNNPACK gtest gtest_main)
-     ADD_TEST(NAME square-nc-eager-test COMMAND square-nc-eager-test)
- 
-     ADD_EXECUTABLE(square-root-nc-test test/square-root-nc.cc)
-     TARGET_INCLUDE_DIRECTORIES(square-root-nc-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(square-root-nc-test PRIVATE XNNPACK fp16 gtest gtest_main)
-+    TARGET_LINK_LIBRARIES(square-root-nc-test PRIVATE XNNPACK gtest gtest_main)
-     ADD_TEST(NAME square-root-nc-test COMMAND square-root-nc-test)
- 
-     ADD_EXECUTABLE(square-root-nc-eager-test test/square-root-nc-eager.cc)
-     TARGET_INCLUDE_DIRECTORIES(square-root-nc-eager-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(square-root-nc-eager-test PRIVATE XNNPACK fp16 gtest gtest_main)
-+    TARGET_LINK_LIBRARIES(square-root-nc-eager-test PRIVATE XNNPACK gtest gtest_main)
-     ADD_TEST(NAME square-root-nc-eager-test COMMAND square-root-nc-eager-test)
- 
-     ADD_EXECUTABLE(squared-difference-nd-test test/squared-difference-nd.cc)
-     TARGET_INCLUDE_DIRECTORIES(squared-difference-nd-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(squared-difference-nd-test PRIVATE XNNPACK fp16 gtest gtest_main)
-+    TARGET_LINK_LIBRARIES(squared-difference-nd-test PRIVATE XNNPACK gtest gtest_main)
-     ADD_TEST(NAME squared-difference-nd-test COMMAND squared-difference-nd-test)
- 
-     ADD_EXECUTABLE(squared-difference-nd-eager-test test/squared-difference-nd-eager.cc)
-     TARGET_INCLUDE_DIRECTORIES(squared-difference-nd-eager-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(squared-difference-nd-eager-test PRIVATE XNNPACK fp16 gtest gtest_main)
-+    TARGET_LINK_LIBRARIES(squared-difference-nd-eager-test PRIVATE XNNPACK gtest gtest_main)
-     ADD_TEST(NAME squared-difference-nd-eager-test COMMAND squared-difference-nd-eager-test)
- 
-     ADD_EXECUTABLE(subtract-nd-test test/subtract-nd.cc)
-     TARGET_INCLUDE_DIRECTORIES(subtract-nd-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(subtract-nd-test PRIVATE XNNPACK fp16 gtest gtest_main)
-+    TARGET_LINK_LIBRARIES(subtract-nd-test PRIVATE XNNPACK gtest gtest_main)
-     ADD_TEST(NAME subtract-nd-test COMMAND subtract-nd-test)
- 
-     ADD_EXECUTABLE(subtract-nd-eager-test test/subtract-nd-eager.cc)
-     TARGET_INCLUDE_DIRECTORIES(subtract-nd-eager-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(subtract-nd-eager-test PRIVATE XNNPACK fp16 gtest gtest_main)
-+    TARGET_LINK_LIBRARIES(subtract-nd-eager-test PRIVATE XNNPACK gtest gtest_main)
-     ADD_TEST(NAME subtract-nd-eager-test COMMAND subtract-nd-eager-test)
- 
-     ADD_EXECUTABLE(tanh-nc-test test/tanh-nc.cc)
-@@ -1293,12 +1260,12 @@
- 
-     ADD_EXECUTABLE(truncation-nc-test test/truncation-nc.cc)
-     TARGET_INCLUDE_DIRECTORIES(truncation-nc-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(truncation-nc-test PRIVATE XNNPACK fp16 gtest gtest_main)
-+    TARGET_LINK_LIBRARIES(truncation-nc-test PRIVATE XNNPACK gtest gtest_main)
-     ADD_TEST(NAME truncation-nc-test COMMAND truncation-nc-test)
- 
-     ADD_EXECUTABLE(truncation-nc-eager-test test/truncation-nc-eager.cc)
-     TARGET_INCLUDE_DIRECTORIES(truncation-nc-eager-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(truncation-nc-eager-test PRIVATE XNNPACK fp16 gtest gtest_main)
-+    TARGET_LINK_LIBRARIES(truncation-nc-eager-test PRIVATE XNNPACK gtest gtest_main)
-     ADD_TEST(NAME truncation-nc-eager-test COMMAND truncation-nc-eager-test)
- 
-     ADD_EXECUTABLE(unpooling-nhwc-test test/unpooling-nhwc.cc)
-@@ -1350,22 +1317,22 @@
- 
-     ADD_EXECUTABLE(average-pooling-2d-test test/average-pooling-2d.cc)
-     TARGET_INCLUDE_DIRECTORIES(average-pooling-2d-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(average-pooling-2d-test PRIVATE XNNPACK fp16 gtest gtest_main subgraph)
-+    TARGET_LINK_LIBRARIES(average-pooling-2d-test PRIVATE XNNPACK gtest gtest_main subgraph)
-     ADD_TEST(NAME average-pooling-2d-test COMMAND average-pooling-2d-test)
- 
-     ADD_EXECUTABLE(bankers-rounding-test test/bankers-rounding.cc)
-     TARGET_INCLUDE_DIRECTORIES(bankers-rounding-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(bankers-rounding-test PRIVATE XNNPACK fp16 gtest gtest_main subgraph)
-+    TARGET_LINK_LIBRARIES(bankers-rounding-test PRIVATE XNNPACK gtest gtest_main subgraph)
-     ADD_TEST(NAME bankers-rounding-test COMMAND bankers-rounding-test)
- 
-     ADD_EXECUTABLE(ceiling-test test/ceiling.cc)
-     TARGET_INCLUDE_DIRECTORIES(ceiling-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(ceiling-test PRIVATE XNNPACK fp16 gtest gtest_main subgraph)
-+    TARGET_LINK_LIBRARIES(ceiling-test PRIVATE XNNPACK gtest gtest_main subgraph)
-     ADD_TEST(NAME ceiling-test COMMAND ceiling-test)
- 
-     ADD_EXECUTABLE(clamp-test test/clamp.cc)
-     TARGET_INCLUDE_DIRECTORIES(clamp-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(clamp-test PRIVATE XNNPACK fp16 gtest gtest_main subgraph)
-+    TARGET_LINK_LIBRARIES(clamp-test PRIVATE XNNPACK gtest gtest_main subgraph)
-     ADD_TEST(NAME clamp-test COMMAND clamp-test)
- 
-     ADD_EXECUTABLE(concatenate2-test test/concatenate2.cc)
-@@ -1385,187 +1352,187 @@
- 
-     ADD_EXECUTABLE(convert-test test/convert.cc)
-     TARGET_INCLUDE_DIRECTORIES(convert-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(convert-test PRIVATE XNNPACK fp16 gtest gtest_main subgraph)
-+    TARGET_LINK_LIBRARIES(convert-test PRIVATE XNNPACK gtest gtest_main subgraph)
-     ADD_TEST(NAME convert-test COMMAND convert-test)
- 
-     ADD_EXECUTABLE(convolution-2d-test test/convolution-2d.cc)
-     SET_TARGET_PROPERTIES(convolution-2d-test PROPERTIES CXX_EXTENSIONS YES)
-     TARGET_INCLUDE_DIRECTORIES(convolution-2d-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(convolution-2d-test PRIVATE XNNPACK fp16 gtest gtest_main subgraph convolution-test-helpers)
-+    TARGET_LINK_LIBRARIES(convolution-2d-test PRIVATE XNNPACK gtest gtest_main subgraph convolution-test-helpers)
-     ADD_TEST(NAME convolution-2d-test COMMAND convolution-2d-test)
- 
-     ADD_EXECUTABLE(copy-test test/copy.cc)
-     TARGET_INCLUDE_DIRECTORIES(copy-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(copy-test PRIVATE XNNPACK fp16 gtest gtest_main subgraph)
-+    TARGET_LINK_LIBRARIES(copy-test PRIVATE XNNPACK gtest gtest_main subgraph)
-     ADD_TEST(NAME copy-test COMMAND copy-test)
- 
-     ADD_EXECUTABLE(deconvolution-2d-test test/deconvolution-2d.cc)
-     SET_TARGET_PROPERTIES(deconvolution-2d-test PROPERTIES CXX_EXTENSIONS YES)
-     TARGET_INCLUDE_DIRECTORIES(deconvolution-2d-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(deconvolution-2d-test PRIVATE XNNPACK fp16 gtest gtest_main subgraph convolution-test-helpers)
-+    TARGET_LINK_LIBRARIES(deconvolution-2d-test PRIVATE XNNPACK gtest gtest_main subgraph convolution-test-helpers)
-     ADD_TEST(NAME deconvolution-2d-test COMMAND deconvolution-2d-test)
- 
-     ADD_EXECUTABLE(depth-to-space-test test/depth-to-space.cc)
-     TARGET_INCLUDE_DIRECTORIES(depth-to-space-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(depth-to-space-test PRIVATE XNNPACK fp16 gtest gtest_main subgraph)
-+    TARGET_LINK_LIBRARIES(depth-to-space-test PRIVATE XNNPACK gtest gtest_main subgraph)
-     ADD_TEST(NAME depth-to-space-test COMMAND depth-to-space-test)
- 
-     ADD_EXECUTABLE(depthwise-convolution-2d-test test/depthwise-convolution-2d.cc)
-     SET_TARGET_PROPERTIES(depthwise-convolution-2d-test PROPERTIES CXX_EXTENSIONS YES)
-     TARGET_INCLUDE_DIRECTORIES(depthwise-convolution-2d-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(depthwise-convolution-2d-test PRIVATE XNNPACK fp16 gtest gtest_main subgraph convolution-test-helpers)
-+    TARGET_LINK_LIBRARIES(depthwise-convolution-2d-test PRIVATE XNNPACK gtest gtest_main subgraph convolution-test-helpers)
-     ADD_TEST(NAME depthwise-convolution-2d-test COMMAND depthwise-convolution-2d-test)
- 
-     ADD_EXECUTABLE(divide2-test test/divide2.cc)
-     TARGET_INCLUDE_DIRECTORIES(divide2-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(divide2-test PRIVATE XNNPACK fp16 gtest gtest_main subgraph)
-+    TARGET_LINK_LIBRARIES(divide2-test PRIVATE XNNPACK gtest gtest_main subgraph)
-     ADD_TEST(NAME divide2-test COMMAND divide2-test)
- 
-     ADD_EXECUTABLE(elu-test test/elu.cc)
-     TARGET_INCLUDE_DIRECTORIES(elu-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(elu-test PRIVATE XNNPACK fp16 gtest gtest_main subgraph)
-+    TARGET_LINK_LIBRARIES(elu-test PRIVATE XNNPACK gtest gtest_main subgraph)
-     ADD_TEST(NAME elu-test COMMAND elu-test)
- 
-     ADD_EXECUTABLE(even-split2-test test/even-split2.cc)
-     TARGET_INCLUDE_DIRECTORIES(even-split2-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(even-split2-test PRIVATE XNNPACK fp16 gtest gtest_main subgraph)
-+    TARGET_LINK_LIBRARIES(even-split2-test PRIVATE XNNPACK gtest gtest_main subgraph)
-     ADD_TEST(NAME even-split2-test COMMAND even-split2-test)
- 
-     ADD_EXECUTABLE(even-split3-test test/even-split3.cc)
-     TARGET_INCLUDE_DIRECTORIES(even-split3-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(even-split3-test PRIVATE XNNPACK fp16 gtest gtest_main subgraph)
-+    TARGET_LINK_LIBRARIES(even-split3-test PRIVATE XNNPACK gtest gtest_main subgraph)
-     ADD_TEST(NAME even-split3-test COMMAND even-split3-test)
- 
-     ADD_EXECUTABLE(even-split4-test test/even-split4.cc)
-     TARGET_INCLUDE_DIRECTORIES(even-split4-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(even-split4-test PRIVATE XNNPACK fp16 gtest gtest_main subgraph)
-+    TARGET_LINK_LIBRARIES(even-split4-test PRIVATE XNNPACK gtest gtest_main subgraph)
-     ADD_TEST(NAME even-split4-test COMMAND even-split4-test)
- 
-     ADD_EXECUTABLE(floor-test test/floor.cc)
-     TARGET_INCLUDE_DIRECTORIES(floor-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(floor-test PRIVATE XNNPACK fp16 gtest gtest_main subgraph)
-+    TARGET_LINK_LIBRARIES(floor-test PRIVATE XNNPACK gtest gtest_main subgraph)
-     ADD_TEST(NAME floor-test COMMAND floor-test)
- 
-     ADD_EXECUTABLE(fully-connected-test test/fully-connected.cc)
-     TARGET_INCLUDE_DIRECTORIES(fully-connected-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(fully-connected-test PRIVATE XNNPACK fp16 gtest gtest_main subgraph)
-+    TARGET_LINK_LIBRARIES(fully-connected-test PRIVATE XNNPACK gtest gtest_main subgraph)
-     ADD_TEST(NAME fully-connected-test COMMAND fully-connected-test)
- 
-     ADD_EXECUTABLE(global-average-pooling-1d-test test/global-average-pooling-1d.cc)
-     TARGET_INCLUDE_DIRECTORIES(global-average-pooling-1d-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(global-average-pooling-1d-test PRIVATE XNNPACK fp16 gtest gtest_main subgraph)
-+    TARGET_LINK_LIBRARIES(global-average-pooling-1d-test PRIVATE XNNPACK gtest gtest_main subgraph)
-     ADD_TEST(NAME global-average-pooling-1d-test COMMAND global-average-pooling-1d-test)
- 
-     ADD_EXECUTABLE(global-average-pooling-2d-test test/global-average-pooling-2d.cc)
-     TARGET_INCLUDE_DIRECTORIES(global-average-pooling-2d-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(global-average-pooling-2d-test PRIVATE XNNPACK fp16 gtest gtest_main subgraph)
-+    TARGET_LINK_LIBRARIES(global-average-pooling-2d-test PRIVATE XNNPACK gtest gtest_main subgraph)
-     ADD_TEST(NAME global-average-pooling-2d-test COMMAND global-average-pooling-2d-test)
- 
-     ADD_EXECUTABLE(hardswish-test test/hardswish.cc)
-     TARGET_INCLUDE_DIRECTORIES(hardswish-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(hardswish-test PRIVATE XNNPACK fp16 gtest gtest_main subgraph)
-+    TARGET_LINK_LIBRARIES(hardswish-test PRIVATE XNNPACK gtest gtest_main subgraph)
-     ADD_TEST(NAME hardswish-test COMMAND hardswish-test)
- 
-     ADD_EXECUTABLE(leaky-relu-test test/leaky-relu.cc)
-     TARGET_INCLUDE_DIRECTORIES(leaky-relu-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(leaky-relu-test PRIVATE XNNPACK fp16 gtest gtest_main subgraph)
-+    TARGET_LINK_LIBRARIES(leaky-relu-test PRIVATE XNNPACK gtest gtest_main subgraph)
-     ADD_TEST(NAME leaky-relu-test COMMAND leaky-relu-test)
- 
-     ADD_EXECUTABLE(max-pooling-2d-test test/max-pooling-2d.cc)
-     TARGET_INCLUDE_DIRECTORIES(max-pooling-2d-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(max-pooling-2d-test PRIVATE XNNPACK fp16 gtest gtest_main subgraph)
-+    TARGET_LINK_LIBRARIES(max-pooling-2d-test PRIVATE XNNPACK gtest gtest_main subgraph)
-     ADD_TEST(NAME max-pooling-2d-test COMMAND max-pooling-2d-test)
- 
-     ADD_EXECUTABLE(maximum2-test test/maximum2.cc)
-     TARGET_INCLUDE_DIRECTORIES(maximum2-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(maximum2-test PRIVATE XNNPACK fp16 gtest gtest_main subgraph)
-+    TARGET_LINK_LIBRARIES(maximum2-test PRIVATE XNNPACK gtest gtest_main subgraph)
-     ADD_TEST(NAME maximum2-test COMMAND maximum2-test)
- 
-     ADD_EXECUTABLE(minimum2-test test/minimum2.cc)
-     TARGET_INCLUDE_DIRECTORIES(minimum2-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(minimum2-test PRIVATE XNNPACK fp16 gtest gtest_main subgraph)
-+    TARGET_LINK_LIBRARIES(minimum2-test PRIVATE XNNPACK gtest gtest_main subgraph)
-     ADD_TEST(NAME minimum2-test COMMAND minimum2-test)
- 
-     ADD_EXECUTABLE(multiply2-test test/multiply2.cc)
-     TARGET_INCLUDE_DIRECTORIES(multiply2-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(multiply2-test PRIVATE XNNPACK fp16 gtest gtest_main subgraph)
-+    TARGET_LINK_LIBRARIES(multiply2-test PRIVATE XNNPACK gtest gtest_main subgraph)
-     ADD_TEST(NAME multiply2-test COMMAND multiply2-test)
- 
-     ADD_EXECUTABLE(negate-test test/negate.cc)
-     TARGET_INCLUDE_DIRECTORIES(negate-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(negate-test PRIVATE XNNPACK fp16 gtest gtest_main subgraph)
-+    TARGET_LINK_LIBRARIES(negate-test PRIVATE XNNPACK gtest gtest_main subgraph)
-     ADD_TEST(NAME negate-test COMMAND negate-test)
- 
-     ADD_EXECUTABLE(prelu-test test/prelu.cc)
-     TARGET_INCLUDE_DIRECTORIES(prelu-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(prelu-test PRIVATE XNNPACK fp16 gtest gtest_main subgraph)
-+    TARGET_LINK_LIBRARIES(prelu-test PRIVATE XNNPACK gtest gtest_main subgraph)
-     ADD_TEST(NAME prelu-test COMMAND prelu-test)
- 
-     ADD_EXECUTABLE(sigmoid-test test/sigmoid.cc)
-     SET_TARGET_PROPERTIES(sigmoid-test PROPERTIES CXX_EXTENSIONS YES)
-     TARGET_INCLUDE_DIRECTORIES(sigmoid-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(sigmoid-test PRIVATE XNNPACK fp16 gtest gtest_main subgraph)
-+    TARGET_LINK_LIBRARIES(sigmoid-test PRIVATE XNNPACK gtest gtest_main subgraph)
-     ADD_TEST(NAME sigmoid-test COMMAND sigmoid-test)
- 
-     ADD_EXECUTABLE(static-slice-test test/static-slice.cc)
-     SET_TARGET_PROPERTIES(static-slice-test PROPERTIES CXX_EXTENSIONS YES)
-     TARGET_INCLUDE_DIRECTORIES(static-slice-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(static-slice-test PRIVATE XNNPACK fp16 gmock gtest gtest_main subgraph)
-+    TARGET_LINK_LIBRARIES(static-slice-test PRIVATE XNNPACK gmock gtest gtest_main subgraph)
-     ADD_TEST(NAME static-slice-test COMMAND static-slice-test)
- 
-     ADD_EXECUTABLE(softmax-test test/softmax.cc)
-     TARGET_INCLUDE_DIRECTORIES(softmax-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(softmax-test PRIVATE XNNPACK fp16 gtest gtest_main subgraph)
-+    TARGET_LINK_LIBRARIES(softmax-test PRIVATE XNNPACK gtest gtest_main subgraph)
-     ADD_TEST(NAME softmax-test COMMAND softmax-test)
- 
-     ADD_EXECUTABLE(space-to-depth-2d-test test/space-to-depth-2d.cc)
-     TARGET_INCLUDE_DIRECTORIES(space-to-depth-2d-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(space-to-depth-2d-test PRIVATE XNNPACK fp16 gtest gtest_main subgraph)
-+    TARGET_LINK_LIBRARIES(space-to-depth-2d-test PRIVATE XNNPACK gtest gtest_main subgraph)
-     ADD_TEST(NAME space-to-depth-2d-test COMMAND space-to-depth-2d-test)
- 
-     ADD_EXECUTABLE(square-test test/square.cc)
-     TARGET_INCLUDE_DIRECTORIES(square-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(square-test PRIVATE XNNPACK fp16 gtest gtest_main subgraph)
-+    TARGET_LINK_LIBRARIES(square-test PRIVATE XNNPACK gtest gtest_main subgraph)
-     ADD_TEST(NAME square-test COMMAND square-test)
- 
-     ADD_EXECUTABLE(square-root-test test/square.cc)
-     TARGET_INCLUDE_DIRECTORIES(square-root-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(square-root-test PRIVATE XNNPACK fp16 gtest gtest_main subgraph)
-+    TARGET_LINK_LIBRARIES(square-root-test PRIVATE XNNPACK gtest gtest_main subgraph)
-     ADD_TEST(NAME square-root-test COMMAND square-root-test)
- 
-     ADD_EXECUTABLE(squared-difference-test test/squared-difference.cc)
-     TARGET_INCLUDE_DIRECTORIES(squared-difference-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(squared-difference-test PRIVATE XNNPACK fp16 gtest gtest_main subgraph)
-+    TARGET_LINK_LIBRARIES(squared-difference-test PRIVATE XNNPACK gtest gtest_main subgraph)
-     ADD_TEST(NAME squared-difference-test COMMAND squared-difference-test)
- 
-     ADD_EXECUTABLE(static-constant-pad-test test/static-constant-pad.cc)
-     TARGET_INCLUDE_DIRECTORIES(static-constant-pad-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(static-constant-pad-test PRIVATE XNNPACK fp16 gtest gtest_main subgraph)
-+    TARGET_LINK_LIBRARIES(static-constant-pad-test PRIVATE XNNPACK gtest gtest_main subgraph)
-     ADD_TEST(NAME static-constant-pad-test COMMAND static-constant-pad-test)
- 
-     ADD_EXECUTABLE(static-reshape-test test/static-reshape.cc)
-     TARGET_INCLUDE_DIRECTORIES(static-reshape-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(static-reshape-test PRIVATE XNNPACK fp16 gtest gtest_main subgraph)
-+    TARGET_LINK_LIBRARIES(static-reshape-test PRIVATE XNNPACK gtest gtest_main subgraph)
-     ADD_TEST(NAME static-reshape-test COMMAND static-reshape-test)
- 
-     ADD_EXECUTABLE(static-resize-bilinear-2d-test test/static-resize-bilinear-2d.cc)
-     TARGET_INCLUDE_DIRECTORIES(static-resize-bilinear-2d-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(static-resize-bilinear-2d-test PRIVATE XNNPACK fp16 gtest gtest_main subgraph)
-+    TARGET_LINK_LIBRARIES(static-resize-bilinear-2d-test PRIVATE XNNPACK gtest gtest_main subgraph)
-     ADD_TEST(NAME static-resize-bilinear-2d-test COMMAND static-resize-bilinear-2d-test)
- 
-     ADD_EXECUTABLE(static-transpose-test test/static-transpose.cc)
-     TARGET_INCLUDE_DIRECTORIES(static-transpose-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(static-transpose-test PRIVATE XNNPACK fp16 gtest gtest_main subgraph)
-+    TARGET_LINK_LIBRARIES(static-transpose-test PRIVATE XNNPACK gtest gtest_main subgraph)
-     ADD_TEST(NAME static-transpose-test COMMAND static-transpose-test)
- 
-     ADD_EXECUTABLE(subtract2-test test/subtract2.cc)
-     TARGET_INCLUDE_DIRECTORIES(subtract2-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(subtract2-test PRIVATE XNNPACK fp16 gtest gtest_main subgraph)
-+    TARGET_LINK_LIBRARIES(subtract2-test PRIVATE XNNPACK gtest gtest_main subgraph)
-     ADD_TEST(NAME subtract2-test COMMAND subtract2-test)
- 
-     ADD_EXECUTABLE(unpooling-2d-test test/unpooling-2d.cc)
-     TARGET_INCLUDE_DIRECTORIES(unpooling-2d-test PRIVATE src test)
--    TARGET_LINK_LIBRARIES(unpooling-2d-test PRIVATE XNNPACK fp16 gtest gtest_main subgraph)
-+    TARGET_LINK_LIBRARIES(unpooling-2d-test PRIVATE XNNPACK gtest gtest_main subgraph)
-     ADD_TEST(NAME unpooling-2d-test COMMAND unpooling-2d-test)
-   ENDIF()
- 
-@@ -1591,355 +1558,355 @@
- 
-   ADD_EXECUTABLE(f16-f32-vcvt-test test/f16-f32-vcvt.cc)
-   TARGET_INCLUDE_DIRECTORIES(f16-f32-vcvt-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f16-f32-vcvt-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f16-f32-vcvt-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f16-f32-vcvt-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME f16-f32-vcvt-test COMMAND f16-f32-vcvt-test)
- 
-   ADD_EXECUTABLE(f16-gavgpool-cw-test test/f16-gavgpool-cw.cc)
-   TARGET_INCLUDE_DIRECTORIES(f16-gavgpool-cw-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f16-gavgpool-cw-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f16-gavgpool-cw-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f16-gavgpool-cw-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME f16-gavgpool-cw-test COMMAND f16-gavgpool-cw-test)
- 
-   ADD_EXECUTABLE(f16-avgpool-minmax-test test/f16-avgpool-minmax.cc)
-   TARGET_INCLUDE_DIRECTORIES(f16-avgpool-minmax-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f16-avgpool-minmax-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f16-avgpool-minmax-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f16-avgpool-minmax-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME f16-avgpool-minmax-test COMMAND f16-avgpool-minmax-test)
- 
-   ADD_EXECUTABLE(f16-conv-hwc2chw-test test/f16-conv-hwc2chw.cc)
-   TARGET_INCLUDE_DIRECTORIES(f16-conv-hwc2chw-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f16-conv-hwc2chw-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f16-conv-hwc2chw-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f16-conv-hwc2chw-test PRIVATE hardware-config logging microkernels-all microparams-init packing)
-   ADD_TEST(NAME f16-conv-hwc2chw-test COMMAND f16-conv-hwc2chw-test)
- 
-   ADD_EXECUTABLE(f16-dwconv-unipass-minmax-test test/f16-dwconv-unipass-minmax.cc)
-   TARGET_INCLUDE_DIRECTORIES(f16-dwconv-unipass-minmax-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f16-dwconv-unipass-minmax-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f16-dwconv-unipass-minmax-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f16-dwconv-unipass-minmax-test PRIVATE hardware-config logging microkernels-all microparams-init packing)
-   ADD_TEST(NAME f16-dwconv-unipass-minmax-test COMMAND f16-dwconv-unipass-minmax-test)
- 
-   ADD_EXECUTABLE(f16-dwconv2d-chw-test test/f16-dwconv2d-chw.cc)
-   TARGET_INCLUDE_DIRECTORIES(f16-dwconv2d-chw-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f16-dwconv2d-chw-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f16-dwconv2d-chw-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f16-dwconv2d-chw-test PRIVATE hardware-config logging microkernels-all microparams-init packing)
-   ADD_TEST(NAME f16-dwconv2d-chw-test COMMAND f16-dwconv2d-chw-test)
- 
-   ADD_EXECUTABLE(f16-gavgpool-minmax-test test/f16-gavgpool-minmax.cc)
-   TARGET_INCLUDE_DIRECTORIES(f16-gavgpool-minmax-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f16-gavgpool-minmax-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f16-gavgpool-minmax-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f16-gavgpool-minmax-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME f16-gavgpool-minmax-test COMMAND f16-gavgpool-minmax-test)
- 
-   ADD_EXECUTABLE(f16-gemm-minmax-test test/f16-gemm-minmax.cc)
-   TARGET_INCLUDE_DIRECTORIES(f16-gemm-minmax-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f16-gemm-minmax-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f16-gemm-minmax-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f16-gemm-minmax-test PRIVATE gemm-microkernel-tester hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME f16-gemm-minmax-test COMMAND f16-gemm-minmax-test)
- 
-   ADD_EXECUTABLE(f16-ibilinear-chw-test test/f16-ibilinear-chw.cc)
-   TARGET_INCLUDE_DIRECTORIES(f16-ibilinear-chw-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f16-ibilinear-chw-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f16-ibilinear-chw-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f16-ibilinear-chw-test PRIVATE hardware-config logging microkernels-all)
-   ADD_TEST(NAME f16-ibilinear-chw-test COMMAND f16-ibilinear-chw-test)
- 
-   ADD_EXECUTABLE(f16-ibilinear-test test/f16-ibilinear.cc)
-   TARGET_INCLUDE_DIRECTORIES(f16-ibilinear-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f16-ibilinear-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f16-ibilinear-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f16-ibilinear-test PRIVATE hardware-config logging microkernels-all)
-   ADD_TEST(NAME f16-ibilinear-test COMMAND f16-ibilinear-test)
- 
-   ADD_EXECUTABLE(f16-igemm-minmax-test test/f16-igemm-minmax.cc)
-   TARGET_INCLUDE_DIRECTORIES(f16-igemm-minmax-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f16-igemm-minmax-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f16-igemm-minmax-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f16-igemm-minmax-test PRIVATE gemm-microkernel-tester hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME f16-igemm-minmax-test COMMAND f16-igemm-minmax-test)
- 
-   ADD_EXECUTABLE(f16-maxpool-minmax-test test/f16-maxpool-minmax.cc)
-   TARGET_INCLUDE_DIRECTORIES(f16-maxpool-minmax-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f16-maxpool-minmax-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f16-maxpool-minmax-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f16-maxpool-minmax-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME f16-maxpool-minmax-test COMMAND f16-maxpool-minmax-test)
- 
-   ADD_EXECUTABLE(f16-spmm-minmax-test test/f16-spmm-minmax.cc)
-   TARGET_INCLUDE_DIRECTORIES(f16-spmm-minmax-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f16-spmm-minmax-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f16-spmm-minmax-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f16-spmm-minmax-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME f16-spmm-minmax-test COMMAND f16-spmm-minmax-test)
- 
-   ADD_EXECUTABLE(f16-rmax-test test/f16-rmax.cc)
-   TARGET_INCLUDE_DIRECTORIES(f16-rmax-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f16-rmax-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f16-rmax-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f16-rmax-test PRIVATE hardware-config logging microkernels-all)
-   ADD_TEST(NAME f16-rmax-test COMMAND f16-rmax-test)
- 
-   ADD_EXECUTABLE(f16-vabs-test test/f16-vabs.cc)
-   TARGET_INCLUDE_DIRECTORIES(f16-vabs-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f16-vabs-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f16-vabs-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f16-vabs-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME f16-vabs-test COMMAND f16-vabs-test)
- 
-   ADD_EXECUTABLE(f16-vadd-minmax-test test/f16-vadd-minmax.cc)
-   TARGET_INCLUDE_DIRECTORIES(f16-vadd-minmax-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f16-vadd-minmax-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f16-vadd-minmax-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f16-vadd-minmax-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME f16-vadd-minmax-test COMMAND f16-vadd-minmax-test)
- 
-   ADD_EXECUTABLE(f16-vaddc-minmax-test test/f16-vaddc-minmax.cc)
-   TARGET_INCLUDE_DIRECTORIES(f16-vaddc-minmax-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f16-vaddc-minmax-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f16-vaddc-minmax-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f16-vaddc-minmax-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME f16-vaddc-minmax-test COMMAND f16-vaddc-minmax-test)
- 
-   ADD_EXECUTABLE(f16-vclamp-test test/f16-vclamp.cc)
-   TARGET_INCLUDE_DIRECTORIES(f16-vclamp-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f16-vclamp-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f16-vclamp-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f16-vclamp-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME f16-vclamp-test COMMAND f16-vclamp-test)
- 
-   ADD_EXECUTABLE(f16-vdiv-minmax-test test/f16-vdiv-minmax.cc)
-   TARGET_INCLUDE_DIRECTORIES(f16-vdiv-minmax-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f16-vdiv-minmax-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f16-vdiv-minmax-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f16-vdiv-minmax-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME f16-vdiv-minmax-test COMMAND f16-vdiv-minmax-test)
- 
-   ADD_EXECUTABLE(f16-vdivc-minmax-test test/f16-vdivc-minmax.cc)
-   TARGET_INCLUDE_DIRECTORIES(f16-vdivc-minmax-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f16-vdivc-minmax-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f16-vdivc-minmax-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f16-vdivc-minmax-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME f16-vdivc-minmax-test COMMAND f16-vdivc-minmax-test)
- 
-   ADD_EXECUTABLE(f16-vrdivc-minmax-test test/f16-vrdivc-minmax.cc)
-   TARGET_INCLUDE_DIRECTORIES(f16-vrdivc-minmax-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f16-vrdivc-minmax-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f16-vrdivc-minmax-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f16-vrdivc-minmax-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME f16-vrdivc-minmax-test COMMAND f16-vrdivc-minmax-test)
- 
-   ADD_EXECUTABLE(f16-velu-test test/f16-velu.cc)
-   TARGET_INCLUDE_DIRECTORIES(f16-velu-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f16-velu-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f16-velu-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f16-velu-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME f16-velu-test COMMAND f16-velu-test)
- 
-   ADD_EXECUTABLE(f16-vhswish-test test/f16-vhswish.cc)
-   TARGET_INCLUDE_DIRECTORIES(f16-vhswish-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f16-vhswish-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f16-vhswish-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f16-vhswish-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME f16-vhswish-test COMMAND f16-vhswish-test)
- 
-   ADD_EXECUTABLE(f16-vlrelu-test test/f16-vlrelu.cc)
-   TARGET_INCLUDE_DIRECTORIES(f16-vlrelu-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f16-vlrelu-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f16-vlrelu-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f16-vlrelu-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME f16-vlrelu-test COMMAND f16-vlrelu-test)
- 
-   ADD_EXECUTABLE(f16-vmax-test test/f16-vmax.cc)
-   TARGET_INCLUDE_DIRECTORIES(f16-vmax-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f16-vmax-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f16-vmax-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f16-vmax-test PRIVATE hardware-config logging microkernels-all)
-   ADD_TEST(NAME f16-vmax-test COMMAND f16-vmax-test)
- 
-   ADD_EXECUTABLE(f16-vmaxc-test test/f16-vmaxc.cc)
-   TARGET_INCLUDE_DIRECTORIES(f16-vmaxc-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f16-vmaxc-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f16-vmaxc-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f16-vmaxc-test PRIVATE hardware-config logging microkernels-all)
-   ADD_TEST(NAME f16-vmaxc-test COMMAND f16-vmaxc-test)
- 
-   ADD_EXECUTABLE(f16-vmin-test test/f16-vmin.cc)
-   TARGET_INCLUDE_DIRECTORIES(f16-vmin-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f16-vmin-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f16-vmin-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f16-vmin-test PRIVATE hardware-config logging microkernels-all)
-   ADD_TEST(NAME f16-vmin-test COMMAND f16-vmin-test)
- 
-   ADD_EXECUTABLE(f16-vminc-test test/f16-vminc.cc)
-   TARGET_INCLUDE_DIRECTORIES(f16-vminc-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f16-vminc-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f16-vminc-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f16-vminc-test PRIVATE hardware-config logging microkernels-all)
-   ADD_TEST(NAME f16-vminc-test COMMAND f16-vminc-test)
- 
-   ADD_EXECUTABLE(f16-vmul-minmax-test test/f16-vmul-minmax.cc)
-   TARGET_INCLUDE_DIRECTORIES(f16-vmul-minmax-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f16-vmul-minmax-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f16-vmul-minmax-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f16-vmul-minmax-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME f16-vmul-minmax-test COMMAND f16-vmul-minmax-test)
- 
-   ADD_EXECUTABLE(f16-vmulc-minmax-test test/f16-vmulc-minmax.cc)
-   TARGET_INCLUDE_DIRECTORIES(f16-vmulc-minmax-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f16-vmulc-minmax-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f16-vmulc-minmax-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f16-vmulc-minmax-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME f16-vmulc-minmax-test COMMAND f16-vmulc-minmax-test)
- 
-   ADD_EXECUTABLE(f16-vmulcaddc-minmax-test test/f16-vmulcaddc-minmax.cc)
-   TARGET_INCLUDE_DIRECTORIES(f16-vmulcaddc-minmax-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f16-vmulcaddc-minmax-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f16-vmulcaddc-minmax-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f16-vmulcaddc-minmax-test PRIVATE hardware-config logging microkernels-all microparams-init packing)
-   ADD_TEST(NAME f16-vmulcaddc-minmax-test COMMAND f16-vmulcaddc-minmax-test)
- 
-   ADD_EXECUTABLE(f16-vneg-test test/f16-vneg.cc)
-   TARGET_INCLUDE_DIRECTORIES(f16-vneg-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f16-vneg-test PRIVATE fp16 pthreadpool gtest gtest_main microparams-init)
-+  TARGET_LINK_LIBRARIES(f16-vneg-test PRIVATE gtest gtest_main microparams-init)
-   TARGET_LINK_LIBRARIES(f16-vneg-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME f16-vneg-test COMMAND f16-vneg-test)
- 
-   ADD_EXECUTABLE(f16-pavgpool-minmax-test test/f16-pavgpool-minmax.cc)
-   TARGET_INCLUDE_DIRECTORIES(f16-pavgpool-minmax-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f16-pavgpool-minmax-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f16-pavgpool-minmax-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f16-pavgpool-minmax-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME f16-pavgpool-minmax-test COMMAND f16-pavgpool-minmax-test)
- 
-   ADD_EXECUTABLE(f16-prelu-test test/f16-prelu.cc)
-   TARGET_INCLUDE_DIRECTORIES(f16-prelu-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f16-prelu-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f16-prelu-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f16-prelu-test PRIVATE hardware-config logging microkernels-all)
-   ADD_TEST(NAME f16-prelu-test COMMAND f16-prelu-test)
- 
-   ADD_EXECUTABLE(f16-raddstoreexpminusmax-test test/f16-raddstoreexpminusmax.cc)
-   TARGET_INCLUDE_DIRECTORIES(f16-raddstoreexpminusmax-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f16-raddstoreexpminusmax-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f16-raddstoreexpminusmax-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f16-raddstoreexpminusmax-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME f16-raddstoreexpminusmax-test COMMAND f16-raddstoreexpminusmax-test)
- 
-   ADD_EXECUTABLE(f16-vrndne-test test/f16-vrndne.cc)
-   TARGET_INCLUDE_DIRECTORIES(f16-vrndne-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f16-vrndne-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f16-vrndne-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f16-vrndne-test PRIVATE hardware-config logging microkernels-all)
-   ADD_TEST(NAME f16-vrndne-test COMMAND f16-vrndne-test)
- 
-   ADD_EXECUTABLE(f16-vrndz-test test/f16-vrndz.cc)
-   TARGET_INCLUDE_DIRECTORIES(f16-vrndz-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f16-vrndz-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f16-vrndz-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f16-vrndz-test PRIVATE hardware-config logging microkernels-all)
-   ADD_TEST(NAME f16-vrndz-test COMMAND f16-vrndz-test)
- 
-   ADD_EXECUTABLE(f16-vrndu-test test/f16-vrndu.cc)
-   TARGET_INCLUDE_DIRECTORIES(f16-vrndu-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f16-vrndu-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f16-vrndu-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f16-vrndu-test PRIVATE hardware-config logging microkernels-all)
-   ADD_TEST(NAME f16-vrndu-test COMMAND f16-vrndu-test)
- 
-   ADD_EXECUTABLE(f16-vrndd-test test/f16-vrndd.cc)
-   TARGET_INCLUDE_DIRECTORIES(f16-vrndd-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f16-vrndd-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f16-vrndd-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f16-vrndd-test PRIVATE hardware-config logging microkernels-all)
-   ADD_TEST(NAME f16-vrndd-test COMMAND f16-vrndd-test)
- 
-   ADD_EXECUTABLE(f16-vsigmoid-test test/f16-vsigmoid.cc)
-   TARGET_INCLUDE_DIRECTORIES(f16-vsigmoid-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f16-vsigmoid-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f16-vsigmoid-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f16-vsigmoid-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME f16-vsigmoid-test COMMAND f16-vsigmoid-test)
- 
-   ADD_EXECUTABLE(f16-vsqr-test test/f16-vsqr.cc)
-   TARGET_INCLUDE_DIRECTORIES(f16-vsqr-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f16-vsqr-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f16-vsqr-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f16-vsqr-test PRIVATE hardware-config logging microkernels-all)
-   ADD_TEST(NAME f16-vsqr-test COMMAND f16-vsqr-test)
- 
-   ADD_EXECUTABLE(f16-vsqrt-test test/f16-vsqrt.cc)
-   TARGET_INCLUDE_DIRECTORIES(f16-vsqrt-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f16-vsqrt-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f16-vsqrt-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f16-vsqrt-test PRIVATE hardware-config logging microkernels-all)
-   ADD_TEST(NAME f16-vsqrt-test COMMAND f16-vsqrt-test)
- 
-   ADD_EXECUTABLE(f16-vsub-minmax-test test/f16-vsub-minmax.cc)
-   TARGET_INCLUDE_DIRECTORIES(f16-vsub-minmax-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f16-vsub-minmax-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f16-vsub-minmax-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f16-vsub-minmax-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME f16-vsub-minmax-test COMMAND f16-vsub-minmax-test)
- 
-   ADD_EXECUTABLE(f16-vsubc-minmax-test test/f16-vsubc-minmax.cc)
-   TARGET_INCLUDE_DIRECTORIES(f16-vsubc-minmax-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f16-vsubc-minmax-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f16-vsubc-minmax-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f16-vsubc-minmax-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME f16-vsubc-minmax-test COMMAND f16-vsubc-minmax-test)
- 
-   ADD_EXECUTABLE(f16-vrsubc-minmax-test test/f16-vrsubc-minmax.cc)
-   TARGET_INCLUDE_DIRECTORIES(f16-vrsubc-minmax-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f16-vrsubc-minmax-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f16-vrsubc-minmax-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f16-vrsubc-minmax-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME f16-vrsubc-minmax-test COMMAND f16-vrsubc-minmax-test)
- 
-   ADD_EXECUTABLE(f32-argmaxpool-test test/f32-argmaxpool.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-argmaxpool-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f32-argmaxpool-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f32-argmaxpool-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f32-argmaxpool-test PRIVATE hardware-config logging microkernels-all)
-   ADD_TEST(NAME f32-argmaxpool-test COMMAND f32-argmaxpool-test)
- 
-   ADD_EXECUTABLE(f32-avgpool-minmax-test test/f32-avgpool-minmax.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-avgpool-minmax-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f32-avgpool-minmax-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f32-avgpool-minmax-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f32-avgpool-minmax-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME f32-avgpool-minmax-test COMMAND f32-avgpool-minmax-test)
- 
-   ADD_EXECUTABLE(f32-conv-hwc-test test/f32-conv-hwc.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-conv-hwc-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f32-conv-hwc-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f32-conv-hwc-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f32-conv-hwc-test PRIVATE hardware-config logging microkernels-all microparams-init packing)
-   ADD_TEST(NAME f32-conv-hwc-test COMMAND f32-conv-hwc-test)
- 
-   ADD_EXECUTABLE(f32-conv-hwc2chw-test test/f32-conv-hwc2chw.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-conv-hwc2chw-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f32-conv-hwc2chw-test PRIVATE fp16 pthreadpool gtest gtest_main microparams-init)
-+  TARGET_LINK_LIBRARIES(f32-conv-hwc2chw-test PRIVATE gtest gtest_main microparams-init)
-   TARGET_LINK_LIBRARIES(f32-conv-hwc2chw-test PRIVATE hardware-config logging microkernels-all microparams-init packing)
-   ADD_TEST(NAME f32-conv-hwc2chw-test COMMAND f32-conv-hwc2chw-test)
- 
-   ADD_EXECUTABLE(f32-dwconv2d-chw-test test/f32-dwconv2d-chw.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-dwconv2d-chw-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f32-dwconv2d-chw-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f32-dwconv2d-chw-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f32-dwconv2d-chw-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME f32-dwconv2d-chw-test COMMAND f32-dwconv2d-chw-test)
- 
-   ADD_EXECUTABLE(f32-dwconv-multipass-test test/f32-dwconv-multipass.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-dwconv-multipass-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f32-dwconv-multipass-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f32-dwconv-multipass-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f32-dwconv-multipass-test PRIVATE hardware-config logging microkernel-utils microkernels-all microparams-init packing)
-   ADD_TEST(NAME f32-dwconv-multipass-test COMMAND f32-dwconv-multipass-test)
- 
-   ADD_EXECUTABLE(f32-dwconv-multipass-minmax-test test/f32-dwconv-multipass-minmax.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-dwconv-multipass-minmax-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f32-dwconv-multipass-minmax-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f32-dwconv-multipass-minmax-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f32-dwconv-multipass-minmax-test PRIVATE hardware-config logging microkernel-utils microkernels-all microparams-init packing)
-   ADD_TEST(NAME f32-dwconv-multipass-minmax-test COMMAND f32-dwconv-multipass-minmax-test)
- 
-   ADD_EXECUTABLE(f32-dwconv-unipass-test test/f32-dwconv-unipass.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-dwconv-unipass-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f32-dwconv-unipass-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f32-dwconv-unipass-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f32-dwconv-unipass-test PRIVATE hardware-config logging microkernels-all microparams-init packing)
-   ADD_TEST(NAME f32-dwconv-unipass-test COMMAND f32-dwconv-unipass-test)
- 
-   ADD_EXECUTABLE(f32-dwconv-unipass-minmax-test test/f32-dwconv-unipass-minmax.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-dwconv-unipass-minmax-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f32-dwconv-unipass-minmax-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f32-dwconv-unipass-minmax-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f32-dwconv-unipass-minmax-test PRIVATE hardware-config logging microkernels-all microparams-init packing)
-   ADD_TEST(NAME f32-dwconv-unipass-minmax-test COMMAND f32-dwconv-unipass-minmax-test)
- 
-   ADD_EXECUTABLE(f32-f16-vcvt-test test/f32-f16-vcvt.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-f16-vcvt-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f32-f16-vcvt-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f32-f16-vcvt-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f32-f16-vcvt-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME f32-f16-vcvt-test COMMAND f32-f16-vcvt-test)
- 
-   ADD_EXECUTABLE(f32-qs8-vcvt-test test/f32-qs8-vcvt.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-qs8-vcvt-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f32-qs8-vcvt-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f32-qs8-vcvt-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f32-qs8-vcvt-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME f32-qs8-vcvt-test COMMAND f32-qs8-vcvt-test)
- 
-   ADD_EXECUTABLE(f32-qu8-vcvt-test test/f32-qu8-vcvt.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-qu8-vcvt-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f32-qu8-vcvt-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f32-qu8-vcvt-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f32-qu8-vcvt-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME f32-qu8-vcvt-test COMMAND f32-qu8-vcvt-test)
- 
-   ADD_EXECUTABLE(f32-gavgpool-cw-test test/f32-gavgpool-cw.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-gavgpool-cw-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f32-gavgpool-cw-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f32-gavgpool-cw-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f32-gavgpool-cw-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME f32-gavgpool-cw-test COMMAND f32-gavgpool-cw-test)
- 
-   ADD_EXECUTABLE(f32-gavgpool-minmax-test test/f32-gavgpool-minmax.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-gavgpool-minmax-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f32-gavgpool-minmax-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f32-gavgpool-minmax-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f32-gavgpool-minmax-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME f32-gavgpool-minmax-test COMMAND f32-gavgpool-minmax-test)
- 
-@@ -1975,13 +1942,13 @@
- 
-   ADD_EXECUTABLE(f32-ibilinear-test test/f32-ibilinear.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-ibilinear-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f32-ibilinear-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f32-ibilinear-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f32-ibilinear-test PRIVATE hardware-config logging microkernels-all)
-   ADD_TEST(NAME f32-ibilinear-test COMMAND f32-ibilinear-test)
- 
-   ADD_EXECUTABLE(f32-ibilinear-chw-test test/f32-ibilinear-chw.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-ibilinear-chw-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f32-ibilinear-chw-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f32-ibilinear-chw-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f32-ibilinear-chw-test PRIVATE hardware-config logging microkernels-all)
-   ADD_TEST(NAME f32-ibilinear-chw-test COMMAND f32-ibilinear-chw-test)
- 
-@@ -2016,13 +1983,13 @@
- 
-   ADD_EXECUTABLE(f32-maxpool-minmax-test test/f32-maxpool-minmax.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-maxpool-minmax-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f32-maxpool-minmax-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f32-maxpool-minmax-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f32-maxpool-minmax-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME f32-maxpool-minmax-test COMMAND f32-maxpool-minmax-test)
- 
-   ADD_EXECUTABLE(f32-pavgpool-minmax-test test/f32-pavgpool-minmax.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-pavgpool-minmax-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f32-pavgpool-minmax-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f32-pavgpool-minmax-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f32-pavgpool-minmax-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME f32-pavgpool-minmax-test COMMAND f32-pavgpool-minmax-test)
- 
-@@ -2034,259 +2001,259 @@
- 
-   ADD_EXECUTABLE(f32-prelu-test test/f32-prelu.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-prelu-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f32-prelu-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f32-prelu-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f32-prelu-test PRIVATE hardware-config logging microkernels-all)
-   ADD_TEST(NAME f32-prelu-test COMMAND f32-prelu-test)
- 
-   ADD_EXECUTABLE(f32-raddexpminusmax-test test/f32-raddexpminusmax.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-raddexpminusmax-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f32-raddexpminusmax-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f32-raddexpminusmax-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f32-raddexpminusmax-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME f32-raddexpminusmax-test COMMAND f32-raddexpminusmax-test)
- 
-   ADD_EXECUTABLE(f32-raddextexp-test test/f32-raddextexp.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-raddextexp-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f32-raddextexp-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f32-raddextexp-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f32-raddextexp-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME f32-raddextexp-test COMMAND f32-raddextexp-test)
- 
-   ADD_EXECUTABLE(f32-raddstoreexpminusmax-test test/f32-raddstoreexpminusmax.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-raddstoreexpminusmax-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f32-raddstoreexpminusmax-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f32-raddstoreexpminusmax-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f32-raddstoreexpminusmax-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME f32-raddstoreexpminusmax-test COMMAND f32-raddstoreexpminusmax-test)
- 
-   ADD_EXECUTABLE(f32-rmax-test test/f32-rmax.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-rmax-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f32-rmax-test PRIVATE fp16 pthreadpool gtest gtest_main microparams-init)
-+  TARGET_LINK_LIBRARIES(f32-rmax-test PRIVATE gtest gtest_main microparams-init)
-   TARGET_LINK_LIBRARIES(f32-rmax-test PRIVATE hardware-config logging microkernels-all)
-   ADD_TEST(NAME f32-rmax-test COMMAND f32-rmax-test)
- 
-   ADD_EXECUTABLE(f32-spmm-minmax-test test/f32-spmm-minmax.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-spmm-minmax-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f32-spmm-minmax-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f32-spmm-minmax-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f32-spmm-minmax-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME f32-spmm-minmax-test COMMAND f32-spmm-minmax-test)
- 
-   ADD_EXECUTABLE(f32-vabs-test test/f32-vabs.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-vabs-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f32-vabs-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f32-vabs-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f32-vabs-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME f32-vabs-test COMMAND f32-vabs-test)
- 
-   ADD_EXECUTABLE(f32-vadd-test test/f32-vadd.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-vadd-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f32-vadd-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f32-vadd-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f32-vadd-test PRIVATE hardware-config logging microkernels-all)
-   ADD_TEST(NAME f32-vadd-test COMMAND f32-vadd-test)
- 
-   ADD_EXECUTABLE(f32-vadd-minmax-test test/f32-vadd-minmax.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-vadd-minmax-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f32-vadd-minmax-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f32-vadd-minmax-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f32-vadd-minmax-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME f32-vadd-minmax-test COMMAND f32-vadd-minmax-test)
- 
-   ADD_EXECUTABLE(f32-vadd-relu-test test/f32-vadd-relu.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-vadd-relu-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f32-vadd-relu-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f32-vadd-relu-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f32-vadd-relu-test PRIVATE hardware-config logging microkernels-all)
-   ADD_TEST(NAME f32-vadd-relu-test COMMAND f32-vadd-relu-test)
- 
-   ADD_EXECUTABLE(f32-vaddc-test test/f32-vaddc.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-vaddc-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f32-vaddc-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f32-vaddc-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f32-vaddc-test PRIVATE hardware-config logging microkernels-all)
-   ADD_TEST(NAME f32-vaddc-test COMMAND f32-vaddc-test)
- 
-   ADD_EXECUTABLE(f32-vaddc-minmax-test test/f32-vaddc-minmax.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-vaddc-minmax-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f32-vaddc-minmax-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f32-vaddc-minmax-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f32-vaddc-minmax-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME f32-vaddc-minmax-test COMMAND f32-vaddc-minmax-test)
- 
-   ADD_EXECUTABLE(f32-vaddc-relu-test test/f32-vaddc-relu.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-vaddc-relu-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f32-vaddc-relu-test PRIVATE fp16 pthreadpool gtest gtest_main microparams-init)
-+  TARGET_LINK_LIBRARIES(f32-vaddc-relu-test PRIVATE gtest gtest_main microparams-init)
-   TARGET_LINK_LIBRARIES(f32-vaddc-relu-test PRIVATE hardware-config logging microkernels-all)
-   ADD_TEST(NAME f32-vaddc-relu-test COMMAND f32-vaddc-relu-test)
- 
-   ADD_EXECUTABLE(f32-vclamp-test test/f32-vclamp.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-vclamp-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f32-vclamp-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f32-vclamp-test PRIVATE test gtest_main)
-   TARGET_LINK_LIBRARIES(f32-vclamp-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME f32-vclamp-test COMMAND f32-vclamp-test)
- 
-   ADD_EXECUTABLE(f32-vhswish-test test/f32-vhswish.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-vhswish-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f32-vhswish-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f32-vhswish-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f32-vhswish-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME f32-vhswish-test COMMAND f32-vhswish-test)
- 
-   ADD_EXECUTABLE(f32-vdiv-test test/f32-vdiv.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-vdiv-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f32-vdiv-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f32-vdiv-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f32-vdiv-test PRIVATE hardware-config logging microkernels-all)
-   ADD_TEST(NAME f32-vdiv-test COMMAND f32-vdiv-test)
- 
-   ADD_EXECUTABLE(f32-vdiv-minmax-test test/f32-vdiv-minmax.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-vdiv-minmax-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f32-vdiv-minmax-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f32-vdiv-minmax-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f32-vdiv-minmax-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME f32-vdiv-minmax-test COMMAND f32-vdiv-minmax-test)
- 
-   ADD_EXECUTABLE(f32-vdiv-relu-test test/f32-vdiv-relu.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-vdiv-relu-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f32-vdiv-relu-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f32-vdiv-relu-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f32-vdiv-relu-test PRIVATE hardware-config logging microkernels-all)
-   ADD_TEST(NAME f32-vdiv-relu-test COMMAND f32-vdiv-relu-test)
- 
-   ADD_EXECUTABLE(f32-vdivc-test test/f32-vdivc.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-vdivc-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f32-vdivc-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f32-vdivc-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f32-vdivc-test PRIVATE hardware-config logging microkernels-all)
-   ADD_TEST(NAME f32-vdivc-test COMMAND f32-vdivc-test)
- 
-   ADD_EXECUTABLE(f32-vdivc-minmax-test test/f32-vdivc-minmax.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-vdivc-minmax-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f32-vdivc-minmax-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f32-vdivc-minmax-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f32-vdivc-minmax-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME f32-vdivc-minmax-test COMMAND f32-vdivc-minmax-test)
- 
-   ADD_EXECUTABLE(f32-vdivc-relu-test test/f32-vdivc-relu.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-vdivc-relu-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f32-vdivc-relu-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f32-vdivc-relu-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f32-vdivc-relu-test PRIVATE hardware-config logging microkernels-all)
-   ADD_TEST(NAME f32-vdivc-relu-test COMMAND f32-vdivc-relu-test)
- 
-   ADD_EXECUTABLE(f32-vrdivc-test test/f32-vrdivc.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-vrdivc-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f32-vrdivc-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f32-vrdivc-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f32-vrdivc-test PRIVATE hardware-config logging microkernels-all)
-   ADD_TEST(NAME f32-vrdivc-test COMMAND f32-vrdivc-test)
- 
-   ADD_EXECUTABLE(f32-vrdivc-minmax-test test/f32-vrdivc-minmax.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-vrdivc-minmax-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f32-vrdivc-minmax-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f32-vrdivc-minmax-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f32-vrdivc-minmax-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME f32-vrdivc-minmax-test COMMAND f32-vrdivc-minmax-test)
- 
-   ADD_EXECUTABLE(f32-vrdivc-relu-test test/f32-vrdivc-relu.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-vrdivc-relu-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f32-vrdivc-relu-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f32-vrdivc-relu-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f32-vrdivc-relu-test PRIVATE hardware-config logging microkernels-all)
-   ADD_TEST(NAME f32-vrdivc-relu-test COMMAND f32-vrdivc-relu-test)
- 
-   ADD_EXECUTABLE(f32-velu-test test/f32-velu.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-velu-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f32-velu-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f32-velu-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f32-velu-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME f32-velu-test COMMAND f32-velu-test)
- 
-   ADD_EXECUTABLE(f32-vlrelu-test test/f32-vlrelu.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-vlrelu-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f32-vlrelu-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f32-vlrelu-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f32-vlrelu-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME f32-vlrelu-test COMMAND f32-vlrelu-test)
- 
-   ADD_EXECUTABLE(f32-vmax-test test/f32-vmax.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-vmax-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f32-vmax-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f32-vmax-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f32-vmax-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME f32-vmax-test COMMAND f32-vmax-test)
- 
-   ADD_EXECUTABLE(f32-vmaxc-test test/f32-vmaxc.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-vmaxc-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f32-vmaxc-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f32-vmaxc-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f32-vmaxc-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME f32-vmaxc-test COMMAND f32-vmaxc-test)
- 
-   ADD_EXECUTABLE(f32-vmin-test test/f32-vmin.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-vmin-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f32-vmin-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f32-vmin-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f32-vmin-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME f32-vmin-test COMMAND f32-vmin-test)
- 
-   ADD_EXECUTABLE(f32-vminc-test test/f32-vminc.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-vminc-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f32-vminc-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f32-vminc-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f32-vminc-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME f32-vminc-test COMMAND f32-vminc-test)
- 
-   ADD_EXECUTABLE(f32-vmul-test test/f32-vmul.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-vmul-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f32-vmul-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f32-vmul-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f32-vmul-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME f32-vmul-test COMMAND f32-vmul-test)
- 
-   ADD_EXECUTABLE(f32-vmul-minmax-test test/f32-vmul-minmax.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-vmul-minmax-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f32-vmul-minmax-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f32-vmul-minmax-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f32-vmul-minmax-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME f32-vmul-minmax-test COMMAND f32-vmul-minmax-test microparams-init)
- 
-   ADD_EXECUTABLE(f32-vmul-relu-test test/f32-vmul-relu.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-vmul-relu-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f32-vmul-relu-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f32-vmul-relu-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f32-vmul-relu-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME f32-vmul-relu-test COMMAND f32-vmul-relu-test)
- 
-   ADD_EXECUTABLE(f32-vmulc-test test/f32-vmulc.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-vmulc-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f32-vmulc-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f32-vmulc-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f32-vmulc-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME f32-vmulc-test COMMAND f32-vmulc-test)
- 
-   ADD_EXECUTABLE(f32-vmulc-minmax-test test/f32-vmulc-minmax.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-vmulc-minmax-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f32-vmulc-minmax-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f32-vmulc-minmax-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f32-vmulc-minmax-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME f32-vmulc-minmax-test COMMAND f32-vmulc-minmax-test)
- 
-   ADD_EXECUTABLE(f32-vmulc-relu-test test/f32-vmulc-relu.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-vmulc-relu-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f32-vmulc-relu-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f32-vmulc-relu-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f32-vmulc-relu-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME f32-vmulc-relu-test COMMAND f32-vmulc-relu-test)
- 
-   ADD_EXECUTABLE(f32-vmulcaddc-minmax-test test/f32-vmulcaddc-minmax.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-vmulcaddc-minmax-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f32-vmulcaddc-minmax-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f32-vmulcaddc-minmax-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f32-vmulcaddc-minmax-test PRIVATE hardware-config logging microkernels-all microparams-init packing)
-   ADD_TEST(NAME f32-vmulcaddc-minmax-test COMMAND f32-vmulcaddc-minmax-test)
- 
-   ADD_EXECUTABLE(f32-vneg-test test/f32-vneg.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-vneg-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f32-vneg-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f32-vneg-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f32-vneg-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME f32-vneg-test COMMAND f32-vneg-test)
- 
-   ADD_EXECUTABLE(f32-vrelu-test test/f32-vrelu.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-vrelu-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f32-vrelu-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f32-vrelu-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f32-vrelu-test PRIVATE hardware-config logging microkernels-all)
-   ADD_TEST(NAME f32-vrelu-test COMMAND f32-vrelu-test)
- 
-   ADD_EXECUTABLE(f32-vrndne-test test/f32-vrndne.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-vrndne-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f32-vrndne-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f32-vrndne-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f32-vrndne-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME f32-vrndne-test COMMAND f32-vrndne-test)
- 
-   ADD_EXECUTABLE(f32-vrndz-test test/f32-vrndz.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-vrndz-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f32-vrndz-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f32-vrndz-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f32-vrndz-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME f32-vrndz-test COMMAND f32-vrndz-test)
- 
-   ADD_EXECUTABLE(f32-vrndu-test test/f32-vrndu.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-vrndu-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f32-vrndu-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f32-vrndu-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f32-vrndu-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME f32-vrndu-test COMMAND f32-vrndu-test)
- 
-   ADD_EXECUTABLE(f32-vrndd-test test/f32-vrndd.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-vrndd-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f32-vrndd-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f32-vrndd-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f32-vrndd-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME f32-vrndd-test COMMAND f32-vrndd-test)
- 
-@@ -2304,91 +2271,91 @@
- 
-   ADD_EXECUTABLE(f32-vsigmoid-test test/f32-vsigmoid.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-vsigmoid-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f32-vsigmoid-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f32-vsigmoid-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f32-vsigmoid-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME f32-vsigmoid-test COMMAND f32-vsigmoid-test)
- 
-   ADD_EXECUTABLE(f32-vsqr-test test/f32-vsqr.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-vsqr-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f32-vsqr-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f32-vsqr-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f32-vsqr-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME f32-vsqr-test COMMAND f32-vsqr-test)
- 
-   ADD_EXECUTABLE(f32-vsqrdiff-test test/f32-vsqrdiff.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-vsqrdiff-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f32-vsqrdiff-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f32-vsqrdiff-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f32-vsqrdiff-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME f32-vsqrdiff-test COMMAND f32-vsqrdiff-test)
- 
-   ADD_EXECUTABLE(f32-vsqrdiffc-test test/f32-vsqrdiffc.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-vsqrdiffc-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f32-vsqrdiffc-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f32-vsqrdiffc-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f32-vsqrdiffc-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME f32-vsqrdiffc-test COMMAND f32-vsqrdiffc-test)
- 
-   ADD_EXECUTABLE(f32-vsqrt-test test/f32-vsqrt.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-vsqrt-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f32-vsqrt-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f32-vsqrt-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f32-vsqrt-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME f32-vsqrt-test COMMAND f32-vsqrt-test)
- 
-   ADD_EXECUTABLE(f32-vsub-test test/f32-vsub.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-vsub-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f32-vsub-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f32-vsub-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f32-vsub-test PRIVATE hardware-config logging microkernels-all)
-   ADD_TEST(NAME f32-vsub-test COMMAND f32-vsub-test)
- 
-   ADD_EXECUTABLE(f32-vsub-minmax-test test/f32-vsub-minmax.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-vsub-minmax-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f32-vsub-minmax-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f32-vsub-minmax-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f32-vsub-minmax-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME f32-vsub-minmax-test COMMAND f32-vsub-minmax-test)
- 
-   ADD_EXECUTABLE(f32-vsub-relu-test test/f32-vsub-relu.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-vsub-relu-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f32-vsub-relu-test PRIVATE fp16 pthreadpool gtest gtest_main microparams-init)
-+  TARGET_LINK_LIBRARIES(f32-vsub-relu-test PRIVATE gtest gtest_main microparams-init)
-   TARGET_LINK_LIBRARIES(f32-vsub-relu-test PRIVATE hardware-config logging microkernels-all)
-   ADD_TEST(NAME f32-vsub-relu-test COMMAND f32-vsub-relu-test)
- 
-   ADD_EXECUTABLE(f32-vsubc-test test/f32-vsubc.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-vsubc-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f32-vsubc-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f32-vsubc-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f32-vsubc-test PRIVATE hardware-config logging microkernels-all)
-   ADD_TEST(NAME f32-vsubc-test COMMAND f32-vsubc-test)
- 
-   ADD_EXECUTABLE(f32-vsubc-minmax-test test/f32-vsubc-minmax.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-vsubc-minmax-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f32-vsubc-minmax-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f32-vsubc-minmax-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f32-vsubc-minmax-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME f32-vsubc-minmax-test COMMAND f32-vsubc-minmax-test)
- 
-   ADD_EXECUTABLE(f32-vsubc-relu-test test/f32-vsubc-relu.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-vsubc-relu-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f32-vsubc-relu-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f32-vsubc-relu-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f32-vsubc-relu-test PRIVATE hardware-config logging microkernels-all)
-   ADD_TEST(NAME f32-vsubc-relu-test COMMAND f32-vsubc-relu-test)
- 
-   ADD_EXECUTABLE(f32-vrsubc-test test/f32-vrsubc.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-vrsubc-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f32-vrsubc-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f32-vrsubc-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f32-vrsubc-test PRIVATE hardware-config logging microkernels-all)
-   ADD_TEST(NAME f32-vrsubc-test COMMAND f32-vrsubc-test)
- 
-   ADD_EXECUTABLE(f32-vrsubc-minmax-test test/f32-vrsubc-minmax.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-vrsubc-minmax-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f32-vrsubc-minmax-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f32-vrsubc-minmax-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f32-vrsubc-minmax-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME f32-vrsubc-minmax-test COMMAND f32-vrsubc-minmax-test)
- 
-   ADD_EXECUTABLE(f32-vrsubc-relu-test test/f32-vrsubc-relu.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-vrsubc-relu-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(f32-vrsubc-relu-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f32-vrsubc-relu-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f32-vrsubc-relu-test PRIVATE hardware-config logging microkernels-all)
-   ADD_TEST(NAME f32-vrsubc-relu-test COMMAND f32-vrsubc-relu-test)
- 
-   ADD_EXECUTABLE(qc8-dwconv-unipass-minmax-fp32-test test/qc8-dwconv-unipass-minmax-fp32.cc)
-   TARGET_INCLUDE_DIRECTORIES(qc8-dwconv-unipass-minmax-fp32-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(qc8-dwconv-unipass-minmax-fp32-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(qc8-dwconv-unipass-minmax-fp32-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(qc8-dwconv-unipass-minmax-fp32-test PRIVATE hardware-config logging microkernels-all microparams-init packing)
-   ADD_TEST(NAME qc8-dwconv-unipass-minmax-fp32-test COMMAND qc8-dwconv-unipass-minmax-fp32-test)
- 
-@@ -2406,31 +2373,31 @@
- 
-   ADD_EXECUTABLE(qs8-dwconv-unipass-minmax-fp32-test test/qs8-dwconv-unipass-minmax-fp32.cc)
-   TARGET_INCLUDE_DIRECTORIES(qs8-dwconv-unipass-minmax-fp32-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(qs8-dwconv-unipass-minmax-fp32-test PRIVATE fp16 pthreadpool gtest gtest_main microparams-init)
-+  TARGET_LINK_LIBRARIES(qs8-dwconv-unipass-minmax-fp32-test PRIVATE gtest gtest_main microparams-init)
-   TARGET_LINK_LIBRARIES(qs8-dwconv-unipass-minmax-fp32-test PRIVATE hardware-config logging microkernels-all microparams-init packing)
-   ADD_TEST(NAME qs8-dwconv-unipass-minmax-fp32-test COMMAND qs8-dwconv-unipass-minmax-fp32-test)
- 
-   ADD_EXECUTABLE(qs8-dwconv-unipass-minmax-rndnu-test test/qs8-dwconv-unipass-minmax-rndnu.cc)
-   TARGET_INCLUDE_DIRECTORIES(qs8-dwconv-unipass-minmax-rndnu-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(qs8-dwconv-unipass-minmax-rndnu-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(qs8-dwconv-unipass-minmax-rndnu-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(qs8-dwconv-unipass-minmax-rndnu-test PRIVATE hardware-config logging microkernels-all microparams-init packing)
-   ADD_TEST(NAME qs8-dwconv-unipass-minmax-rndnu-test COMMAND qs8-dwconv-unipass-minmax-rndnu-test)
- 
-   ADD_EXECUTABLE(qs8-f32-vcvt-test test/f32-f16-vcvt.cc)
-   TARGET_INCLUDE_DIRECTORIES(qs8-f32-vcvt-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(qs8-f32-vcvt-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(qs8-f32-vcvt-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(qs8-f32-vcvt-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME qs8-f32-vcvt-test COMMAND qs8-f32-vcvt-test)
- 
-   ADD_EXECUTABLE(qs8-gavgpool-minmax-fp32-test test/qs8-gavgpool-minmax-fp32.cc)
-   TARGET_INCLUDE_DIRECTORIES(qs8-gavgpool-minmax-fp32-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(qs8-gavgpool-minmax-fp32-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(qs8-gavgpool-minmax-fp32-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(qs8-gavgpool-minmax-fp32-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME qs8-gavgpool-minmax-fp32-test COMMAND qs8-gavgpool-minmax-fp32-test)
- 
-   ADD_EXECUTABLE(qs8-gavgpool-minmax-rndnu-test test/qs8-gavgpool-minmax-rndnu.cc)
-   TARGET_INCLUDE_DIRECTORIES(qs8-gavgpool-minmax-rndnu-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(qs8-gavgpool-minmax-rndnu-test PRIVATE fp16 pthreadpool gtest gtest_main microparams-init)
-+  TARGET_LINK_LIBRARIES(qs8-gavgpool-minmax-rndnu-test PRIVATE gtest gtest_main microparams-init)
-   TARGET_LINK_LIBRARIES(qs8-gavgpool-minmax-rndnu-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME qs8-gavgpool-minmax-rndnu-test COMMAND qs8-gavgpool-minmax-rndnu-test)
- 
-@@ -2461,81 +2428,81 @@
-   ADD_EXECUTABLE(qs8-requantization-test test/qs8-requantization.cc)
-   SET_TARGET_PROPERTIES(qs8-requantization-test PROPERTIES CXX_EXTENSIONS YES)
-   TARGET_INCLUDE_DIRECTORIES(qs8-requantization-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(qs8-requantization-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(qs8-requantization-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(qs8-requantization-test PRIVATE hardware-config logging microkernels-all)
-   ADD_TEST(NAME qs8-requantization-test COMMAND qs8-requantization-test)
- 
-   ADD_EXECUTABLE(qs8-vadd-minmax-test test/qs8-vadd-minmax.cc)
-   TARGET_INCLUDE_DIRECTORIES(qs8-vadd-minmax-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(qs8-vadd-minmax-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(qs8-vadd-minmax-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(qs8-vadd-minmax-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME qs8-vadd-minmax-test COMMAND qs8-vadd-minmax-test)
- 
-   ADD_EXECUTABLE(qs8-vaddc-minmax-test test/qs8-vaddc-minmax.cc)
-   TARGET_INCLUDE_DIRECTORIES(qs8-vaddc-minmax-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(qs8-vaddc-minmax-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(qs8-vaddc-minmax-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(qs8-vaddc-minmax-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME qs8-vaddc-minmax-test COMMAND qs8-vaddc-minmax-test)
- 
-   ADD_EXECUTABLE(qs8-vcvt-test test/qs8-vcvt.cc)
-   TARGET_INCLUDE_DIRECTORIES(qs8-vcvt-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(qs8-vcvt-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(qs8-vcvt-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(qs8-vcvt-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME qs8-vcvt-test COMMAND qs8-vcvt-test)
- 
-   ADD_EXECUTABLE(qs8-vlrelu-test test/qs8-vlrelu.cc)
-   TARGET_INCLUDE_DIRECTORIES(qs8-vlrelu-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(qs8-vlrelu-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(qs8-vlrelu-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(qs8-vlrelu-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME qs8-vlrelu-test COMMAND qs8-vlrelu-test)
- 
-   ADD_EXECUTABLE(qs8-vmul-minmax-fp32-test test/qs8-vmul-minmax-fp32.cc)
-   SET_TARGET_PROPERTIES(qs8-vmul-minmax-fp32-test PROPERTIES CXX_EXTENSIONS YES)
-   TARGET_INCLUDE_DIRECTORIES(qs8-vmul-minmax-fp32-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(qs8-vmul-minmax-fp32-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(qs8-vmul-minmax-fp32-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(qs8-vmul-minmax-fp32-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME qs8-vmul-minmax-fp32-test COMMAND qs8-vmul-minmax-fp32-test)
- 
-   ADD_EXECUTABLE(qs8-vmulc-minmax-fp32-test test/qs8-vmulc-minmax-fp32.cc)
-   SET_TARGET_PROPERTIES(qs8-vmulc-minmax-fp32-test PROPERTIES CXX_EXTENSIONS YES)
-   TARGET_INCLUDE_DIRECTORIES(qs8-vmulc-minmax-fp32-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(qs8-vmulc-minmax-fp32-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(qs8-vmulc-minmax-fp32-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(qs8-vmulc-minmax-fp32-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME qs8-vmulc-minmax-fp32-test COMMAND qs8-vmulc-minmax-fp32-test)
- 
-   ADD_EXECUTABLE(qu8-avgpool-minmax-fp32-test test/qu8-avgpool-minmax-fp32.cc)
-   TARGET_INCLUDE_DIRECTORIES(qu8-avgpool-minmax-fp32-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(qu8-avgpool-minmax-fp32-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(qu8-avgpool-minmax-fp32-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(qu8-avgpool-minmax-fp32-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME qu8-avgpool-minmax-fp32-test COMMAND qu8-avgpool-minmax-fp32-test)
- 
-   ADD_EXECUTABLE(qu8-dwconv-unipass-minmax-fp32-test test/qu8-dwconv-unipass-minmax-fp32.cc)
-   TARGET_INCLUDE_DIRECTORIES(qu8-dwconv-unipass-minmax-fp32-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(qu8-dwconv-unipass-minmax-fp32-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(qu8-dwconv-unipass-minmax-fp32-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(qu8-dwconv-unipass-minmax-fp32-test PRIVATE hardware-config logging microkernels-all microparams-init packing)
-   ADD_TEST(NAME qu8-dwconv-unipass-minmax-fp32-test COMMAND qu8-dwconv-unipass-minmax-fp32-test)
- 
-   ADD_EXECUTABLE(qu8-dwconv-unipass-minmax-rndnu-test test/qu8-dwconv-unipass-minmax-rndnu.cc)
-   TARGET_INCLUDE_DIRECTORIES(qu8-dwconv-unipass-minmax-rndnu-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(qu8-dwconv-unipass-minmax-rndnu-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(qu8-dwconv-unipass-minmax-rndnu-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(qu8-dwconv-unipass-minmax-rndnu-test PRIVATE hardware-config logging microkernels-all microparams-init packing)
-   ADD_TEST(NAME qu8-dwconv-unipass-minmax-rndnu-test COMMAND qu8-dwconv-unipass-minmax-rndnu-test)
- 
-   ADD_EXECUTABLE(qu8-f32-vcvt-test test/f32-f16-vcvt.cc)
-   TARGET_INCLUDE_DIRECTORIES(qu8-f32-vcvt-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(qu8-f32-vcvt-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(qu8-f32-vcvt-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(qu8-f32-vcvt-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME qu8-f32-vcvt-test COMMAND qu8-f32-vcvt-test)
- 
-   ADD_EXECUTABLE(qu8-gavgpool-minmax-fp32-test test/qu8-gavgpool-minmax-fp32.cc)
-   TARGET_INCLUDE_DIRECTORIES(qu8-gavgpool-minmax-fp32-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(qu8-gavgpool-minmax-fp32-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(qu8-gavgpool-minmax-fp32-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(qu8-gavgpool-minmax-fp32-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME qu8-gavgpool-minmax-fp32-test COMMAND qu8-gavgpool-minmax-fp32-test)
- 
-   ADD_EXECUTABLE(qu8-gavgpool-minmax-rndnu-test test/qu8-gavgpool-minmax-rndnu.cc)
-   TARGET_INCLUDE_DIRECTORIES(qu8-gavgpool-minmax-rndnu-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(qu8-gavgpool-minmax-rndnu-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(qu8-gavgpool-minmax-rndnu-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(qu8-gavgpool-minmax-rndnu-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME qu8-gavgpool-minmax-rndnu-test COMMAND qu8-gavgpool-minmax-rndnu-test)
- 
-@@ -2566,161 +2533,161 @@
-   ADD_EXECUTABLE(qu8-requantization-test test/qu8-requantization.cc)
-   SET_TARGET_PROPERTIES(qu8-requantization-test PROPERTIES CXX_EXTENSIONS YES)
-   TARGET_INCLUDE_DIRECTORIES(qu8-requantization-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(qu8-requantization-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(qu8-requantization-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(qu8-requantization-test PRIVATE hardware-config logging microkernels-all)
-   ADD_TEST(NAME qu8-requantization-test COMMAND qu8-requantization-test)
- 
-   ADD_EXECUTABLE(qu8-vadd-minmax-test test/qu8-vadd-minmax.cc)
-   TARGET_INCLUDE_DIRECTORIES(qu8-vadd-minmax-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(qu8-vadd-minmax-test PRIVATE fp16 pthreadpool gtest gtest_main microparams-init)
-+  TARGET_LINK_LIBRARIES(qu8-vadd-minmax-test PRIVATE gtest gtest_main microparams-init)
-   TARGET_LINK_LIBRARIES(qu8-vadd-minmax-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME qu8-vadd-minmax-test COMMAND qu8-vadd-minmax-test)
- 
-   ADD_EXECUTABLE(qu8-vaddc-minmax-test test/qu8-vaddc-minmax.cc)
-   TARGET_INCLUDE_DIRECTORIES(qu8-vaddc-minmax-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(qu8-vaddc-minmax-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(qu8-vaddc-minmax-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(qu8-vaddc-minmax-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME qu8-vaddc-minmax-test COMMAND qu8-vaddc-minmax-test)
- 
-   ADD_EXECUTABLE(qu8-vcvt-test test/qu8-vcvt.cc)
-   TARGET_INCLUDE_DIRECTORIES(qu8-vcvt-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(qu8-vcvt-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(qu8-vcvt-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(qu8-vcvt-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME qu8-vcvt-test COMMAND qu8-vcvt-test)
- 
-   ADD_EXECUTABLE(qu8-vlrelu-test test/qu8-vlrelu.cc)
-   TARGET_INCLUDE_DIRECTORIES(qu8-vlrelu-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(qu8-vlrelu-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(qu8-vlrelu-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(qu8-vlrelu-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME qu8-vlrelu-test COMMAND qu8-vlrelu-test)
- 
-   ADD_EXECUTABLE(qu8-vmul-minmax-fp32-test test/qu8-vmul-minmax-fp32.cc)
-   SET_TARGET_PROPERTIES(qu8-vmul-minmax-fp32-test PROPERTIES CXX_EXTENSIONS YES)
-   TARGET_INCLUDE_DIRECTORIES(qu8-vmul-minmax-fp32-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(qu8-vmul-minmax-fp32-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(qu8-vmul-minmax-fp32-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(qu8-vmul-minmax-fp32-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME qu8-vmul-minmax-fp32-test COMMAND qu8-vmul-minmax-fp32-test)
- 
-   ADD_EXECUTABLE(qu8-vmul-minmax-rndnu-test test/qu8-vmul-minmax-rndnu.cc)
-   SET_TARGET_PROPERTIES(qu8-vmul-minmax-rndnu-test PROPERTIES CXX_EXTENSIONS YES)
-   TARGET_INCLUDE_DIRECTORIES(qu8-vmul-minmax-rndnu-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(qu8-vmul-minmax-rndnu-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(qu8-vmul-minmax-rndnu-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(qu8-vmul-minmax-rndnu-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME qu8-vmul-minmax-rndnu-test COMMAND qu8-vmul-minmax-rndnu-test)
- 
-   ADD_EXECUTABLE(qu8-vmulc-minmax-fp32-test test/qu8-vmulc-minmax-fp32.cc)
-   SET_TARGET_PROPERTIES(qu8-vmulc-minmax-fp32-test PROPERTIES CXX_EXTENSIONS YES)
-   TARGET_INCLUDE_DIRECTORIES(qu8-vmulc-minmax-fp32-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(qu8-vmulc-minmax-fp32-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(qu8-vmulc-minmax-fp32-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(qu8-vmulc-minmax-fp32-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME qu8-vmulc-minmax-fp32-test COMMAND qu8-vmulc-minmax-fp32-test)
- 
-   ADD_EXECUTABLE(qu8-vmulc-minmax-rndnu-test test/qu8-vmulc-minmax-rndnu.cc)
-   SET_TARGET_PROPERTIES(qu8-vmulc-minmax-rndnu-test PROPERTIES CXX_EXTENSIONS YES)
-   TARGET_INCLUDE_DIRECTORIES(qu8-vmulc-minmax-rndnu-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(qu8-vmulc-minmax-rndnu-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(qu8-vmulc-minmax-rndnu-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(qu8-vmulc-minmax-rndnu-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME qu8-vmulc-minmax-rndnu-test COMMAND qu8-vmulc-minmax-rndnu-test)
- 
-   ADD_EXECUTABLE(s16-rmaxabs-test test/s16-rmaxabs.cc)
-   TARGET_INCLUDE_DIRECTORIES(s16-rmaxabs-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(s16-rmaxabs-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(s16-rmaxabs-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(s16-rmaxabs-test PRIVATE hardware-config logging microkernels-all)
-   ADD_TEST(NAME s16-rmaxabs-test COMMAND s16-rmaxabs-test)
- 
-   ADD_EXECUTABLE(s16-window-test test/s16-window.cc)
-   TARGET_INCLUDE_DIRECTORIES(s16-window-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(s16-window-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(s16-window-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(s16-window-test PRIVATE hardware-config logging microkernels-all)
-   ADD_TEST(NAME s16-window-test COMMAND s16-window-test)
- 
-   ADD_EXECUTABLE(u32-filterbank-accumulate-test test/u32-filterbank-accumulate.cc)
-   TARGET_INCLUDE_DIRECTORIES(u32-filterbank-accumulate-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(u32-filterbank-accumulate-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(u32-filterbank-accumulate-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(u32-filterbank-accumulate-test PRIVATE hardware-config logging microkernels-all)
-   ADD_TEST(NAME u32-filterbank-accumulate-test COMMAND u32-filterbank-accumulate-test)
- 
-   ADD_EXECUTABLE(u32-filterbank-subtract-test test/u32-filterbank-subtract.cc)
-   TARGET_INCLUDE_DIRECTORIES(u32-filterbank-subtract-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(u32-filterbank-subtract-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(u32-filterbank-subtract-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(u32-filterbank-subtract-test PRIVATE hardware-config logging microkernels-all)
-   ADD_TEST(NAME u32-filterbank-subtract-test COMMAND u32-filterbank-subtract-test)
- 
-   ADD_EXECUTABLE(u32-vlog-test test/u32-vlog.cc)
-   TARGET_INCLUDE_DIRECTORIES(u32-vlog-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(u32-vlog-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(u32-vlog-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(u32-vlog-test PRIVATE hardware-config logging microkernels-all)
-   ADD_TEST(NAME u32-vlog-test COMMAND u32-vlog-test)
- 
-   ADD_EXECUTABLE(i16-vlshift-test test/i16-vlshift.cc)
-   TARGET_INCLUDE_DIRECTORIES(i16-vlshift-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(i16-vlshift-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(i16-vlshift-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(i16-vlshift-test PRIVATE hardware-config logging microkernels-all)
-   ADD_TEST(NAME i16-vlshift-test COMMAND i16-vlshift-test)
- 
-   ADD_EXECUTABLE(cs16-vsquareabs-test test/cs16-vsquareabs.cc)
-   TARGET_INCLUDE_DIRECTORIES(cs16-vsquareabs-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(cs16-vsquareabs-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(cs16-vsquareabs-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(cs16-vsquareabs-test PRIVATE hardware-config logging microkernels-all)
-   ADD_TEST(NAME cs16-vsquareabs-test COMMAND cs16-vsquareabs-test)
- 
-   ADD_EXECUTABLE(cs16-bfly4-test test/cs16-bfly4.cc)
-   TARGET_INCLUDE_DIRECTORIES(cs16-bfly4-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(cs16-bfly4-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(cs16-bfly4-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(cs16-bfly4-test PRIVATE hardware-config logging microkernels-all)
-   ADD_TEST(NAME cs16-bfly4-test COMMAND cs16-bfly4-test)
- 
-   ADD_EXECUTABLE(cs16-fftr-test test/cs16-fftr.cc)
-   TARGET_INCLUDE_DIRECTORIES(cs16-fftr-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(cs16-fftr-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(cs16-fftr-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(cs16-fftr-test PRIVATE hardware-config logging microkernels-all)
-   ADD_TEST(NAME cs16-fftr-test COMMAND cs16-fftr-test)
- 
-   ADD_EXECUTABLE(s8-ibilinear-test test/s8-ibilinear.cc)
-   TARGET_INCLUDE_DIRECTORIES(s8-ibilinear-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(s8-ibilinear-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(s8-ibilinear-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(s8-ibilinear-test PRIVATE hardware-config logging microkernels-all)
-   ADD_TEST(NAME s8-ibilinear-test COMMAND s8-ibilinear-test)
- 
-   ADD_EXECUTABLE(s8-maxpool-minmax-test test/s8-maxpool-minmax.cc)
-   TARGET_INCLUDE_DIRECTORIES(s8-maxpool-minmax-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(s8-maxpool-minmax-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(s8-maxpool-minmax-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(s8-maxpool-minmax-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME s8-maxpool-minmax-test COMMAND s8-maxpool-minmax-test)
- 
-   ADD_EXECUTABLE(s8-vclamp-test test/s8-vclamp.cc)
-   TARGET_INCLUDE_DIRECTORIES(s8-vclamp-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(s8-vclamp-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(s8-vclamp-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(s8-vclamp-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME s8-vclamp-test COMMAND s8-vclamp-test)
- 
-   ADD_EXECUTABLE(u8-lut32norm-test test/u8-lut32norm.cc)
-   TARGET_INCLUDE_DIRECTORIES(u8-lut32norm-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(u8-lut32norm-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(u8-lut32norm-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(u8-lut32norm-test PRIVATE hardware-config logging microkernels-all)
-   ADD_TEST(NAME u8-lut32norm-test COMMAND u8-lut32norm-test)
- 
-   ADD_EXECUTABLE(u8-ibilinear-test test/u8-ibilinear.cc)
-   TARGET_INCLUDE_DIRECTORIES(u8-ibilinear-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(u8-ibilinear-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(u8-ibilinear-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(u8-ibilinear-test PRIVATE hardware-config logging microkernels-all)
-   ADD_TEST(NAME u8-ibilinear-test COMMAND u8-ibilinear-test)
- 
-   ADD_EXECUTABLE(u8-maxpool-minmax-test test/u8-maxpool-minmax.cc)
-   TARGET_INCLUDE_DIRECTORIES(u8-maxpool-minmax-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(u8-maxpool-minmax-test PRIVATE fp16 pthreadpool gtest gtest_main microparams-init)
-+  TARGET_LINK_LIBRARIES(u8-maxpool-minmax-test PRIVATE gtest gtest_main microparams-init)
-   TARGET_LINK_LIBRARIES(u8-maxpool-minmax-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME u8-maxpool-minmax-test COMMAND u8-maxpool-minmax-test)
- 
-   ADD_EXECUTABLE(u8-rmax-test test/u8-rmax.cc)
-   TARGET_INCLUDE_DIRECTORIES(u8-rmax-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(u8-rmax-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(u8-rmax-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(u8-rmax-test PRIVATE hardware-config logging microkernels-all)
-   ADD_TEST(NAME u8-rmax-test COMMAND u8-rmax-test)
- 
-   ADD_EXECUTABLE(u8-vclamp-test test/u8-vclamp.cc)
-   TARGET_INCLUDE_DIRECTORIES(u8-vclamp-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(u8-vclamp-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(u8-vclamp-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(u8-vclamp-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME u8-vclamp-test COMMAND u8-vclamp-test)
- 
-@@ -2762,25 +2729,25 @@
- 
-   ADD_EXECUTABLE(x32-zip-test test/x32-zip.cc)
-   TARGET_INCLUDE_DIRECTORIES(x32-zip-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(x32-zip-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(x32-zip-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(x32-zip-test PRIVATE hardware-config logging microkernels-all)
-   ADD_TEST(NAME x32-zip-test COMMAND x32-zip-test)
- 
-   ADD_EXECUTABLE(x64-transpose-test test/x64-transpose.cc)
-   TARGET_INCLUDE_DIRECTORIES(x64-transpose-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(x64-transpose-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(x64-transpose-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(x64-transpose-test PRIVATE hardware-config logging microkernels-all microparams-init)
-   ADD_TEST(NAME x64-transpose-test COMMAND x64-transpose-test)
- 
-   ADD_EXECUTABLE(x8-lut-test test/x8-lut.cc)
-   TARGET_INCLUDE_DIRECTORIES(x8-lut-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(x8-lut-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(x8-lut-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(x8-lut-test PRIVATE hardware-config logging microkernels-all)
-   ADD_TEST(NAME x8-lut-test COMMAND x8-lut-test)
- 
-   ADD_EXECUTABLE(x8-zip-test test/x8-zip.cc)
-   TARGET_INCLUDE_DIRECTORIES(x8-zip-test PRIVATE include src test)
--  TARGET_LINK_LIBRARIES(x8-zip-test PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(x8-zip-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(x8-zip-test PRIVATE hardware-config logging microkernels-all)
-   ADD_TEST(NAME x8-zip-test COMMAND x8-zip-test)
- 
-@@ -2842,12 +2809,12 @@
- 
-   ADD_EXECUTABLE(packing-test test/packing.cc)
-   TARGET_INCLUDE_DIRECTORIES(packing-test PRIVATE include src)
--  TARGET_LINK_LIBRARIES(packing-test PRIVATE fp16 gtest gtest_main pthreadpool)
-+  TARGET_LINK_LIBRARIES(packing-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(packing-test PRIVATE XNNPACK microkernel-utils operator-utils packing)
- 
-   ADD_EXECUTABLE(indirection-test test/indirection.cc)
-   TARGET_INCLUDE_DIRECTORIES(indirection-test PRIVATE include src)
--  TARGET_LINK_LIBRARIES(indirection-test PRIVATE gtest gtest_main pthreadpool)
-+  TARGET_LINK_LIBRARIES(indirection-test PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(indirection-test PRIVATE XNNPACK indirection)
- ENDIF()
- 
-@@ -2864,7 +2831,7 @@
-   ADD_LIBRARY(bench-utils STATIC bench/utils.cc)
-   TARGET_INCLUDE_DIRECTORIES(bench-utils PRIVATE .)
-   TARGET_INCLUDE_DIRECTORIES(bench-utils PUBLIC include src)
--  TARGET_LINK_LIBRARIES(bench-utils PRIVATE benchmark cpuinfo pthreadpool)
-+  TARGET_LINK_LIBRARIES(bench-utils PRIVATE benchmark cpuinfo)
-   TARGET_LINK_LIBRARIES(bench-utils PRIVATE hardware-config)
-   IF(XNNPACK_BUILD_LIBRARY)
-     TARGET_LINK_LIBRARIES(bench-utils PRIVATE logging memory)
-@@ -2873,134 +2840,134 @@
-   # ---[ Build accuracy microbenchmarks
-   ADD_EXECUTABLE(f16-exp-ulp-eval eval/f16-exp-ulp.cc)
-   TARGET_INCLUDE_DIRECTORIES(f16-exp-ulp-eval PRIVATE . src)
--  TARGET_LINK_LIBRARIES(f16-exp-ulp-eval PRIVATE benchmark cpuinfo fp16 pthreadpool)
-+  TARGET_LINK_LIBRARIES(f16-exp-ulp-eval PRIVATE benchmark cpuinfo)
-   TARGET_LINK_LIBRARIES(f16-exp-ulp-eval PRIVATE bench-utils microkernels-all)
- 
-   ADD_EXECUTABLE(f16-expminus-ulp-eval eval/f16-expminus-ulp.cc)
-   TARGET_INCLUDE_DIRECTORIES(f16-expminus-ulp-eval PRIVATE . src)
--  TARGET_LINK_LIBRARIES(f16-expminus-ulp-eval PRIVATE benchmark cpuinfo fp16 pthreadpool)
-+  TARGET_LINK_LIBRARIES(f16-expminus-ulp-eval PRIVATE benchmark cpuinfo)
-   TARGET_LINK_LIBRARIES(f16-expminus-ulp-eval PRIVATE bench-utils microkernels-all)
- 
-   ADD_EXECUTABLE(f16-expm1minus-ulp-eval eval/f16-expm1minus-ulp.cc)
-   TARGET_INCLUDE_DIRECTORIES(f16-expm1minus-ulp-eval PRIVATE . src)
--  TARGET_LINK_LIBRARIES(f16-expm1minus-ulp-eval PRIVATE benchmark cpuinfo fp16 pthreadpool)
-+  TARGET_LINK_LIBRARIES(f16-expm1minus-ulp-eval PRIVATE benchmark cpuinfo)
-   TARGET_LINK_LIBRARIES(f16-expm1minus-ulp-eval PRIVATE bench-utils microkernels-all)
- 
-   ADD_EXECUTABLE(f16-sigmoid-ulp-eval eval/f16-sigmoid-ulp.cc)
-   TARGET_INCLUDE_DIRECTORIES(f16-sigmoid-ulp-eval PRIVATE . src)
--  TARGET_LINK_LIBRARIES(f16-sigmoid-ulp-eval PRIVATE benchmark cpuinfo fp16 pthreadpool)
-+  TARGET_LINK_LIBRARIES(f16-sigmoid-ulp-eval PRIVATE benchmark cpuinfo)
-   TARGET_LINK_LIBRARIES(f16-sigmoid-ulp-eval PRIVATE bench-utils microkernels-all)
- 
-   ADD_EXECUTABLE(f16-sqrt-ulp-eval eval/f16-sqrt-ulp.cc)
-   TARGET_INCLUDE_DIRECTORIES(f16-sqrt-ulp-eval PRIVATE . src)
--  TARGET_LINK_LIBRARIES(f16-sqrt-ulp-eval PRIVATE benchmark cpuinfo fp16 pthreadpool)
-+  TARGET_LINK_LIBRARIES(f16-sqrt-ulp-eval PRIVATE benchmark cpuinfo)
-   TARGET_LINK_LIBRARIES(f16-sqrt-ulp-eval PRIVATE bench-utils microkernels-all)
- 
-   ADD_EXECUTABLE(f32-exp-ulp-eval eval/f32-exp-ulp.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-exp-ulp-eval PRIVATE . src)
--  TARGET_LINK_LIBRARIES(f32-exp-ulp-eval PRIVATE benchmark cpuinfo fp16 pthreadpool)
-+  TARGET_LINK_LIBRARIES(f32-exp-ulp-eval PRIVATE benchmark cpuinfo)
-   TARGET_LINK_LIBRARIES(f32-exp-ulp-eval PRIVATE bench-utils microkernels-all)
- 
-   ADD_EXECUTABLE(f32-expminus-ulp-eval eval/f32-expminus-ulp.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-expminus-ulp-eval PRIVATE . src)
--  TARGET_LINK_LIBRARIES(f32-expminus-ulp-eval PRIVATE benchmark cpuinfo fp16 pthreadpool)
-+  TARGET_LINK_LIBRARIES(f32-expminus-ulp-eval PRIVATE benchmark cpuinfo)
-   TARGET_LINK_LIBRARIES(f32-expminus-ulp-eval PRIVATE bench-utils microkernels-all)
- 
-   ADD_EXECUTABLE(f32-expm1minus-ulp-eval eval/f32-expm1minus-ulp.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-expm1minus-ulp-eval PRIVATE . src)
--  TARGET_LINK_LIBRARIES(f32-expm1minus-ulp-eval PRIVATE benchmark cpuinfo fp16 pthreadpool)
-+  TARGET_LINK_LIBRARIES(f32-expm1minus-ulp-eval PRIVATE benchmark cpuinfo)
-   TARGET_LINK_LIBRARIES(f32-expm1minus-ulp-eval PRIVATE bench-utils microkernels-all)
- 
-   ADD_EXECUTABLE(f32-extexp-ulp-eval eval/f32-extexp-ulp.cc)
-   SET_TARGET_PROPERTIES(f32-extexp-ulp-eval PROPERTIES CXX_EXTENSIONS YES)
-   TARGET_INCLUDE_DIRECTORIES(f32-extexp-ulp-eval PRIVATE . src)
--  TARGET_LINK_LIBRARIES(f32-extexp-ulp-eval PRIVATE benchmark cpuinfo fp16 pthreadpool)
-+  TARGET_LINK_LIBRARIES(f32-extexp-ulp-eval PRIVATE benchmark cpuinfo)
-   TARGET_LINK_LIBRARIES(f32-extexp-ulp-eval PRIVATE bench-utils microkernels-all)
- 
-   ADD_EXECUTABLE(f32-sigmoid-ulp-eval eval/f32-sigmoid-ulp.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-sigmoid-ulp-eval PRIVATE . src)
--  TARGET_LINK_LIBRARIES(f32-sigmoid-ulp-eval PRIVATE benchmark cpuinfo fp16 pthreadpool)
-+  TARGET_LINK_LIBRARIES(f32-sigmoid-ulp-eval PRIVATE benchmark cpuinfo)
-   TARGET_LINK_LIBRARIES(f32-sigmoid-ulp-eval PRIVATE bench-utils microkernels-all)
- 
-   ADD_EXECUTABLE(f32-sqrt-ulp-eval eval/f32-sqrt-ulp.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-sqrt-ulp-eval PRIVATE . src)
--  TARGET_LINK_LIBRARIES(f32-sqrt-ulp-eval PRIVATE benchmark cpuinfo fp16 pthreadpool)
-+  TARGET_LINK_LIBRARIES(f32-sqrt-ulp-eval PRIVATE benchmark cpuinfo)
-   TARGET_LINK_LIBRARIES(f32-sqrt-ulp-eval PRIVATE bench-utils microkernels-all)
- 
-   ADD_EXECUTABLE(f32-tanh-ulp-eval eval/f32-tanh-ulp.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-tanh-ulp-eval PRIVATE . src)
--  TARGET_LINK_LIBRARIES(f32-tanh-ulp-eval PRIVATE benchmark cpuinfo fp16 pthreadpool)
-+  TARGET_LINK_LIBRARIES(f32-tanh-ulp-eval PRIVATE benchmark cpuinfo)
-   TARGET_LINK_LIBRARIES(f32-tanh-ulp-eval PRIVATE bench-utils microkernels-all)
- 
-   # ---[ Build accuracy tests
-   ADD_EXECUTABLE(f16-sqrt-eval eval/f16-sqrt.cc)
-   TARGET_INCLUDE_DIRECTORIES(f16-sqrt-eval PRIVATE include src)
--  TARGET_LINK_LIBRARIES(f16-sqrt-eval PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f16-sqrt-eval PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f16-sqrt-eval PRIVATE hardware-config logging microkernels-all)
- 
-   ADD_EXECUTABLE(f16-f32-cvt-eval eval/f16-f32-cvt.cc)
-   TARGET_INCLUDE_DIRECTORIES(f16-f32-cvt-eval PRIVATE include src)
--  TARGET_LINK_LIBRARIES(f16-f32-cvt-eval PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f16-f32-cvt-eval PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f16-f32-cvt-eval PRIVATE hardware-config logging microkernels-all)
- 
-   ADD_EXECUTABLE(f32-f16-cvt-eval eval/f32-f16-cvt.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-f16-cvt-eval PRIVATE include src)
--  TARGET_LINK_LIBRARIES(f32-f16-cvt-eval PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f32-f16-cvt-eval PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f32-f16-cvt-eval PRIVATE hardware-config logging microkernels-all)
- 
-   ADD_EXECUTABLE(f32-qs8-cvt-eval eval/f32-qs8-cvt.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-qs8-cvt-eval PRIVATE include src)
--  TARGET_LINK_LIBRARIES(f32-qs8-cvt-eval PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f32-qs8-cvt-eval PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f32-qs8-cvt-eval PRIVATE hardware-config logging microkernels-all)
- 
-   ADD_EXECUTABLE(f32-qu8-cvt-eval eval/f32-qu8-cvt.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-qu8-cvt-eval PRIVATE include src)
--  TARGET_LINK_LIBRARIES(f32-qu8-cvt-eval PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f32-qu8-cvt-eval PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f32-qu8-cvt-eval PRIVATE hardware-config logging microkernels-all)
- 
-   ADD_EXECUTABLE(f32-exp-eval eval/f32-exp.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-exp-eval PRIVATE include src)
--  TARGET_LINK_LIBRARIES(f32-exp-eval PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f32-exp-eval PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f32-exp-eval PRIVATE hardware-config logging microkernels-all)
- 
-   ADD_EXECUTABLE(f32-expm1minus-eval eval/f32-expm1minus.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-expm1minus-eval PRIVATE include src)
--  TARGET_LINK_LIBRARIES(f32-expm1minus-eval PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f32-expm1minus-eval PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f32-expm1minus-eval PRIVATE hardware-config logging microkernels-all)
- 
-   ADD_EXECUTABLE(f32-expminus-eval eval/f32-expminus.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-expminus-eval PRIVATE include src)
--  TARGET_LINK_LIBRARIES(f32-expminus-eval PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f32-expminus-eval PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f32-expminus-eval PRIVATE hardware-config logging microkernels-all)
- 
-   ADD_EXECUTABLE(f32-roundne-eval eval/f32-roundne.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-roundne-eval PRIVATE include src)
--  TARGET_LINK_LIBRARIES(f32-roundne-eval PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f32-roundne-eval PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f32-roundne-eval PRIVATE hardware-config logging microkernels-all)
- 
-   ADD_EXECUTABLE(f32-roundd-eval eval/f32-roundd.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-roundd-eval PRIVATE include src)
--  TARGET_LINK_LIBRARIES(f32-roundd-eval PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f32-roundd-eval PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f32-roundd-eval PRIVATE hardware-config logging microkernels-all)
- 
-   ADD_EXECUTABLE(f32-roundu-eval eval/f32-roundu.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-roundu-eval PRIVATE include src)
--  TARGET_LINK_LIBRARIES(f32-roundu-eval PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f32-roundu-eval PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f32-roundu-eval PRIVATE hardware-config logging microkernels-all)
- 
-   ADD_EXECUTABLE(f32-roundz-eval eval/f32-roundz.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-roundz-eval PRIVATE include src)
--  TARGET_LINK_LIBRARIES(f32-roundz-eval PRIVATE fp16 pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(f32-roundz-eval PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(f32-roundz-eval PRIVATE hardware-config logging microkernels-all)
- 
-   ADD_EXECUTABLE(u32-sqrt-eval eval/u32-sqrt.cc)
-   TARGET_INCLUDE_DIRECTORIES(u32-sqrt-eval PRIVATE include src)
--  TARGET_LINK_LIBRARIES(u32-sqrt-eval PRIVATE pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(u32-sqrt-eval PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(u32-sqrt-eval PRIVATE hardware-config logging microkernels-all)
- 
-   ADD_EXECUTABLE(u64-sqrt-eval eval/u64-sqrt.cc)
-   TARGET_INCLUDE_DIRECTORIES(u64-sqrt-eval PRIVATE include src)
--  TARGET_LINK_LIBRARIES(u64-sqrt-eval PRIVATE pthreadpool gtest gtest_main)
-+  TARGET_LINK_LIBRARIES(u64-sqrt-eval PRIVATE gtest gtest_main)
-   TARGET_LINK_LIBRARIES(u64-sqrt-eval PRIVATE hardware-config logging microkernels-all)
- 
-   IF(XNNPACK_BUILD_LIBRARY)
-@@ -3030,7 +2997,7 @@
-       models/qu8-mobilenet-v2.cc)
-     SET_TARGET_PROPERTIES(bench-models PROPERTIES CXX_EXTENSIONS YES)
-     TARGET_INCLUDE_DIRECTORIES(bench-models PRIVATE .)
--    TARGET_LINK_LIBRARIES(bench-models PRIVATE fp16 benchmark)
-+    TARGET_LINK_LIBRARIES(bench-models PRIVATE benchmark)
-     TARGET_LINK_LIBRARIES(bench-models PRIVATE XNNPACK bench-utils)
- 
-     ADD_EXECUTABLE(end2end-bench bench/end2end.cc)
-@@ -3039,7 +3006,7 @@
- 
-     ADD_EXECUTABLE(f16-gemm-e2e-bench bench/f16-gemm-e2e.cc)
-     TARGET_INCLUDE_DIRECTORIES(f16-gemm-e2e-bench PRIVATE . src)
--    TARGET_LINK_LIBRARIES(f16-gemm-e2e-bench PRIVATE fp16 benchmark)
-+    TARGET_LINK_LIBRARIES(f16-gemm-e2e-bench PRIVATE benchmark)
-     TARGET_LINK_LIBRARIES(f16-gemm-e2e-bench PRIVATE XNNPACK bench-models bench-utils hardware-config logging microkernels-all microparams-init)
- 
-     ADD_EXECUTABLE(f32-dwconv-e2e-bench bench/f32-dwconv-e2e.cc)
-@@ -3049,33 +3016,33 @@
- 
-     ADD_EXECUTABLE(f32-gemm-e2e-bench bench/f32-gemm-e2e.cc)
-     TARGET_INCLUDE_DIRECTORIES(f32-gemm-e2e-bench PRIVATE . src)
--    TARGET_LINK_LIBRARIES(f32-gemm-e2e-bench PRIVATE fp16 benchmark)
-+    TARGET_LINK_LIBRARIES(f32-gemm-e2e-bench PRIVATE benchmark)
-     TARGET_LINK_LIBRARIES(f32-gemm-e2e-bench PRIVATE XNNPACK bench-models bench-utils hardware-config logging microkernels-all microparams-init)
- 
-     ADD_EXECUTABLE(qs8-dwconv-e2e-bench bench/qs8-dwconv-e2e.cc)
-     TARGET_INCLUDE_DIRECTORIES(qs8-dwconv-e2e-bench PRIVATE . src)
--    TARGET_LINK_LIBRARIES(qs8-dwconv-e2e-bench PRIVATE fp16 benchmark)
-+    TARGET_LINK_LIBRARIES(qs8-dwconv-e2e-bench PRIVATE benchmark)
-     TARGET_LINK_LIBRARIES(qs8-dwconv-e2e-bench PRIVATE XNNPACK bench-models bench-utils hardware-config logging microkernels-all microparams-init)
- 
-     ADD_EXECUTABLE(qs8-gemm-e2e-bench bench/qs8-gemm-e2e.cc)
-     TARGET_INCLUDE_DIRECTORIES(qs8-gemm-e2e-bench PRIVATE . src)
--    TARGET_LINK_LIBRARIES(qs8-gemm-e2e-bench PRIVATE fp16 benchmark)
-+    TARGET_LINK_LIBRARIES(qs8-gemm-e2e-bench PRIVATE benchmark)
-     TARGET_LINK_LIBRARIES(qs8-gemm-e2e-bench PRIVATE XNNPACK bench-models bench-utils hardware-config logging microkernels-all microparams-init)
- 
-     ADD_EXECUTABLE(qu8-gemm-e2e-bench bench/qu8-gemm-e2e.cc)
-     TARGET_INCLUDE_DIRECTORIES(qu8-gemm-e2e-bench PRIVATE . src)
--    TARGET_LINK_LIBRARIES(qu8-gemm-e2e-bench PRIVATE fp16 benchmark)
-+    TARGET_LINK_LIBRARIES(qu8-gemm-e2e-bench PRIVATE benchmark)
-     TARGET_LINK_LIBRARIES(qu8-gemm-e2e-bench PRIVATE XNNPACK bench-models bench-utils hardware-config logging microkernels-all microparams-init)
- 
-     ADD_EXECUTABLE(qu8-dwconv-e2e-bench bench/qu8-dwconv-e2e.cc)
-     TARGET_INCLUDE_DIRECTORIES(qu8-dwconv-e2e-bench PRIVATE . src)
--    TARGET_LINK_LIBRARIES(qu8-dwconv-e2e-bench PRIVATE fp16 benchmark)
-+    TARGET_LINK_LIBRARIES(qu8-dwconv-e2e-bench PRIVATE benchmark)
-     TARGET_LINK_LIBRARIES(qu8-dwconv-e2e-bench PRIVATE XNNPACK bench-models bench-utils hardware-config logging microkernels-all microparams-init)
- 
-     # ---[ Build operator-level microbenchmarks
-     ADD_EXECUTABLE(abs-bench bench/abs.cc)
-     TARGET_INCLUDE_DIRECTORIES(abs-bench PRIVATE .)
--    TARGET_LINK_LIBRARIES(abs-bench PRIVATE XNNPACK fp16 benchmark bench-utils)
-+    TARGET_LINK_LIBRARIES(abs-bench PRIVATE XNNPACK benchmark bench-utils)
- 
-     ADD_EXECUTABLE(average-pooling-bench bench/average-pooling.cc)
-     TARGET_INCLUDE_DIRECTORIES(average-pooling-bench PRIVATE .)
-@@ -3083,11 +3050,11 @@
- 
-     ADD_EXECUTABLE(bankers-rounding-bench bench/bankers-rounding.cc)
-     TARGET_INCLUDE_DIRECTORIES(bankers-rounding-bench PRIVATE .)
--    TARGET_LINK_LIBRARIES(bankers-rounding-bench PRIVATE XNNPACK fp16 benchmark bench-utils)
-+    TARGET_LINK_LIBRARIES(bankers-rounding-bench PRIVATE XNNPACK benchmark bench-utils)
- 
-     ADD_EXECUTABLE(ceiling-bench bench/ceiling.cc)
-     TARGET_INCLUDE_DIRECTORIES(ceiling-bench PRIVATE .)
--    TARGET_LINK_LIBRARIES(ceiling-bench PRIVATE XNNPACK fp16 benchmark bench-utils)
-+    TARGET_LINK_LIBRARIES(ceiling-bench PRIVATE XNNPACK benchmark bench-utils)
- 
-     ADD_EXECUTABLE(channel-shuffle-bench bench/channel-shuffle.cc)
-     TARGET_INCLUDE_DIRECTORIES(channel-shuffle-bench PRIVATE .)
-@@ -3095,11 +3062,11 @@
- 
-     ADD_EXECUTABLE(convert-bench bench/convert.cc)
-     TARGET_INCLUDE_DIRECTORIES(convert-bench PRIVATE .)
--    TARGET_LINK_LIBRARIES(convert-bench PRIVATE XNNPACK fp16 benchmark bench-utils)
-+    TARGET_LINK_LIBRARIES(convert-bench PRIVATE XNNPACK benchmark bench-utils)
- 
-     ADD_EXECUTABLE(convolution-bench bench/convolution.cc)
-     TARGET_INCLUDE_DIRECTORIES(convolution-bench PRIVATE .)
--    TARGET_LINK_LIBRARIES(convolution-bench PRIVATE XNNPACK fp16 benchmark bench-utils)
-+    TARGET_LINK_LIBRARIES(convolution-bench PRIVATE XNNPACK benchmark bench-utils)
- 
-     ADD_EXECUTABLE(deconvolution-bench bench/deconvolution.cc)
-     TARGET_INCLUDE_DIRECTORIES(deconvolution-bench PRIVATE .)
-@@ -3107,23 +3074,23 @@
- 
-     ADD_EXECUTABLE(elu-bench bench/elu.cc)
-     TARGET_INCLUDE_DIRECTORIES(elu-bench PRIVATE .)
--    TARGET_LINK_LIBRARIES(elu-bench PRIVATE XNNPACK fp16 benchmark bench-utils)
-+    TARGET_LINK_LIBRARIES(elu-bench PRIVATE XNNPACK benchmark bench-utils)
- 
-     ADD_EXECUTABLE(floor-bench bench/floor.cc)
-     TARGET_INCLUDE_DIRECTORIES(floor-bench PRIVATE .)
--    TARGET_LINK_LIBRARIES(floor-bench PRIVATE XNNPACK fp16 benchmark bench-utils)
-+    TARGET_LINK_LIBRARIES(floor-bench PRIVATE XNNPACK benchmark bench-utils)
- 
-     ADD_EXECUTABLE(global-average-pooling-bench bench/global-average-pooling.cc)
-     TARGET_INCLUDE_DIRECTORIES(global-average-pooling-bench PRIVATE .)
--    TARGET_LINK_LIBRARIES(global-average-pooling-bench PRIVATE XNNPACK fp16 benchmark bench-utils)
-+    TARGET_LINK_LIBRARIES(global-average-pooling-bench PRIVATE XNNPACK benchmark bench-utils)
- 
-     ADD_EXECUTABLE(hardswish-bench bench/hardswish.cc)
-     TARGET_INCLUDE_DIRECTORIES(hardswish-bench PRIVATE .)
--    TARGET_LINK_LIBRARIES(hardswish-bench PRIVATE XNNPACK fp16 benchmark bench-utils)
-+    TARGET_LINK_LIBRARIES(hardswish-bench PRIVATE XNNPACK benchmark bench-utils)
- 
-     ADD_EXECUTABLE(leaky-relu-bench bench/leaky-relu.cc)
-     TARGET_INCLUDE_DIRECTORIES(leaky-relu-bench PRIVATE .)
--    TARGET_LINK_LIBRARIES(leaky-relu-bench PRIVATE XNNPACK fp16 benchmark bench-utils)
-+    TARGET_LINK_LIBRARIES(leaky-relu-bench PRIVATE XNNPACK benchmark bench-utils)
- 
-     ADD_EXECUTABLE(max-pooling-bench bench/max-pooling.cc)
-     TARGET_INCLUDE_DIRECTORIES(max-pooling-bench PRIVATE .)
-@@ -3139,7 +3106,7 @@
- 
-     ADD_EXECUTABLE(sigmoid-bench bench/sigmoid.cc)
-     TARGET_INCLUDE_DIRECTORIES(sigmoid-bench PRIVATE .)
--    TARGET_LINK_LIBRARIES(sigmoid-bench PRIVATE XNNPACK fp16 benchmark bench-utils)
-+    TARGET_LINK_LIBRARIES(sigmoid-bench PRIVATE XNNPACK benchmark bench-utils)
- 
-     ADD_EXECUTABLE(softmax-bench bench/softmax.cc)
-     TARGET_INCLUDE_DIRECTORIES(softmax-bench PRIVATE .)
-@@ -3161,378 +3128,378 @@
-   # ---[ Build microkernel-level microbenchmarks
-   ADD_EXECUTABLE(bf16-gemm-bench bench/bf16-gemm.cc)
-   TARGET_INCLUDE_DIRECTORIES(bf16-gemm-bench PRIVATE . include src)
--  TARGET_LINK_LIBRARIES(bf16-gemm-bench PRIVATE benchmark fp16 pthreadpool)
-+  TARGET_LINK_LIBRARIES(bf16-gemm-bench PRIVATE benchmark)
-   TARGET_LINK_LIBRARIES(bf16-gemm-bench PRIVATE bench-utils hardware-config logging microkernels-all microparams-init packing)
- 
-   ADD_EXECUTABLE(f16-conv-hwc2chw-bench bench/f16-conv-hwc2chw.cc)
-   TARGET_INCLUDE_DIRECTORIES(f16-conv-hwc2chw-bench PRIVATE . include src)
--  TARGET_LINK_LIBRARIES(f16-conv-hwc2chw-bench PRIVATE benchmark fp16 pthreadpool)
-+  TARGET_LINK_LIBRARIES(f16-conv-hwc2chw-bench PRIVATE benchmark)
-   TARGET_LINK_LIBRARIES(f16-conv-hwc2chw-bench PRIVATE bench-utils hardware-config logging microkernels-all microparams-init packing)
- 
-   ADD_EXECUTABLE(f16-dwconv-bench bench/f16-dwconv.cc)
-   TARGET_INCLUDE_DIRECTORIES(f16-dwconv-bench PRIVATE . include src)
--  TARGET_LINK_LIBRARIES(f16-dwconv-bench PRIVATE benchmark fp16 pthreadpool)
-+  TARGET_LINK_LIBRARIES(f16-dwconv-bench PRIVATE benchmark)
-   TARGET_LINK_LIBRARIES(f16-dwconv-bench PRIVATE bench-utils indirection hardware-config logging microkernels-all microparams-init packing)
- 
-   ADD_EXECUTABLE(f16-dwconv2d-chw-bench bench/f16-dwconv2d-chw.cc)
-   TARGET_INCLUDE_DIRECTORIES(f16-dwconv2d-chw-bench PRIVATE . include src)
--  TARGET_LINK_LIBRARIES(f16-dwconv2d-chw-bench PRIVATE benchmark fp16 pthreadpool)
-+  TARGET_LINK_LIBRARIES(f16-dwconv2d-chw-bench PRIVATE benchmark)
-   TARGET_LINK_LIBRARIES(f16-dwconv2d-chw-bench PRIVATE bench-utils hardware-config logging microkernels-all microparams-init packing)
- 
-   ADD_EXECUTABLE(f16-gavgpool-cw-bench bench/f16-gavgpool-cw.cc)
-   TARGET_INCLUDE_DIRECTORIES(f16-gavgpool-cw-bench PRIVATE . include src)
--  TARGET_LINK_LIBRARIES(f16-gavgpool-cw-bench PRIVATE benchmark fp16 pthreadpool)
-+  TARGET_LINK_LIBRARIES(f16-gavgpool-cw-bench PRIVATE benchmark)
-   TARGET_LINK_LIBRARIES(f16-gavgpool-cw-bench PRIVATE bench-utils hardware-config logging microkernels-all microparams-init)
- 
-   ADD_EXECUTABLE(f16-gemm-bench bench/f16-gemm.cc)
-   TARGET_INCLUDE_DIRECTORIES(f16-gemm-bench PRIVATE . include src)
--  TARGET_LINK_LIBRARIES(f16-gemm-bench PRIVATE benchmark fp16 pthreadpool)
-+  TARGET_LINK_LIBRARIES(f16-gemm-bench PRIVATE benchmark)
-   TARGET_LINK_LIBRARIES(f16-gemm-bench PRIVATE bench-utils hardware-config logging microkernels-all microparams-init packing)
- 
-   ADD_EXECUTABLE(f16-igemm-bench bench/f16-igemm.cc)
-   TARGET_INCLUDE_DIRECTORIES(f16-igemm-bench PRIVATE . include src)
--  TARGET_LINK_LIBRARIES(f16-igemm-bench PRIVATE benchmark fp16 pthreadpool)
-+  TARGET_LINK_LIBRARIES(f16-igemm-bench PRIVATE benchmark)
-   TARGET_LINK_LIBRARIES(f16-igemm-bench PRIVATE bench-utils indirection hardware-config logging microkernels-all microparams-init packing)
- 
-   ADD_EXECUTABLE(f16-raddstoreexpminusmax-bench bench/f16-raddstoreexpminusmax.cc)
-   TARGET_INCLUDE_DIRECTORIES(f16-raddstoreexpminusmax-bench PRIVATE . include src)
--  TARGET_LINK_LIBRARIES(f16-raddstoreexpminusmax-bench PRIVATE benchmark fp16 pthreadpool)
-+  TARGET_LINK_LIBRARIES(f16-raddstoreexpminusmax-bench PRIVATE benchmark)
-   TARGET_LINK_LIBRARIES(f16-raddstoreexpminusmax-bench PRIVATE bench-utils hardware-config logging microkernels-all microparams-init)
- 
-   ADD_EXECUTABLE(f16-spmm-bench bench/f16-spmm.cc)
-   TARGET_INCLUDE_DIRECTORIES(f16-spmm-bench PRIVATE . include src)
--  TARGET_LINK_LIBRARIES(f16-spmm-bench PRIVATE benchmark fp16 pthreadpool)
-+  TARGET_LINK_LIBRARIES(f16-spmm-bench PRIVATE benchmark)
-   TARGET_LINK_LIBRARIES(f16-spmm-bench PRIVATE bench-utils hardware-config logging microkernels-all microparams-init)
- 
-   ADD_EXECUTABLE(f16-velu-bench bench/f16-velu.cc)
-   TARGET_INCLUDE_DIRECTORIES(f16-velu-bench PRIVATE . include src)
--  TARGET_LINK_LIBRARIES(f16-velu-bench PRIVATE benchmark fp16 pthreadpool)
-+  TARGET_LINK_LIBRARIES(f16-velu-bench PRIVATE benchmark)
-   TARGET_LINK_LIBRARIES(f16-velu-bench PRIVATE bench-utils hardware-config logging microkernels-all microparams-init)
- 
-   ADD_EXECUTABLE(f16-vsigmoid-bench bench/f16-vsigmoid.cc)
-   TARGET_INCLUDE_DIRECTORIES(f16-vsigmoid-bench PRIVATE . include src)
--  TARGET_LINK_LIBRARIES(f16-vsigmoid-bench PRIVATE benchmark fp16 pthreadpool)
-+  TARGET_LINK_LIBRARIES(f16-vsigmoid-bench PRIVATE benchmark)
-   TARGET_LINK_LIBRARIES(f16-vsigmoid-bench PRIVATE bench-utils hardware-config logging microkernels-all microparams-init)
- 
-   ADD_EXECUTABLE(f16-vsqrt-bench bench/f16-vsqrt.cc)
-   TARGET_INCLUDE_DIRECTORIES(f16-vsqrt-bench PRIVATE . include src)
--  TARGET_LINK_LIBRARIES(f16-vsqrt-bench PRIVATE benchmark fp16 pthreadpool)
-+  TARGET_LINK_LIBRARIES(f16-vsqrt-bench PRIVATE benchmark)
-   TARGET_LINK_LIBRARIES(f16-vsqrt-bench PRIVATE bench-utils microkernels-all)
- 
-   ADD_EXECUTABLE(f16-f32-vcvt-bench bench/f16-f32-vcvt.cc)
-   TARGET_INCLUDE_DIRECTORIES(f16-f32-vcvt-bench PRIVATE . include src)
--  TARGET_LINK_LIBRARIES(f16-f32-vcvt-bench PRIVATE benchmark fp16 pthreadpool)
-+  TARGET_LINK_LIBRARIES(f16-f32-vcvt-bench PRIVATE benchmark)
-   TARGET_LINK_LIBRARIES(f16-f32-vcvt-bench PRIVATE bench-utils hardware-config logging microkernels-all microparams-init)
- 
-   ADD_EXECUTABLE(f32-conv-hwc-bench bench/f32-conv-hwc.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-conv-hwc-bench PRIVATE . include src)
--  TARGET_LINK_LIBRARIES(f32-conv-hwc-bench PRIVATE benchmark pthreadpool)
-+  TARGET_LINK_LIBRARIES(f32-conv-hwc-bench PRIVATE benchmark)
-   TARGET_LINK_LIBRARIES(f32-conv-hwc-bench PRIVATE bench-utils hardware-config logging microkernels-all microparams-init packing)
- 
-   ADD_EXECUTABLE(f32-conv-hwc2chw-bench bench/f32-conv-hwc2chw.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-conv-hwc2chw-bench PRIVATE . include src)
--  TARGET_LINK_LIBRARIES(f32-conv-hwc2chw-bench PRIVATE benchmark pthreadpool)
-+  TARGET_LINK_LIBRARIES(f32-conv-hwc2chw-bench PRIVATE benchmark)
-   TARGET_LINK_LIBRARIES(f32-conv-hwc2chw-bench PRIVATE bench-utils hardware-config logging microkernels-all microparams-init packing)
- 
-   ADD_EXECUTABLE(f32-dwconv-bench bench/f32-dwconv.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-dwconv-bench PRIVATE . include src)
--  TARGET_LINK_LIBRARIES(f32-dwconv-bench PRIVATE benchmark pthreadpool)
-+  TARGET_LINK_LIBRARIES(f32-dwconv-bench PRIVATE benchmark)
-   TARGET_LINK_LIBRARIES(f32-dwconv-bench PRIVATE bench-utils indirection hardware-config logging microkernel-utils microkernels-all microparams-init packing)
- 
-   ADD_EXECUTABLE(f32-dwconv2d-chw-bench bench/f32-dwconv2d-chw.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-dwconv2d-chw-bench PRIVATE . include src)
--  TARGET_LINK_LIBRARIES(f32-dwconv2d-chw-bench PRIVATE benchmark pthreadpool)
-+  TARGET_LINK_LIBRARIES(f32-dwconv2d-chw-bench PRIVATE benchmark)
-   TARGET_LINK_LIBRARIES(f32-dwconv2d-chw-bench PRIVATE bench-utils hardware-config logging microkernels-all microparams-init)
- 
-   ADD_EXECUTABLE(f32-f16-vcvt-bench bench/f32-f16-vcvt.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-f16-vcvt-bench PRIVATE . include src)
--  TARGET_LINK_LIBRARIES(f32-f16-vcvt-bench PRIVATE benchmark pthreadpool)
-+  TARGET_LINK_LIBRARIES(f32-f16-vcvt-bench PRIVATE benchmark)
-   TARGET_LINK_LIBRARIES(f32-f16-vcvt-bench PRIVATE bench-utils hardware-config logging microkernels-all microparams-init)
- 
-   ADD_EXECUTABLE(f32-gavgpool-cw-bench bench/f32-gavgpool-cw.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-gavgpool-cw-bench PRIVATE . include src)
--  TARGET_LINK_LIBRARIES(f32-gavgpool-cw-bench PRIVATE benchmark pthreadpool)
-+  TARGET_LINK_LIBRARIES(f32-gavgpool-cw-bench PRIVATE benchmark)
-   TARGET_LINK_LIBRARIES(f32-gavgpool-cw-bench PRIVATE bench-utils hardware-config logging microkernels-all microparams-init)
- 
-   ADD_EXECUTABLE(f32-gemm-bench bench/f32-gemm.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-gemm-bench PRIVATE . include src)
--  TARGET_LINK_LIBRARIES(f32-gemm-bench PRIVATE benchmark pthreadpool)
-+  TARGET_LINK_LIBRARIES(f32-gemm-bench PRIVATE benchmark)
-   TARGET_LINK_LIBRARIES(f32-gemm-bench PRIVATE jit bench-utils hardware-config logging microkernels-all microparams-init packing)
- 
-   ADD_EXECUTABLE(f32-igemm-bench bench/f32-igemm.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-igemm-bench PRIVATE . include src)
--  TARGET_LINK_LIBRARIES(f32-igemm-bench PRIVATE benchmark pthreadpool)
-+  TARGET_LINK_LIBRARIES(f32-igemm-bench PRIVATE benchmark)
-   TARGET_LINK_LIBRARIES(f32-igemm-bench PRIVATE jit bench-utils indirection hardware-config logging microkernels-all microparams-init packing)
- 
-   ADD_EXECUTABLE(f32-im2col-gemm-bench bench/f32-im2col-gemm.cc src/im2col.c)
-   TARGET_INCLUDE_DIRECTORIES(f32-im2col-gemm-bench PRIVATE . include src)
--  TARGET_LINK_LIBRARIES(f32-im2col-gemm-bench PRIVATE benchmark pthreadpool)
-+  TARGET_LINK_LIBRARIES(f32-im2col-gemm-bench PRIVATE benchmark)
-   TARGET_LINK_LIBRARIES(f32-im2col-gemm-bench PRIVATE bench-utils hardware-config logging microkernels-all microparams-init packing)
- 
-   ADD_EXECUTABLE(f32-qs8-vcvt-bench bench/f32-qs8-vcvt.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-qs8-vcvt-bench PRIVATE . include src)
--  TARGET_LINK_LIBRARIES(f32-qs8-vcvt-bench PRIVATE benchmark pthreadpool)
-+  TARGET_LINK_LIBRARIES(f32-qs8-vcvt-bench PRIVATE benchmark)
-   TARGET_LINK_LIBRARIES(f32-qs8-vcvt-bench PRIVATE bench-utils hardware-config logging microkernels-all microparams-init)
- 
-   ADD_EXECUTABLE(f32-qu8-vcvt-bench bench/f32-qu8-vcvt.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-qu8-vcvt-bench PRIVATE . include src)
--  TARGET_LINK_LIBRARIES(f32-qu8-vcvt-bench PRIVATE benchmark pthreadpool)
-+  TARGET_LINK_LIBRARIES(f32-qu8-vcvt-bench PRIVATE benchmark)
-   TARGET_LINK_LIBRARIES(f32-qu8-vcvt-bench PRIVATE bench-utils hardware-config logging microkernels-all microparams-init)
- 
-   ADD_EXECUTABLE(f32-raddstoreexpminusmax-bench bench/f32-raddstoreexpminusmax.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-raddstoreexpminusmax-bench PRIVATE . include src)
--  TARGET_LINK_LIBRARIES(f32-raddstoreexpminusmax-bench PRIVATE benchmark pthreadpool)
-+  TARGET_LINK_LIBRARIES(f32-raddstoreexpminusmax-bench PRIVATE benchmark)
-   TARGET_LINK_LIBRARIES(f32-raddstoreexpminusmax-bench PRIVATE bench-utils hardware-config logging microkernels-all microparams-init)
- 
-   ADD_EXECUTABLE(f32-raddexpminusmax-bench bench/f32-raddexpminusmax.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-raddexpminusmax-bench PRIVATE . include src)
--  TARGET_LINK_LIBRARIES(f32-raddexpminusmax-bench PRIVATE benchmark pthreadpool)
-+  TARGET_LINK_LIBRARIES(f32-raddexpminusmax-bench PRIVATE benchmark)
-   TARGET_LINK_LIBRARIES(f32-raddexpminusmax-bench PRIVATE bench-utils hardware-config logging microkernels-all microparams-init)
- 
-   ADD_EXECUTABLE(f32-raddextexp-bench bench/f32-raddextexp.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-raddextexp-bench PRIVATE . include src)
--  TARGET_LINK_LIBRARIES(f32-raddextexp-bench PRIVATE benchmark pthreadpool)
-+  TARGET_LINK_LIBRARIES(f32-raddextexp-bench PRIVATE benchmark)
-   TARGET_LINK_LIBRARIES(f32-raddextexp-bench PRIVATE bench-utils hardware-config logging microkernels-all microparams-init)
- 
-   ADD_EXECUTABLE(f32-vscaleexpminusmax-bench bench/f32-vscaleexpminusmax.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-vscaleexpminusmax-bench PRIVATE . include src)
--  TARGET_LINK_LIBRARIES(f32-vscaleexpminusmax-bench PRIVATE benchmark pthreadpool)
-+  TARGET_LINK_LIBRARIES(f32-vscaleexpminusmax-bench PRIVATE benchmark)
-   TARGET_LINK_LIBRARIES(f32-vscaleexpminusmax-bench PRIVATE bench-utils hardware-config logging microkernels-all microparams-init)
- 
-   ADD_EXECUTABLE(f32-vscaleextexp-bench bench/f32-vscaleextexp.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-vscaleextexp-bench PRIVATE . include src)
--  TARGET_LINK_LIBRARIES(f32-vscaleextexp-bench PRIVATE benchmark pthreadpool)
-+  TARGET_LINK_LIBRARIES(f32-vscaleextexp-bench PRIVATE benchmark)
-   TARGET_LINK_LIBRARIES(f32-vscaleextexp-bench PRIVATE bench-utils hardware-config logging microkernels-all microparams-init)
- 
-   ADD_EXECUTABLE(f32-rmax-bench bench/f32-rmax.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-rmax-bench PRIVATE . include src)
--  TARGET_LINK_LIBRARIES(f32-rmax-bench PRIVATE benchmark pthreadpool)
-+  TARGET_LINK_LIBRARIES(f32-rmax-bench PRIVATE benchmark)
-   TARGET_LINK_LIBRARIES(f32-rmax-bench PRIVATE bench-utils hardware-config logging microkernels-all microparams-init)
- 
-   ADD_EXECUTABLE(f32-spmm-bench bench/f32-spmm.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-spmm-bench PRIVATE . include src)
--  TARGET_LINK_LIBRARIES(f32-spmm-bench PRIVATE benchmark pthreadpool)
-+  TARGET_LINK_LIBRARIES(f32-spmm-bench PRIVATE benchmark)
-   TARGET_LINK_LIBRARIES(f32-spmm-bench PRIVATE bench-utils hardware-config logging microkernels-all microparams-init)
- 
-   ADD_EXECUTABLE(f32-softmax-bench bench/f32-softmax.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-softmax-bench PRIVATE . include src)
--  TARGET_LINK_LIBRARIES(f32-softmax-bench PRIVATE benchmark pthreadpool)
-+  TARGET_LINK_LIBRARIES(f32-softmax-bench PRIVATE benchmark)
-   TARGET_LINK_LIBRARIES(f32-softmax-bench PRIVATE bench-utils hardware-config logging microkernels-all microparams-init)
- 
-   ADD_EXECUTABLE(f32-velu-bench bench/f32-velu.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-velu-bench PRIVATE . include src)
--  TARGET_LINK_LIBRARIES(f32-velu-bench PRIVATE benchmark pthreadpool)
-+  TARGET_LINK_LIBRARIES(f32-velu-bench PRIVATE benchmark)
-   TARGET_LINK_LIBRARIES(f32-velu-bench PRIVATE bench-utils hardware-config logging microkernels-all microparams-init)
- 
-   ADD_EXECUTABLE(f32-vhswish-bench bench/f32-vhswish.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-vhswish-bench PRIVATE . include src)
--  TARGET_LINK_LIBRARIES(f32-vhswish-bench PRIVATE benchmark pthreadpool)
-+  TARGET_LINK_LIBRARIES(f32-vhswish-bench PRIVATE benchmark)
-   TARGET_LINK_LIBRARIES(f32-vhswish-bench PRIVATE bench-utils hardware-config logging microkernels-all microparams-init)
- 
-   ADD_EXECUTABLE(f32-vlrelu-bench bench/f32-vlrelu.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-vlrelu-bench PRIVATE . include src)
--  TARGET_LINK_LIBRARIES(f32-vlrelu-bench PRIVATE benchmark pthreadpool)
-+  TARGET_LINK_LIBRARIES(f32-vlrelu-bench PRIVATE benchmark)
-   TARGET_LINK_LIBRARIES(f32-vlrelu-bench PRIVATE bench-utils hardware-config logging microkernels-all microparams-init)
- 
-   ADD_EXECUTABLE(f32-vrelu-bench bench/f32-vrelu.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-vrelu-bench PRIVATE . include src)
--  TARGET_LINK_LIBRARIES(f32-vrelu-bench PRIVATE benchmark pthreadpool)
-+  TARGET_LINK_LIBRARIES(f32-vrelu-bench PRIVATE benchmark)
-   TARGET_LINK_LIBRARIES(f32-vrelu-bench PRIVATE bench-utils hardware-config logging microkernels-all microparams-init)
- 
-   ADD_EXECUTABLE(f32-vsigmoid-bench bench/f32-vsigmoid.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-vsigmoid-bench PRIVATE . include src)
--  TARGET_LINK_LIBRARIES(f32-vsigmoid-bench PRIVATE benchmark pthreadpool)
-+  TARGET_LINK_LIBRARIES(f32-vsigmoid-bench PRIVATE benchmark)
-   TARGET_LINK_LIBRARIES(f32-vsigmoid-bench PRIVATE bench-utils hardware-config logging microkernels-all microparams-init)
- 
-   ADD_EXECUTABLE(f32-vsqrt-bench bench/f32-vsqrt.cc)
-   TARGET_INCLUDE_DIRECTORIES(f32-vsqrt-bench PRIVATE . include src)
--  TARGET_LINK_LIBRARIES(f32-vsqrt-bench PRIVATE benchmark pthreadpool)
-+  TARGET_LINK_LIBRARIES(f32-vsqrt-bench PRIVATE benchmark)
-   TARGET_LINK_LIBRARIES(f32-vsqrt-bench PRIVATE bench-utils hardware-config logging microkernels-all microparams-init)
- 
-   ADD_EXECUTABLE(qs8-dwconv-bench bench/qs8-dwconv.cc)
-   TARGET_INCLUDE_DIRECTORIES(qs8-dwconv-bench PRIVATE . include src)
--  TARGET_LINK_LIBRARIES(qs8-dwconv-bench PRIVATE benchmark pthreadpool)
-+  TARGET_LINK_LIBRARIES(qs8-dwconv-bench PRIVATE benchmark)
-   TARGET_LINK_LIBRARIES(qs8-dwconv-bench PRIVATE bench-utils indirection hardware-config logging microkernels-all microparams-init packing)
- 
-   ADD_EXECUTABLE(qs8-f32-vcvt-bench bench/qs8-f32-vcvt.cc)
-   TARGET_INCLUDE_DIRECTORIES(qs8-f32-vcvt-bench PRIVATE . include src)
--  TARGET_LINK_LIBRARIES(qs8-f32-vcvt-bench PRIVATE benchmark pthreadpool)
-+  TARGET_LINK_LIBRARIES(qs8-f32-vcvt-bench PRIVATE benchmark)
-   TARGET_LINK_LIBRARIES(qs8-f32-vcvt-bench PRIVATE bench-utils hardware-config logging microkernels-all microparams-init)
- 
-   ADD_EXECUTABLE(qs8-gemm-bench bench/qs8-gemm.cc)
-   TARGET_INCLUDE_DIRECTORIES(qs8-gemm-bench PRIVATE . include src)
--  TARGET_LINK_LIBRARIES(qs8-gemm-bench PRIVATE benchmark pthreadpool jit microparams-init)
-+  TARGET_LINK_LIBRARIES(qs8-gemm-bench PRIVATE benchmark jit microparams-init)
-   TARGET_LINK_LIBRARIES(qs8-gemm-bench PRIVATE bench-utils jit hardware-config logging microkernels-all microparams-init packing)
- 
-   ADD_EXECUTABLE(qs8-requantization-bench bench/qs8-requantization.cc)
-   SET_TARGET_PROPERTIES(qs8-requantization-bench PROPERTIES CXX_EXTENSIONS YES)
-   TARGET_INCLUDE_DIRECTORIES(qs8-requantization-bench PRIVATE . include src)
--  TARGET_LINK_LIBRARIES(qs8-requantization-bench PRIVATE benchmark pthreadpool)
-+  TARGET_LINK_LIBRARIES(qs8-requantization-bench PRIVATE benchmark)
-   TARGET_LINK_LIBRARIES(qs8-requantization-bench PRIVATE bench-utils microkernels-all)
- 
-   ADD_EXECUTABLE(qs8-vadd-bench bench/qs8-vadd.cc)
-   TARGET_INCLUDE_DIRECTORIES(qs8-vadd-bench PRIVATE . include src)
--  TARGET_LINK_LIBRARIES(qs8-vadd-bench PRIVATE benchmark pthreadpool)
-+  TARGET_LINK_LIBRARIES(qs8-vadd-bench PRIVATE benchmark)
-   TARGET_LINK_LIBRARIES(qs8-vadd-bench PRIVATE bench-utils hardware-config logging microkernels-all microparams-init)
- 
-   ADD_EXECUTABLE(qs8-vaddc-bench bench/qs8-vaddc.cc)
-   TARGET_INCLUDE_DIRECTORIES(qs8-vaddc-bench PRIVATE . include src)
--  TARGET_LINK_LIBRARIES(qs8-vaddc-bench PRIVATE benchmark pthreadpool)
-+  TARGET_LINK_LIBRARIES(qs8-vaddc-bench PRIVATE benchmark)
-   TARGET_LINK_LIBRARIES(qs8-vaddc-bench PRIVATE bench-utils hardware-config logging microkernels-all microparams-init)
- 
-   ADD_EXECUTABLE(qs8-vcvt-bench bench/qs8-vcvt.cc)
-   TARGET_INCLUDE_DIRECTORIES(qs8-vcvt-bench PRIVATE . include src)
--  TARGET_LINK_LIBRARIES(qs8-vcvt-bench PRIVATE benchmark pthreadpool)
-+  TARGET_LINK_LIBRARIES(qs8-vcvt-bench PRIVATE benchmark)
-   TARGET_LINK_LIBRARIES(qs8-vcvt-bench PRIVATE bench-utils hardware-config logging microkernels-all microparams-init)
- 
-   ADD_EXECUTABLE(qs8-vlrelu-bench bench/qs8-vlrelu.cc)
-   TARGET_INCLUDE_DIRECTORIES(qs8-vlrelu-bench PRIVATE . include src)
--  TARGET_LINK_LIBRARIES(qs8-vlrelu-bench PRIVATE benchmark pthreadpool)
-+  TARGET_LINK_LIBRARIES(qs8-vlrelu-bench PRIVATE benchmark)
-   TARGET_LINK_LIBRARIES(qs8-vlrelu-bench PRIVATE bench-utils hardware-config logging microkernels-all microparams-init)
- 
-   ADD_EXECUTABLE(qs8-vmul-bench bench/qs8-vmul.cc)
-   TARGET_INCLUDE_DIRECTORIES(qs8-vmul-bench PRIVATE . include src)
--  TARGET_LINK_LIBRARIES(qs8-vmul-bench PRIVATE benchmark pthreadpool)
-+  TARGET_LINK_LIBRARIES(qs8-vmul-bench PRIVATE benchmark)
-   TARGET_LINK_LIBRARIES(qs8-vmul-bench PRIVATE bench-utils hardware-config logging microkernels-all microparams-init)
- 
-   ADD_EXECUTABLE(qs8-vmulc-bench bench/qs8-vmulc.cc)
-   TARGET_INCLUDE_DIRECTORIES(qs8-vmulc-bench PRIVATE . include src)
--  TARGET_LINK_LIBRARIES(qs8-vmulc-bench PRIVATE benchmark pthreadpool)
-+  TARGET_LINK_LIBRARIES(qs8-vmulc-bench PRIVATE benchmark)
-   TARGET_LINK_LIBRARIES(qs8-vmulc-bench PRIVATE bench-utils hardware-config logging microkernels-all microparams-init)
- 
-   ADD_EXECUTABLE(qu8-f32-vcvt-bench bench/qu8-f32-vcvt.cc)
-   TARGET_INCLUDE_DIRECTORIES(qu8-f32-vcvt-bench PRIVATE . include src)
--  TARGET_LINK_LIBRARIES(qu8-f32-vcvt-bench PRIVATE benchmark pthreadpool)
-+  TARGET_LINK_LIBRARIES(qu8-f32-vcvt-bench PRIVATE benchmark)
-   TARGET_LINK_LIBRARIES(qu8-f32-vcvt-bench PRIVATE bench-utils hardware-config logging microkernels-all microparams-init)
- 
-   ADD_EXECUTABLE(qu8-gemm-bench bench/qu8-gemm.cc)
-   TARGET_INCLUDE_DIRECTORIES(qu8-gemm-bench PRIVATE . include src)
--  TARGET_LINK_LIBRARIES(qu8-gemm-bench PRIVATE benchmark pthreadpool)
-+  TARGET_LINK_LIBRARIES(qu8-gemm-bench PRIVATE benchmark)
-   TARGET_LINK_LIBRARIES(qu8-gemm-bench PRIVATE bench-utils hardware-config logging microkernels-all microparams-init packing)
- 
-   ADD_EXECUTABLE(qu8-requantization-bench bench/qu8-requantization.cc)
-   SET_TARGET_PROPERTIES(qu8-requantization-bench PROPERTIES CXX_EXTENSIONS YES)
-   TARGET_INCLUDE_DIRECTORIES(qu8-requantization-bench PRIVATE . include src)
--  TARGET_LINK_LIBRARIES(qu8-requantization-bench PRIVATE benchmark pthreadpool)
-+  TARGET_LINK_LIBRARIES(qu8-requantization-bench PRIVATE benchmark)
-   TARGET_LINK_LIBRARIES(qu8-requantization-bench PRIVATE bench-utils microkernels-all)
- 
-   ADD_EXECUTABLE(qu8-vadd-bench bench/qu8-vadd.cc)
-   TARGET_INCLUDE_DIRECTORIES(qu8-vadd-bench PRIVATE . include src)
--  TARGET_LINK_LIBRARIES(qu8-vadd-bench PRIVATE benchmark pthreadpool)
-+  TARGET_LINK_LIBRARIES(qu8-vadd-bench PRIVATE benchmark)
-   TARGET_LINK_LIBRARIES(qu8-vadd-bench PRIVATE bench-utils hardware-config logging microkernels-all microparams-init)
- 
-   ADD_EXECUTABLE(qu8-vaddc-bench bench/qu8-vaddc.cc)
-   TARGET_INCLUDE_DIRECTORIES(qu8-vaddc-bench PRIVATE . include src)
--  TARGET_LINK_LIBRARIES(qu8-vaddc-bench PRIVATE benchmark pthreadpool)
-+  TARGET_LINK_LIBRARIES(qu8-vaddc-bench PRIVATE benchmark)
-   TARGET_LINK_LIBRARIES(qu8-vaddc-bench PRIVATE bench-utils hardware-config logging microkernels-all microparams-init)
- 
-   ADD_EXECUTABLE(qu8-vcvt-bench bench/qu8-vcvt.cc)
-   TARGET_INCLUDE_DIRECTORIES(qu8-vcvt-bench PRIVATE . include src)
--  TARGET_LINK_LIBRARIES(qu8-vcvt-bench PRIVATE benchmark pthreadpool)
-+  TARGET_LINK_LIBRARIES(qu8-vcvt-bench PRIVATE benchmark)
-   TARGET_LINK_LIBRARIES(qu8-vcvt-bench PRIVATE bench-utils hardware-config logging microkernels-all microparams-init)
- 
-   ADD_EXECUTABLE(qu8-vlrelu-bench bench/qu8-vlrelu.cc)
-   TARGET_INCLUDE_DIRECTORIES(qu8-vlrelu-bench PRIVATE . include src)
--  TARGET_LINK_LIBRARIES(qu8-vlrelu-bench PRIVATE benchmark pthreadpool)
-+  TARGET_LINK_LIBRARIES(qu8-vlrelu-bench PRIVATE benchmark)
-   TARGET_LINK_LIBRARIES(qu8-vlrelu-bench PRIVATE bench-utils hardware-config logging microkernels-all microparams-init)
- 
-   ADD_EXECUTABLE(qu8-vmul-bench bench/qu8-vmul.cc)
-   TARGET_INCLUDE_DIRECTORIES(qu8-vmul-bench PRIVATE . include src)
--  TARGET_LINK_LIBRARIES(qu8-vmul-bench PRIVATE benchmark pthreadpool)
-+  TARGET_LINK_LIBRARIES(qu8-vmul-bench PRIVATE benchmark)
-   TARGET_LINK_LIBRARIES(qu8-vmul-bench PRIVATE bench-utils hardware-config logging microkernels-all microparams-init)
- 
-   ADD_EXECUTABLE(qu8-vmulc-bench bench/qu8-vmulc.cc)
-   TARGET_INCLUDE_DIRECTORIES(qu8-vmulc-bench PRIVATE . include src)
--  TARGET_LINK_LIBRARIES(qu8-vmulc-bench PRIVATE benchmark pthreadpool)
-+  TARGET_LINK_LIBRARIES(qu8-vmulc-bench PRIVATE benchmark)
-   TARGET_LINK_LIBRARIES(qu8-vmulc-bench PRIVATE bench-utils hardware-config logging microkernels-all microparams-init)
- 
-   ADD_EXECUTABLE(rounding-bench bench/rounding.cc)
-   TARGET_INCLUDE_DIRECTORIES(rounding-bench PRIVATE . include src)
--  TARGET_LINK_LIBRARIES(rounding-bench PRIVATE benchmark cpuinfo pthreadpool)
-+  TARGET_LINK_LIBRARIES(rounding-bench PRIVATE benchmark cpuinfo)
-   TARGET_LINK_LIBRARIES(rounding-bench PRIVATE bench-utils hardware-config logging microkernels-all microparams-init)
- 
-   ADD_EXECUTABLE(s16-rmaxabs-bench bench/s16-rmaxabs.cc)
-   TARGET_INCLUDE_DIRECTORIES(s16-rmaxabs-bench PRIVATE . include src)
--  TARGET_LINK_LIBRARIES(s16-rmaxabs-bench PRIVATE benchmark pthreadpool)
-+  TARGET_LINK_LIBRARIES(s16-rmaxabs-bench PRIVATE benchmark)
-   TARGET_LINK_LIBRARIES(s16-rmaxabs-bench PRIVATE bench-utils microkernels-all)
- 
-   ADD_EXECUTABLE(s16-window-bench bench/s16-window.cc)
-   TARGET_INCLUDE_DIRECTORIES(s16-window-bench PRIVATE . include src)
--  TARGET_LINK_LIBRARIES(s16-window-bench PRIVATE benchmark pthreadpool)
-+  TARGET_LINK_LIBRARIES(s16-window-bench PRIVATE benchmark)
-   TARGET_LINK_LIBRARIES(s16-window-bench PRIVATE bench-utils microkernels-all)
- 
-   ADD_EXECUTABLE(u32-filterbank-accumulate-bench bench/u32-filterbank-accumulate.cc)
-   TARGET_INCLUDE_DIRECTORIES(u32-filterbank-accumulate-bench PRIVATE . include src)
--  TARGET_LINK_LIBRARIES(u32-filterbank-accumulate-bench PRIVATE benchmark pthreadpool)
-+  TARGET_LINK_LIBRARIES(u32-filterbank-accumulate-bench PRIVATE benchmark)
-   TARGET_LINK_LIBRARIES(u32-filterbank-accumulate-bench PRIVATE bench-utils microkernels-all)
- 
-   ADD_EXECUTABLE(u32-filterbank-subtract-bench bench/u32-filterbank-subtract.cc)
-   TARGET_INCLUDE_DIRECTORIES(u32-filterbank-subtract-bench PRIVATE . include src)
--  TARGET_LINK_LIBRARIES(u32-filterbank-subtract-bench PRIVATE benchmark pthreadpool)
-+  TARGET_LINK_LIBRARIES(u32-filterbank-subtract-bench PRIVATE benchmark)
-   TARGET_LINK_LIBRARIES(u32-filterbank-subtract-bench PRIVATE bench-utils microkernels-all)
- 
-   ADD_EXECUTABLE(u32-vlog-bench bench/u32-vlog.cc)
-   TARGET_INCLUDE_DIRECTORIES(u32-vlog-bench PRIVATE . include src)
--  TARGET_LINK_LIBRARIES(u32-vlog-bench PRIVATE benchmark pthreadpool)
-+  TARGET_LINK_LIBRARIES(u32-vlog-bench PRIVATE benchmark)
-   TARGET_LINK_LIBRARIES(u32-vlog-bench PRIVATE bench-utils microkernels-all)
- 
-   ADD_EXECUTABLE(u64-u32-vsqrtshift-bench bench/u64-u32-vsqrtshift.cc)
-   TARGET_INCLUDE_DIRECTORIES(u64-u32-vsqrtshift-bench PRIVATE . include src)
--  TARGET_LINK_LIBRARIES(u64-u32-vsqrtshift-bench PRIVATE benchmark pthreadpool)
-+  TARGET_LINK_LIBRARIES(u64-u32-vsqrtshift-bench PRIVATE benchmark)
-   TARGET_LINK_LIBRARIES(u64-u32-vsqrtshift-bench PRIVATE bench-utils hardware-config logging microkernels-all microparams-init)
- 
-   ADD_EXECUTABLE(i16-vlshift-bench bench/i16-vlshift.cc)
-   TARGET_INCLUDE_DIRECTORIES(i16-vlshift-bench PRIVATE . include src)
--  TARGET_LINK_LIBRARIES(i16-vlshift-bench PRIVATE benchmark pthreadpool)
-+  TARGET_LINK_LIBRARIES(i16-vlshift-bench PRIVATE benchmark)
-   TARGET_LINK_LIBRARIES(i16-vlshift-bench PRIVATE bench-utils microkernels-all)
- 
-   ADD_EXECUTABLE(cs16-vsquareabs-bench bench/cs16-vsquareabs.cc)
-   TARGET_INCLUDE_DIRECTORIES(cs16-vsquareabs-bench PRIVATE . include src)
--  TARGET_LINK_LIBRARIES(cs16-vsquareabs-bench PRIVATE benchmark pthreadpool)
-+  TARGET_LINK_LIBRARIES(cs16-vsquareabs-bench PRIVATE benchmark)
-   TARGET_LINK_LIBRARIES(cs16-vsquareabs-bench PRIVATE bench-utils microkernels-all)
- 
-   ADD_EXECUTABLE(cs16-bfly4-bench bench/cs16-bfly4.cc)
-   TARGET_INCLUDE_DIRECTORIES(cs16-bfly4-bench PRIVATE . include src)
--  TARGET_LINK_LIBRARIES(cs16-bfly4-bench PRIVATE benchmark pthreadpool)
-+  TARGET_LINK_LIBRARIES(cs16-bfly4-bench PRIVATE benchmark)
-   TARGET_LINK_LIBRARIES(cs16-bfly4-bench PRIVATE bench-utils microkernels-all)
- 
-   ADD_EXECUTABLE(cs16-fftr-bench bench/cs16-fftr.cc)
-   TARGET_INCLUDE_DIRECTORIES(cs16-fftr-bench PRIVATE . include src)
--  TARGET_LINK_LIBRARIES(cs16-fftr-bench PRIVATE benchmark pthreadpool)
-+  TARGET_LINK_LIBRARIES(cs16-fftr-bench PRIVATE benchmark)
-   TARGET_LINK_LIBRARIES(cs16-fftr-bench PRIVATE bench-utils microkernels-all)
- 
-   ADD_EXECUTABLE(xx-transpose-bench bench/xx-transpose.cc)
-   TARGET_INCLUDE_DIRECTORIES(xx-transpose-bench PRIVATE . include src)
--  TARGET_LINK_LIBRARIES(xx-transpose-bench PRIVATE benchmark pthreadpool)
-+  TARGET_LINK_LIBRARIES(xx-transpose-bench PRIVATE benchmark)
-   TARGET_LINK_LIBRARIES(xx-transpose-bench PRIVATE bench-utils microkernels-all)
- 
-   ADD_EXECUTABLE(x8-lut-bench bench/x8-lut.cc)
-   TARGET_INCLUDE_DIRECTORIES(x8-lut-bench PRIVATE . include src)
--  TARGET_LINK_LIBRARIES(x8-lut-bench PRIVATE benchmark pthreadpool)
-+  TARGET_LINK_LIBRARIES(x8-lut-bench PRIVATE benchmark)
-   TARGET_LINK_LIBRARIES(x8-lut-bench PRIVATE bench-utils microkernels-all)
- 
-   ADD_EXECUTABLE(x8-transpose-bench bench/x32-transpose.cc)
-   TARGET_INCLUDE_DIRECTORIES(x8-transpose-bench PRIVATE . include src)
--  TARGET_LINK_LIBRARIES(x8-transpose-bench PRIVATE benchmark pthreadpool)
-+  TARGET_LINK_LIBRARIES(x8-transpose-bench PRIVATE benchmark)
-   TARGET_LINK_LIBRARIES(x8-transpose-bench PRIVATE bench-utils hardware-config logging microkernels-all microparams-init)
- 
-   ADD_EXECUTABLE(x16-transpose-bench bench/x16-transpose.cc)
-   TARGET_INCLUDE_DIRECTORIES(x16-transpose-bench PRIVATE . include src)
--  TARGET_LINK_LIBRARIES(x16-transpose-bench PRIVATE benchmark pthreadpool)
-+  TARGET_LINK_LIBRARIES(x16-transpose-bench PRIVATE benchmark)
-   TARGET_LINK_LIBRARIES(x16-transpose-bench PRIVATE bench-utils hardware-config logging microkernels-all microparams-init)
- 
-   ADD_EXECUTABLE(x24-transpose-bench bench/x16-transpose.cc)
-   TARGET_INCLUDE_DIRECTORIES(x24-transpose-bench PRIVATE . include src)
--  TARGET_LINK_LIBRARIES(x24-transpose-bench PRIVATE benchmark pthreadpool)
-+  TARGET_LINK_LIBRARIES(x24-transpose-bench PRIVATE benchmark)
-   TARGET_LINK_LIBRARIES(x24-transpose-bench PRIVATE bench-utils hardware-config logging microkernels-all microparams-init)
- 
-   ADD_EXECUTABLE(x32-transpose-bench bench/x32-transpose.cc)
-   TARGET_INCLUDE_DIRECTORIES(x32-transpose-bench PRIVATE . include src)
--  TARGET_LINK_LIBRARIES(x32-transpose-bench PRIVATE benchmark pthreadpool)
-+  TARGET_LINK_LIBRARIES(x32-transpose-bench PRIVATE benchmark)
-   TARGET_LINK_LIBRARIES(x32-transpose-bench PRIVATE bench-utils hardware-config logging microkernels-all microparams-init)
- 
-   ADD_EXECUTABLE(x64-transpose-bench bench/x64-transpose.cc)
-   TARGET_INCLUDE_DIRECTORIES(x64-transpose-bench PRIVATE . include src)
--  TARGET_LINK_LIBRARIES(x64-transpose-bench PRIVATE benchmark pthreadpool)
-+  TARGET_LINK_LIBRARIES(x64-transpose-bench PRIVATE benchmark)
-   TARGET_LINK_LIBRARIES(x64-transpose-bench PRIVATE bench-utils hardware-config logging microkernels-all microparams-init)
- ENDIF()