blob: a17906a33eafd1f9aab588ef36c024edaf68e71a [file] [log] [blame]
// Copyright 2022 The Tint Authors.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
////////////////////////////////////////////////////////////////////////////////
// File generated by tools/src/cmd/gen
// using the template:
// src/tint/ast/texel_format_bench.cc.tmpl
//
// Do not modify this file directly
////////////////////////////////////////////////////////////////////////////////
#include "src/tint/ast/texel_format.h"
#include <array>
#include "benchmark/benchmark.h"
namespace tint::ast {
namespace {
void TexelFormatParser(::benchmark::State& state) {
std::array kStrings{
"rgbaunccrm", "rlbanr3", "rVba8unorm", "rgba8unorm", "rgba1unorm",
"rgbJqqnorm", "rgb7ll8unorm", "rgqqappnoHHm", "rv8scor", "rgbbGsnrm",
"rgba8snorm", "rgba8vniirm", "rg8a8snoWWm", "Mgbaxxnorm", "rXa8uggnt",
"rgbXVut", "3gba8uint", "rgba8uint", "rgba8uiEt", "rgTTPauint",
"ddgbauixxt", "44gba8sint", "VVgbaSSsint", "rba8si2Rt", "rgba8sint",
"r9bFsint", "rgba8int", "rgVROOsHnt", "ryba1uint", "r77ba1nnullrrt",
"rgb4006uint", "rgba16uint", "rb1uioot", "rga1uzznt", "r11b1uppiit",
"XXgba16sint", "IIgb9916nni55t", "rYbaSSrrsiHHat", "rgba16sint", "rbkk6Hit",
"jgba1sgRR", "rgbab6si", "rgba16fljat", "rgba6float", "rbq6float",
"rgba16float", "rgba1NNloat", "rgbvv6flot", "rgbaQQ6foat", "r3ffir",
"r32uijt", "rNNwuin8", "r32uint", "r32int", "rrr2uint",
"G32uint", "r32sinFF", "32st", "r3rrint", "r32sint",
"2sint", "D3siJJt", "r38n", "r211lk", "r32floa",
"r3flJat", "r32float", "r32fcoat", "r32floOt", "r32floKK_vtt",
"rxx32ui8", "Fg3qq__n", "rg32iqqt", "rg32uint", "rg333uin6",
"rtto62u9QQt", "rg366uin", "rOx2si6zz", "rg3yysint", "rHHsint",
"rg32sint", "qWW432snt", "rg3OOsnt", "g32siYt", "g32flo",
"rg32foaF", "rg32fwat", "rg32float", "G3fKoaff", "KKgq2float",
"rg32mmlo3t", "rgba32uit", "rqba3uint", "rgbabb2uin", "rgba32uint",
"rba32iint", "qgba32uiOt", "rgba32uiTTvv", "rgFFa32sint", "rg00Q2sPnt",
"rgbaP2sint", "rgba32sint", "rgb77s2sint", "rgba32sbbRRC", "rgbXX32sint",
"rOOOba3CCqoat", "rgbu32fsLt", "rgba3Xfloat", "rgba32float", "rba32float",
"qqb3float", "rgba32fl22at",
};
for (auto _ : state) {
for (auto& str : kStrings) {
auto result = ParseTexelFormat(str);
benchmark::DoNotOptimize(result);
}
}
}
BENCHMARK(TexelFormatParser);
} // namespace
} // namespace tint::ast