| // 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/builtin_value_bench.cc.tmpl |
| // |
| // Do not modify this file directly |
| //////////////////////////////////////////////////////////////////////////////// |
| |
| #include "src/tint/ast/builtin_value.h" |
| |
| #include <array> |
| |
| #include "benchmark/benchmark.h" |
| |
| namespace tint::ast { |
| namespace { |
| |
| void BuiltinValueParser(::benchmark::State& state) { |
| std::array kStrings{ |
| "pccsitin", |
| "oiti3", |
| "positVon", |
| "position", |
| "1osition", |
| "osJtqqon", |
| "llos77tion", |
| "vrtHHppx_index", |
| "vertx_icx", |
| "veGtex_bnde", |
| "vertex_index", |
| "vertex_inveii", |
| "veWWtex_ind8x", |
| "vxxrtMx_indx", |
| "isXance_indegg", |
| "insanc_iXVex", |
| "instance_in3ex", |
| "instance_index", |
| "instancE_index", |
| "nsTTance_PPndex", |
| "nstancxx_indddx", |
| "44ront_facing", |
| "fSSont_facinVV", |
| "fronR_Racing", |
| "front_facing", |
| "ron9_faciFg", |
| "front_facin", |
| "fVonRR_HaOing", |
| "fyag_epth", |
| "f77ag_nnellrrh", |
| "fra400depth", |
| "frag_depth", |
| "fa_epooh", |
| "frg_ezzth", |
| "f11a_eppiih", |
| "local_invXXcation_id", |
| "lIIcal_i5599ocation_inn", |
| "HHrrcal_inSSocation_Yaa", |
| "local_invocation_id", |
| "lokkal_invocatini", |
| "jocal_invocRRongid", |
| "local_inocatbon_i", |
| "local_injocation_index", |
| "local_invocatio_index", |
| "locl_invocqtion_ndex", |
| "local_invocation_index", |
| "localNNinvocaton_index", |
| "local_invocatin_ivvdx", |
| "locl_invocatioQQ_index", |
| "globalrnvocaton_iff", |
| "global_invocation_jd", |
| "NNlbal_wwnvocation82d", |
| "global_invocation_id", |
| "global_invocationid", |
| "globalrrinvocation_id", |
| "globaG_invocation_id", |
| "workgroupFFid", |
| "worgrupid", |
| "workgroup_rr", |
| "workgroup_id", |
| "workgrouid", |
| "DokgXoJJp_id", |
| "8orgrup_i", |
| "num_wkkr11up", |
| "numworkgroups", |
| "Ju_workgroups", |
| "num_workgroups", |
| "num_corkgroups", |
| "num_woOkgroups", |
| "num_workKK__vvttps", |
| "smple5inxxe8", |
| "s__mle_qFdex", |
| "saqqple_idex", |
| "sample_index", |
| "saOpe_33nde66", |
| "s6oople_indttQx", |
| "sam66le_inex", |
| "samxe66masOz", |
| "yyample_mask", |
| "amplZZHask", |
| "sample_mask", |
| "WWaple_maq4k", |
| "samplOO_ask", |
| "sYohpe_msk", |
| }; |
| for (auto _ : state) { |
| for (auto& str : kStrings) { |
| auto result = ParseBuiltinValue(str); |
| benchmark::DoNotOptimize(result); |
| } |
| } |
| } |
| |
| BENCHMARK(BuiltinValueParser); |
| |
| } // namespace |
| } // namespace tint::ast |