1//===-- Performance test for fmodf16 --------------------------------------===//
2//
3// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4// See https://llvm.org/LICENSE.txt for license information.
5// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6//
7//===----------------------------------------------------------------------===//
8
9#include "PerfTest.h"
10
11#include "src/__support/FPUtil/generic/FMod.h"
12#include "src/__support/macros/properties/types.h"
13
14#include <stdint.h>
15
16#define FMOD_FUNC(U) (LIBC_NAMESPACE::fputil::generic::FMod<float16, U>::eval)
17
18int main() {
19 BINARY_INPUT_SINGLE_OUTPUT_PERF_EX(float16, float16, FMOD_FUNC(uint16_t),
20 FMOD_FUNC(uint32_t), 5000,
21 "fmodf16_u16_vs_u32_perf.log")
22
23 BINARY_INPUT_SINGLE_OUTPUT_PERF_EX(float16, float16, FMOD_FUNC(uint16_t),
24 FMOD_FUNC(uint64_t), 5000,
25 "fmodf16_u16_vs_u64_perf.log")
26 return 0;
27}
28

source code of libc/test/src/math/performance_testing/fmodf16_perf.cpp