// Copyright Advanced Micro Devices, Inc., or its affiliates. // SPDX-License-Identifier: MIT #pragma once #include "CustomAssertions.hpp" #include "TestKernels.hpp" template void AssemblyTestKernel::appendArgs(rocRoller::KernelArguments& kargs, std::tuple const& args) { std::string name = ""; if(kargs.log()) name = "arg" + std::to_string(Idx); if constexpr(Idx < sizeof...(Args)) { kargs.append(name, std::get(args)); if constexpr((Idx + 1) < (sizeof...(Args))) { appendArgs(kargs, args); } } } template void AssemblyTestKernel::operator()(rocRoller::KernelInvocation const& invocation, Args const&... args) { bool log = rocRoller::Log::getLogger()->should_log(rocRoller::LogLevel::Debug); rocRoller::KernelArguments kargs(log); appendArgs(kargs, std::forward_as_tuple(args...)); operator()(invocation, kargs); }