diff --git a/experimental/builder/include/ck_tile/builder/conv_builder.hpp b/experimental/builder/include/ck_tile/builder/conv_builder.hpp index a6d7f5a12b..ab82deea9b 100644 --- a/experimental/builder/include/ck_tile/builder/conv_builder.hpp +++ b/experimental/builder/include/ck_tile/builder/conv_builder.hpp @@ -3,7 +3,6 @@ #include #include -#include "conv_builder_reference.hpp" #include #include #include @@ -23,7 +22,7 @@ namespace ck_tile::builder { * @tparam ALGORITHM The specific convolution algorithm to be used for the implementation. * @tparam VERSION The version of the builder implementation. */ -template +template requires SupportedVersion struct ConvBuilder { diff --git a/experimental/builder/include/ck_tile/builder/versions.h b/experimental/builder/include/ck_tile/builder/versions.h index 5e362209e7..c14003502c 100644 --- a/experimental/builder/include/ck_tile/builder/versions.h +++ b/experimental/builder/include/ck_tile/builder/versions.h @@ -3,13 +3,14 @@ #include #include +#include + namespace ck_tile::builder { -static constexpr char V0_0_0[] = "0.0.0"; -static constexpr char V0_1_0[] = "0.1.0"; +static constexpr StringLiteral V0_0_0 = "0.0.0"; +static constexpr StringLiteral V0_1_0 = "0.1.0"; -template -concept SupportedVersion = (std::string_view{V} == std::string_view{V0_0_0}) || - (std::string_view{V} == std::string_view{V0_1_0}); +template +concept SupportedVersion = (V == V0_0_0) || (V == V0_1_0); } // namespace ck_tile::builder diff --git a/experimental/builder/test/test_conv_builder.cpp b/experimental/builder/test/test_conv_builder.cpp index 4561207011..7a7310d738 100644 --- a/experimental/builder/test/test_conv_builder.cpp +++ b/experimental/builder/test/test_conv_builder.cpp @@ -20,7 +20,8 @@ struct DefaultFwdConvAlgorithm }; static_assert(ckb::ConvAlgorithm); -static constexpr char API_VERSION[] = "0.1.0"; +constexpr char API_VERSION[] = "0.1.0"; +static_assert(ckb::SupportedVersion); TEST(ConvBuilderTest, TestDefaultInstance) { diff --git a/experimental/builder/test/test_conv_instances.cpp b/experimental/builder/test/test_conv_instances.cpp index 95f8899bad..67dfefd2df 100644 --- a/experimental/builder/test/test_conv_instances.cpp +++ b/experimental/builder/test/test_conv_instances.cpp @@ -14,7 +14,8 @@ struct FwdConvSignature }; static_assert(ckb::ConvSignature); -static constexpr char API_VERSION[] = "0.1.0"; +constexpr char API_VERSION[] = "0.1.0"; +static_assert(ckb::SupportedVersion); struct FwdConvAlgorithm {