blob: cbf34b7808553cbef42c9c2b8051d573ea8bfbd4 [file] [log] [blame]
// Copyright 2025 The Dawn & Tint Authors
//
// Redistribution and use in source and binary forms, with or without
// modification, are permitted provided that the following conditions are met:
//
// 1. Redistributions of source code must retain the above copyright notice, this
// list of conditions and the following disclaimer.
//
// 2. Redistributions in binary form must reproduce the above copyright notice,
// this list of conditions and the following disclaimer in the documentation
// and/or other materials provided with the distribution.
//
// 3. Neither the name of the copyright holder nor the names of its
// contributors may be used to endorse or promote products derived from
// this software without specific prior written permission.
//
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
// AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
// DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
// SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
// CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
////////////////////////////////////////////////////////////////////////////////
// File generated by 'tools/src/cmd/gen' using the template:
// src/tint/cmd/bench/enums_core_bench.cc.tmpl
//
// To regenerate run: './tools/run gen'
//
// Do not modify this file directly
////////////////////////////////////////////////////////////////////////////////
// clang-format off
#include <array>
#include "benchmark/benchmark.h"
#include "src/tint/lang/core/enums.h"
namespace tint::core {
namespace {
void AccessParser(::benchmark::State& state) {
const char* kStrings[] = {
"ccad",
"3",
"rVad",
"read",
"1ead",
"rqaJ",
"rlla77",
"reqqdppriHHe",
"rv_wcit",
"reabGwrte",
"read_write",
"read_vriite",
"re8d_wriWWe",
"Meadxxrite",
"wggte",
"VtX",
"writ3",
"write",
"writE",
"TTrPte",
"wxxidd",
};
for (auto _ : state) {
for (auto* str : kStrings) {
auto result = ParseAccess(str);
benchmark::DoNotOptimize(result);
}
}
} // NOLINT(readability/fn_size)
BENCHMARK(AccessParser);
void AddressSpaceParser(::benchmark::State& state) {
const char* kStrings[] = {
"44unction",
"fSSnctioVV",
"Rnc2Rion",
"function",
"uFc9ion",
"funtion",
"ROOuHciVn",
"imyedate",
"l77nnrrediaGe",
"im4edi00te",
"immediate",
"imoodte",
"imzzdiae",
"m11pediiit",
"pixel_lXXcal",
"pixII99l55local",
"pixaal_lSSrHHYl",
"pixel_local",
"iHkklocal",
"jRRxellgal",
"pxel_lobl",
"privaje",
"rivate",
"qvate",
"private",
"priNNte",
"rivtvv",
"QQivate",
"stffar",
"storaje",
"sNNwrag8",
"storage",
"stoage",
"srrorage",
"Gtorage",
"uniforFF",
"nifm",
"unrrorm",
"uniform",
"iform",
"DnfoJJm",
"un8r",
"orkgk1u",
"worgroup",
"Jorkgoup",
"workgroup",
"workgrcup",
"workgroOp",
"worttKK_rouvv",
};
for (auto _ : state) {
for (auto* str : kStrings) {
auto result = ParseAddressSpace(str);
benchmark::DoNotOptimize(result);
}
}
} // NOLINT(readability/fn_size)
BENCHMARK(AddressSpaceParser);
void AttributeParser(::benchmark::State& state) {
const char* kStrings[] = {
"alxxn",
"__qiF",
"aigqq",
"align",
"33l6gn",
"6QQottgn",
"a6ign",
"bnOizz66",
"bindyyng",
"ZiHHnZ",
"binding",
"4WWndqng",
"bOOding",
"oinYng",
"lend_s",
"blendsrF",
"blendwrc",
"blend_src",
"GedKsrff",
"KKlqnd_src",
"blenmm_s3c",
"uiltin",
"biltiq",
"builtbb",
"builtin",
"biltin",
"buOOltq",
"buiTvvtin",
"coFFor",
"00PfQ",
"coloP",
"color",
"col77s",
"colbbCr",
"colXXr",
"qoCCpuOOe",
"copstL",
"cXmpute",
"compute",
"compte",
"qopOt",
"compu22e",
"dyaXX0szzic",
"diVVgnitiP",
"dagCosnnic",
"diagnostic",
"agnostqqHHA",
"dignostic",
"difgnoKKt",
"frPggge",
"frament",
"TTragN4nc",
"fragment",
"prlgmen77",
"fzaNgent",
"bragmXXut",
"grou",
"88uK",
"gq9p",
"group",
"grou11",
"22oiip",
"ro77p",
"Nd",
"VVd",
"wW11",
"id",
"ww",
"Dd",
"K",
"ifput_11tPPachmhntrindex",
"input_atachment_index",
"inputYYattachment_index",
"input_attachment_index",
"intutVatkkachmenHHindex",
"irrput_attachment_index",
"isput_attachment_inWWex",
"inYerpolat",
"iqterLlfte",
"invver22uflte",
"interpolate",
"intrpolae",
"interpYlae",
"interyoYY77tE",
"Mnoodriat",
"invMMriat",
"invaria55t",
"invariant",
"Nariant",
"invari33n",
"invarian3",
"lmaIion",
"lrcatnKon",
"Xatio",
"location",
"loLLIion",
"lcafin",
"loUYRtDn",
"must_uhe",
"msqusuII",
"must_usH",
"must_use",
"vvQQstue",
"mus_66s",
"m7sO_se",
"055DDe",
"IIiHe",
"sze",
"size",
"sir",
"slze",
"JJGz",
"yerex",
"vrtex",
"veBBItex",
"vertex",
"ver8TTex",
"vYnnUUSddex",
"xCZ5tex",
"workkgroup_sizq",
"wiirkgr005psizp",
"wornngroIIp_size",
"workgroup_size",
"ccrkgroupsize",
"workgrupKKsz",
"workgroup_66ize",
};
for (auto _ : state) {
for (auto* str : kStrings) {
auto result = ParseAttribute(str);
benchmark::DoNotOptimize(result);
}
}
} // NOLINT(readability/fn_size)
BENCHMARK(AttributeParser);
void BuiltinTypeParser(::benchmark::State& state) {
const char* kStrings[] = {
"__atPmic_copEre_exchaKKge_result_i32",
"_atomic_compare_excxxange_result_i32",
"__aqomic_compare_exchange_result_i32",
"__atomic_compare_exchange_result_i32",
"MM_atomic_yyomparerexchange_resulS_i32",
"__atomuc_compare_exchange_reslt_i3",
"__atomi_compare_exchnS_result_i32",
"__atomic_cFFmpare_exchange_result_u52",
"__at4zmic_compare_exchange_resurrt_u32",
"__atWWic_ompare_exhange_result_u32",
"__atomic_compare_exchange_result_u32",
"__atomic_comZZare_JXxchange_result_C32",
"PP_atomic_compare_exchange_reslt_u32",
"__atomic_compare_exchange_resuct_u32",
"__frexPP_resul6_abstrllct",
"_frexp_result_yybstr99ct",
"__frexpJresult_absKKract",
"__frexp_result_abstract",
"__frexp_reult_abstraxt",
"__fexp_esulK_abstyyat",
"__frexp_resulV_abkzract",
"__fKexp_Sesuqt_f16",
"__frexp_result_f6",
"__rexp_result_fVV6",
"__frexp_result_f16",
"__frexpIresulAU_f16",
"j_frxp_resulRf16",
"_frep44resuYYt_f1",
"__frxp_result_f32",
"__frex11_rxxsul_f2",
"__frccxpmmresulJ_f",
"__frexp_result_f32",
"__freJJ_result_f32",
"_ffDDUxp_resulCClf32",
"__frexp_resultgf32",
"__frep_result_vecCC_absact",
"__frexp_resul_vec2_abstract",
"__fIexp_result_vec2_abstr__ct",
"__frexp_result_vec2_abstract",
"__fexp_result_vN2_aPPstrttct",
"__frexp_rddsult_vec2_abstr3ct",
"__rexp_result_vecK_ayystract",
"__frep_rest_vuuc2_f1",
"nn_fre0i_result_vec2_f13",
"K_frexp_renvlt_vec2uufCC6",
"__frexp_result_vec2_f16",
"__rexp_resultllvec2_X16",
"__frexpppresult_veo2_f16",
"__frepwwresult_vec2_f16",
"uu_fgxp_reslt_vec2mmf32",
"aa_frexpesmmltvec2_f32",
"__TrexRR_result_vecZ_cc32",
"__frexp_result_vec2_f32",
"__frexp_result_vec8T_fO2",
"__frexp_mesult00vec2_f32",
"m_frexp_result_vBBc2_f32",
"__frep_ppesuM_vec3_abstract",
"__fexp_result_vecOO_abstract",
"__frexp_rsult_vec3_aGGGtract",
"__frexp_result_vec3_abstract",
"__frexp_11esult_HHec3_abstract",
"__fre6peeresuFF_vec3_abstract",
"__fexp_result_vec3_abtract",
"__friixp_result_vKc3_f1l",
"__rexp_result_vec3_f16",
"__fexp99reIIult_vec3_fvv6",
"__frexp_result_vec3_f16",
"__frexp_result_vc3_f16",
"__frexp_rhsult_vec3_f16",
"__frexprPllsult_vezz3_f16",
"_frexp_rsult_v3_f32",
"__frexp_reffulqq_vc3_f32",
"_ddreJJp_result_vec3_f32",
"__frexp_result_vec3_f32",
"__feXXp_result_vec_zz32",
"__frexp_result_ve23_32",
"__frexp_result_yyeN3_f32",
"__frexp_result_vec_abtrOct",
"__fEexp_ZesultuveP4_abstract",
"22_frxplresult_veee4ddabstract",
"__frexp_result_vec4_abstract",
"__fexp_resultVVve4_abstrmct",
"__frexp_resut1vec4_abIItract",
"__frexp_result_vec4_abstrabt",
"__frexp_ri7lt_ec4_fz6",
"__frexp_resiilt_veo4_f16",
"_nfexp_resul_vec4_f16",
"__frexp_result_vec4_f16",
"__frexprisult_vec4_f1S",
"__frep_resul22_vec4_f1",
"__Cexp_res7lt_Gec4_f111",
"__fre8ff_result_vec4_f32",
"__frexp_resultve4_f32",
"__frexp_resuJJSS_vec4_f32",
"__frexp_result_vec4_f32",
"__frep9esult_vec4_f32",
"__frexp_JJesulTT_vecbb_f32",
"_frexp_res66lt_vec4_32",
"__m0df_resutuabstrac66",
"__yodf_resWt_abstract",
"_modf_reslt_abstract",
"__modf_result_abstract",
"__modf_result_bstract",
"__modf_result_abstrart",
"__modB_result2abstract",
"__modf_result_BB6",
"__modf_rsuRRt_f16",
"__VVodf_reLLl0_16",
"__modf_result_f16",
"__modKK_OOesut_16",
"__modf_weggult_f6",
"L_modf_respht_f16",
"_mKKdf_reEiultf32",
"_modf_result_f32",
"UU_mdf88result_f2",
"__modf_result_f32",
"__movvrr_result_f32",
"__mowf_mmesult_3",
"__m44df_rsultjf32",
"__modf_result_vXc2_abstract",
"__modf_result_vec2_8bstract",
"__modf_resvvlt_veEE2_abstrct",
"__modf_result_vec2_abstract",
"_modf_res99lt_vec2_zzbstrac",
"__GGQodf_rJJsult_vec2Aabstract",
"__modf_result_vec2_abstrasst",
"__modfPresult_vKc2_f16",
"__mottfresult_vppc_f16",
"__modf_rsult_ec2_f16",
"__modf_result_vec2_f16",
"__moMMf_result_vec2_f16",
"__modf_JJesult_0ec2_f16",
"__odf_resu8Vvec2f16",
"__modfKrggsult_vec2_fhh2",
"__modf_result_vec2_ff2",
"__Qodf_re77ult_vec2_f32",
"__modf_result_vec2_f32",
"__modf_resultYYvc2_f32",
"__mofkresult_vecS_f32",
"__modf_resut_en2_f322",
"__modf_result_vec_abtraFFt",
"_GGmodf_Iesult_vecPP_abstUUact",
"__mofarFsvlt_vec3_EEbstract",
"__modf_result_vec3_abstract",
"__eodf_resuldd_vec3_DDbstrBBt",
"EE_modf_result_v55c3Mccbstrac",
"__mofKKresultvvec3_bsract",
"__modf_resuRt_vec3_f16",
"__moDf_resu9t_vec3f16",
"__modf_result_vc3_f16",
"__modf_result_vec3_f16",
"aa_modf_rsult_Iec3_f1",
"__m77df_result_vec3_f16",
"__modI_result_vec3_f16",
"__modf_result_vec_f32",
"__modf_reult_vec3_f32",
"__modf_rsult_vec3_f2",
"__modf_result_vec3_f32",
"__m33df_reXXulc_vec3_f32",
"__modf_resultveE3_f32",
"__modf_result_vecXXf32",
"__modf_resultxxvBc4_abstract",
"__mWdf_resultvec_abstracG",
"__modf_re66ult_vec4_abstract",
"__modf_result_vec4_abstract",
"TT_modfresult_vec4a0stvact",
"_mof_result_kec4bstract",
"__modf_resultec4_abstrppct",
"__modf_reult11ec4_f16",
"__moEf_resuyt_veJ4_fBB6",
"__xodf_resuqt_vIIc4mf16",
"__modf_result_vec4_f16",
"__modf_rsult_Fec4_f16",
"__modfresult_vec4_f16",
"__DodHH_hesult_vec4_f16",
"__mHfreslt_ve224_f32",
"__mdf_reslt_vec4_f32",
"__modf_rsult_vec4_f32",
"__modf_result_vec4_f32",
"__mdf_result_vec4_f32",
"__modf_result_vec4_fdd2",
"__modf_result_OPc4_f32",
"brrB",
"a00ay",
"hrray",
"array",
"rragY",
"arOay",
"hry",
"EEfpmic",
"aomvc",
"tomzzc",
"atomic",
"atomi",
"OiiJom",
"aGomif",
"biTTding_a22ray",
"bindingldrray",
"bbnding_array",
"binding_array",
"bBBndig_array",
"PPIIndXnS_array",
"binding_arjjay",
"_occl",
"zz6xSl",
"G",
"bool",
"v4ox",
"boAA0",
"yye",
"WWb6",
"MMtt6",
"J",
"f16",
"FHSl",
"f104",
"fVVX",
"oV2",
"f3",
"fK2",
"f32",
"",
"3a",
"O2",
"G",
"i2",
"99R32",
"i32",
"32",
"YYvXR",
"2",
"XX",
"",
"cpp",
"i8",
"iv",
"SEE",
"",
"nput__ttaamet",
"input_wwttacment",
"inpddt_at99achment",
"input_attachment",
"99nPPt_attachent",
"input_attacKKmet",
"npuDDo_attachMent",
"a2Bi",
"mqx2",
"mLL200",
"mat2x2",
"mntvvx66",
"nrrtx2",
"etxxx2",
"mOtNNx2CC",
"ma2x2",
"atebb",
"mat2x2f",
"mat2x2J",
"mtxuf",
"Aat2xESf",
"mat2x0h",
"maaa2x2h",
"maqmmx2",
"mat2x2h",
"mt2x2h",
"mUUx2E",
"mDDtK2h",
"__at2t3",
"Apx3",
"matMx",
"mat2x3",
"maBB2x3",
"99nbbx3",
"AAEEt2x",
"m5662xTf",
"Hat2x3f",
"xxHtx3f",
"mat2x3f",
"mnyt2z3f",
"mt2x3f",
"makH3f",
"mat2ch",
"mrrx3oo",
"mJJx3h",
"mat2x3h",
"CCa203h",
"mAxFx99h",
"matcx3h",
"Sat2x4",
"mBBtox",
"ma2x4",
"mat2x4",
"mmaex4",
"mQPP2ggo",
"aB",
"mlKKN4f",
"marrx4",
"atrpx4f",
"mat2x4f",
"yPat2x4f",
"maZ2cc4",
"t2x4f",
"ma002x4h",
"msst24BJP",
"ffawwxJJh",
"mat2x4h",
"maXXI4h",
"2h",
"ma2x4h",
"mKKt3x",
"m4a3x2",
"pat3o2",
"mat3x2",
"jNtHHxhh",
"mww333EUU",
"muu32",
"Kaddxrrf",
"2tt3PP2r",
"m1twwx2f",
"mat3x2f",
"mat3xc1nn",
"at3x2f",
"ma3x2f",
"6SSaaIx2h",
"matx2EE",
"IcatVR2h",
"mat3x2h",
"m3x9h",
"aaht32h",
"mLtSx2h",
"mmtfx",
"mV3qm",
"__tx3",
"mat3x3",
"mQtx",
"EaddxRR",
"at3x9",
"at3C0",
"t3x3z",
"ccat3x3f",
"mat3x3f",
"at3x3Q_",
"matt3f",
"CCzzt333pEf",
"mat3hhddh",
"66t3x77h",
"mat3xPh",
"mat3x3h",
"matwx3h",
"uux3h",
"6at3XX3h",
"RRx4",
"VVt3",
"GGaHH3x4",
"mat3x4",
"MFFt374",
"mat34",
"ggatx",
"Pa1K3Q4_",
"matx4E",
"maM4f",
"mat3x4f",
"maG77S3xX",
"FFtt3xKf",
"mZZt3Uss4f",
"mat34h",
"mat3x4l",
"mht3x4h",
"mat3x4h",
"mKtTTxk",
"ma3xwwh",
"mt3x4Kjj",
"mtxYY",
"EEIt4c",
"mat4xQQ",
"mat4x2",
"Paxl",
"mtffHx2",
"mat4xn",
"matg26F",
"mhss8x2f",
"llFa4x2f",
"mat4x2f",
"2atjx0f",
"matgx2f",
"mat4xe",
"maff4xh",
"atxh",
"matx2h",
"mat4x2h",
"qqt4x2h",
"AA42h",
"matx2v",
"matjx3",
"mat4ZZ3",
"UPPt4II2",
"mat4x3",
"maZZ4x3",
"mat4xnn",
"ZZakkH223",
"mat43f",
"ma4xR",
"mat4xqq9f",
"mat4x3f",
"mat4773f",
"matx3",
"uut4xccf",
"m1tRR3h",
"mat4llJh",
"MMatI",
"mat4x3h",
"7T6t4x3",
"mat4xQQJ",
"uu4x3h",
"mat4",
"maq33",
"mxxt4x4",
"mat4x4",
"mNrr",
"ma94x4",
"ma4x4",
"alHx4f",
"_ax4f",
"mat44f",
"mat4x4f",
"mt4j4f",
"mmmt4EEttf",
"matxf",
"mrr4x4h",
"maxx4h",
"zzt4x4",
"mat4x4h",
"mat4x4e",
"au4pZ4h",
"muuTT4x00",
"vv",
"ptQ",
"tR",
"ptr",
"p",
"ptMM",
"ptC",
"resourceQQPPinding",
"resoDDrxxe_bin8uing",
"reddYYurcmllbiqqding",
"resource_binding",
"_esource_bindiFFg",
"rerroGGrce_bidinNN",
"Mesource_bilding",
"aler",
"slmpqex",
"samper",
"sampler",
"samp44r",
"WWGmpler",
"sjjmplr",
"sampler_compajjison",
"sampjercomparis1n",
"sapler_comparison",
"sampler_comparison",
"sampler_comparis99n",
"samVVler_comparison",
"ZZampler_cmparxson",
"subvvroup_ma33ri_left",
"subgroup_matrsx_lef9",
"subgroup_matFix_lef",
"subgroup_matrix_left",
"suegroup_muutrix_lft",
"subgroup_mtIixlefKK",
"subgroJ_matrix_left",
"subgrXXupSSmatriCC_result",
"subgrWWupZZmatrix_66esult",
"subroup_mari5_resumdt",
"subgroup_matrix_result",
"BBubgroupmaBBriU_result",
"subgr0up_mJJtri11_result",
"subfroup_matrix_rettult",
"subroup_maXrix_ightt",
"subgroup_matrix_riwhL",
"subgr1up_matrix_right",
"subgroup_matrix_right",
"subgroup_matrix_righww",
"subgou_atrix_righee",
"subgroup_matrx_right",
"texel_NNuffer",
"tRUUx__l_blffer",
"tHxel_buffer",
"texel_buffer",
"teCCelrbuffer",
"exel_buffer",
"texppl_bdfIr",
"textre_1d",
"textLN_d",
"tet_d",
"texture_1d",
"teqqtuxRR_GGd",
"texturS_GGd",
"88tucce_1d",
"texture_2",
"textte_ppd",
"qqFF0xture552d",
"texture_2d",
"txture_2d",
"textur2d",
"texOre_2d",
"textuHHe_2d_rray",
"text66re_2d_OrraSS",
"texture_2d_ddYraTT",
"texture_2d_array",
"textsrgg_2d_rray",
"texGGure_2d_array",
"teQQtOreI2ll_array",
"textue_3d",
"texrrure_3d",
"txtur7_yyd",
"texture_3d",
"textu22Be_Yd",
"textyyVe_3d",
"x4ure_3",
"texture_cudde",
"texVVuze_cu2",
"texturyy_cube",
"texture_cube",
"textu__A_cube",
"texture_chhbe",
"ttvvre_cube",
"texture_ub_array",
"tNNgtsre_cubeooarray",
"mmZZxtre_cube_aray",
"texture_cube_array",
"textuk_cue_array",
"texAur_ffube_aRray",
"Wxturrr_cube_zzrry",
"texture_depR_2d",
"textuSSe_88epth_Md",
"texture_debbPR_2d",
"texture_depth_2d",
"WWeture_depthxx2d",
"texture_dptAAv_2d",
"tj44xXure_depth_2d",
"texturefdepth_2d_array",
"texture_dAAUthOOd_array",
"tuxtue_ssept_2d_array",
"texture_depth_2d_array",
"tsxtuFFe_deptbb_2d_array",
"texture_depth_2d_annraYY",
"teture_depth_2d_arrass",
"textre_qezzth_cube",
"textre_NepQh_cube",
"tppxtukke_deph_cbe",
"texture_depth_cube",
"textssre_JepthLcube",
"77exJure_depthff5TTbe",
"texure_d00pth_cubx",
"texture1depth_cube_arrA",
"texture_depth_cube_rray",
"texture_depth_QQbe_array",
"texture_depth_cube_array",
"exture_depth_cubeiiaway",
"texture_depth_cube_arwway",
"texJJure_dephYh_cube_array",
"teEkure_depth_multi7ampld_2RR",
"texture_deptuu_multisampked_2d",
"texture_dethtRultisampled_2d",
"texture_depth_multisampled_2d",
"txture_dIIpth_multisNmpled_2d",
"texture_deptII_multisampled_d",
"texture_depthmultisamiiledE2d",
"txture_ssxternal",
"XeCC5tue_external",
"text9re_external",
"texture_external",
"tXxture_extrnl",
"txture_eteIInal",
"texturz_external",
"texturezzmultisaAApled222",
"texture_multiampled_2d",
"textbbre_mulisampld_2F",
"texture_multisampled_2d",
"textuVe_multisMMmpled_2d",
"texturA_mwcmmisamplzzd_2d",
"texture_muOOtisampeQQ2d",
"texbure_storage_1d",
"nne5kture_torage_1C",
"textue_KKtorarreyy1d",
"texture_storage_1d",
"tTxtue_ttorageAA1d",
"QQexture_sorage_1d",
"texture_t8rage_d",
"teture_stoaage_2d",
"eeextbr_stccrage_2d",
"texLLure_Porage_2d",
"texture_storage_2d",
"tetuWW_sUorage_2d",
"texture_stzzrage_2",
"text__re_soNa_2d",
"texaure_storage_2d_array",
"texture_storage2dBaray",
"texure_storagezz2darray",
"texture_storage_2d_array",
"teaatUre_stHHrage_2dbarray",
"texturesOo4ag_2d_array",
"textume_sGGrage_2d_array",
"teture_storage_3d",
"texturezzstG8rageN3d",
"texture_storag_3d",
"texture_storage_3d",
"textuxe_storaAAe_3d",
"tbbxture_suuorage_3d",
"tejjture_storage_3d",
"xccJ3",
"g",
"Av",
"u32",
"u3cc",
"BUU",
"uAAB",
"ux",
"8",
"BUC8",
"u8",
"u__",
"UU",
"u",
"vuuc7r",
"vkk2",
"lec2",
"vec2",
"vc2",
"vwY3",
"vec44",
"Rc2f",
"88ePPr2f",
"ec2J",
"vec2f",
"cVt",
"vecf",
"ec2",
"331h",
"uuch",
"4e02h",
"vec2h",
"v3rh",
"veYY2g",
"ve2h",
"rCCci",
"leci",
"vec2ZZ",
"vec2i",
"tqm9MMi",
"veUi",
"vgc77n",
"vdddu",
"vEcaau",
"vecIIu",
"vec2u",
"RReZ2ll",
"vecNNkrr",
"vec",
"vcw",
"vec",
"HH",
"vec3",
"cc3",
"vulB223",
"5ec3",
"eR3f",
"gec3f",
"ve3f",
"vec3f",
"vecpf",
"vecK99f",
"22Rcf",
"vecnn",
"veeENh",
"fHHec3h",
"vec3h",
"ss226h",
"em0h",
"vecNp",
"ve63",
"oZWWV3i",
"vHHi",
"vec3i",
"vAci",
"vTi",
"2ec3i",
"ve443W",
"8Z77",
"FeR3",
"vec3u",
"vebb3",
"ggce",
"UeSh",
"vqcN",
"vc",
"vccMM",
"vec4",
"xT",
"vqZ",
"e",
"vef",
"vecgg4f",
"rfe4f",
"vec4f",
"ve4f",
"vggc4D",
"v994Q",
"eeeh",
"vech",
"vc4II",
"vec4h",
"veqh",
"Ooc77h",
"vrrDD",
"vecji",
"11ciiFi",
"jBcRRi",
"vec4i",
"vdAc_7i",
"4jj",
"xxkeo",
"veW4u",
"IQQN1u",
"veIu",
"vec4u",
"vjc4",
"e722",
"vEElc4g",
};
for (auto _ : state) {
for (auto* str : kStrings) {
auto result = ParseBuiltinType(str);
benchmark::DoNotOptimize(result);
}
}
} // NOLINT(readability/fn_size)
BENCHMARK(BuiltinTypeParser);
void BuiltinValueParser(::benchmark::State& state) {
const char* kStrings[] = {
"barcentric_coord",
"baryce5tri_oord",
"ba66yc88ntrc_oord",
"barycentric_coord",
"barcetric_coard",
"bErycentrc_coord",
"Qaryentri_coord",
"clp_distanc_s",
"clip_rNtanc",
"clip_ditances",
"clip_distances",
"clTTeeB_distances",
"nnipgdis11ancs",
"clin_distqnces",
"mmBcag_deptX",
"fttag_dep7h",
"fag_dph",
"frag_depth",
"frag_epKh",
"jjran_deFFt",
"g8depEEh",
"frLnt_fciDDg",
"frhhnt55fScing",
"ronZ_facinuu",
"front_facing",
"7ront5PPfacing",
"font_facSnkk",
"fronEEFfa_ing",
"globyyl_nvocatbbo_id",
"globalJJinvocRinid",
"global_Tnvcation_1d",
"global_invocation_id",
"Xlobal_vocatioT_id",
"global_invocat00o_id",
"globalPinvocat77on_id",
"inspaceZindex",
"PPstanbe_indew",
"instssbbH8e_injjex",
"instance_index",
"instance_indhx",
"insancexxine",
"inrQaBce_ineex",
"local_invocation_iJJ",
"ocaluinvocwtio_id",
"lttcalZinvocatio_xxd",
"local_invocation_id",
"local_invocation_99d",
"localiocaion_id",
"local_invocatinffn_id",
"5ocal_invocation_index",
"IoUal_invocation_Jndex",
"locl_invocation_index",
"local_invocation_index",
"ltcal_invocation_index",
"local_in1ocation_index",
"localAAinvocation_inDDex",
"Pum_2uboOps",
"numsubgroups",
"num_77ubgroups",
"num_subgroups",
"num_smmUbAAro1s",
"nAAm_Xubgroufs",
"nuv_VVuvgrous",
"num_workgrppups",
"numTTworkgroups",
"num_workgjjok0ps",
"num_workgroups",
"um_workgroups",
"nu_yyorkgroups",
"nuzz_wokgrouYYs",
"positWion",
"0o7tiUUn",
"UUosipi",
"position",
"hTstion",
"posi5on",
"itio1",
"priIitimme_i44dex",
"priYRYYDie_index",
"primjjtive_index",
"primitive_index",
"prmitive_index",
"QQrimtide_index",
"primtive_in5Hex",
"saxpkFF_index",
"sapreindex",
"sampleKKi_Nex",
"sample_index",
"sample_aTdex",
"samplevvindex",
"amplejjindex",
"samplnnOOmas",
"sggOOpleOmsk",
"sawwQpe_mask",
"sample_mask",
"sampl_masJ",
"sample_masD",
"OOample_msk",
"subgroup_d",
"subro0p_id",
"lbgroup_d",
"subgroup_id",
"subgroup_iu",
"su33group_id",
"subgrouNNid",
"subgroup_inocaton_Md",
"subg22oup_Rnocationbbid",
"subgroup_ivocatiiin_id",
"subgroup_invocation_id",
"ubgroup_invocation_id",
"subgup_inCoocution_id",
"subHHoup_inUoaJion_id",
"subghrou_yize",
"WWugroup_BBze",
"EEbccroup_sCEze",
"subgroup_size",
"subgreep_siGyy",
"uUUroup44size",
"subgroup_sie",
"verteN_index",
"MMertexssindex",
"vertexDindCx",
"vertex_index",
"ggTYtex_index",
"vertjjx_index",
"vrtDDx_inde",
"99MMkEEroup_id",
"wNrkgrou_id",
"55orkgroup_id",
"workgroup_id",
"Qorkgroup_id",
"workgronnp_i",
"workFFroWWid",
};
for (auto _ : state) {
for (auto* str : kStrings) {
auto result = ParseBuiltinValue(str);
benchmark::DoNotOptimize(result);
}
}
} // NOLINT(readability/fn_size)
BENCHMARK(BuiltinValueParser);
void InterpolationSamplingParser(::benchmark::State& state) {
const char* kStrings[] = {
"ce66tew",
"cvFter",
"enWWr",
"center",
"cntr",
"5tK",
"cen4er",
"cnPtrggd",
"UentrSS",
"centro2V",
"centroid",
"cpntroid",
"X9VVn9r2id",
"ntrnd",
"ser",
"8BBte",
"AyACCher",
"either",
"eihBv",
"A4QQter",
"ZZtheT4",
"Xirlt",
"fiddt",
"fis",
"first",
"dis1",
"GGvs",
"jjst",
"samwle",
"Xamnle",
"ja9ple",
"sample",
"sape",
"sam2WWe",
"samle",
};
for (auto _ : state) {
for (auto* str : kStrings) {
auto result = ParseInterpolationSampling(str);
benchmark::DoNotOptimize(result);
}
}
} // NOLINT(readability/fn_size)
BENCHMARK(InterpolationSamplingParser);
void InterpolationTypeParser(::benchmark::State& state) {
const char* kStrings[] = {
"flV",
"fnzal",
"Ylt",
"flat",
"HMkat",
"fzzDI",
"dla",
"lineh",
"lFMMlaN",
"lina",
"linear",
"9Anx",
"VVnnar",
"iKer",
"perBBCecive",
"perpoctive",
"perspeccwtEE8e",
"perspective",
"erspectivbb",
"6erspective",
"erspectgg",
};
for (auto _ : state) {
for (auto* str : kStrings) {
auto result = ParseInterpolationType(str);
benchmark::DoNotOptimize(result);
}
}
} // NOLINT(readability/fn_size)
BENCHMARK(InterpolationTypeParser);
void TexelFormatParser(::benchmark::State& state) {
const char* kStrings[] = {
"braIun11Em",
"bgra8unrm",
"pHgra8uorm",
"bgra8unorm",
"bgqqaa8uGorm",
"bgra8unm",
"bgra8unrxxxx",
"r1zzfloaSS",
"r16foat",
"1o4oat",
"r16float",
"r16fla",
"rKflat",
"rzz6flct",
"1gg88ant",
"r1jjsint",
"riA6sin1",
"r16sint",
"rlVVs66nt",
"6sic",
"r16GGnht",
"jiiyysnor",
"rv_QQsnttm",
"r6soLLm",
"r16snorm",
"r16Wno7m",
"6svvoFr",
"ryysnzzrm",
"16uio",
"r16uI_c",
"rdd6int",
"r16uint",
"lM6ui2",
"r1Ouint",
"rKK6muiTT",
"rRR6no",
"4uno00",
"r16nqor",
"r16unorm",
"r16unorBB",
"r16u2WBarm",
"r16ujjorm",
"rt6HHlot",
"3JJflat",
"r3ooSlttat",
"r32float",
"rSS2far_",
"r32flWWat",
"r32flokt",
"r3bbitt",
"r32s1n",
"rf2siN",
"r32sint",
"rii2iVt",
"r32winU",
"r3Fsnt",
"r38LLuin44",
"r32uiZZt",
"MM32uint",
"r32uint",
"r3uint",
"rSSMMu6At",
"GGgxuinTT",
"rIsint",
"l8sint",
"r8OOn",
"r8sint",
"r8s5n",
"r8zRint",
"r8siPLL",
"r8snhhm",
"rsnorm",
"8snjm",
"r8snorm",
"r8BB0",
"xxL8nrm",
"rIIsnorMM",
"rXFFig",
"rzssunp",
"rZZrrinF",
"r8uint",
"r8jir00",
"rwwuirr",
"r8iZQ",
"rn__nrh",
"r8worm",
"r3unorm",
"r8unorm",
"runoiXm",
"r83m",
"rOvv8orm",
"rg1Pbvju5loat",
"rgi1b1Nfloat",
"rg21b10ufloa",
"rg11b10ufloat",
"rg11b1ufDJqat",
"r11b10mQloat",
"rg11bJ0uflat",
"rg16fWWat",
"wQg16gglwat",
"rg1zfloat",
"rg16float",
"rWW6flzzat",
"rg6flo",
"rKUU6fla99q",
"RRgEE6snt",
"r1sint",
"rg16sttt",
"rg16sint",
"rg1MMin",
"raaKKTBBint",
"l5516sIIn",
"rg16sooBBw",
"PPg1__snorm",
"rg16RRnorm",
"rg16snorm",
"rghSom",
"Q1srm",
"r6sn8HHrm",
"rg1YYuDnt",
"rg1Ouint",
"Jg8IIuinZ",
"rg16uint",
"ogY6uint",
"r0X6uint",
"rg6KKSncn",
"GGg1633nr88",
"rXX133unoqqm",
"rz16no4m",
"rg16unorm",
"rWttWKnhhrm",
"rg1rxorm",
"rg16CQerm",
"g3rYloat",
"rg32xmloat",
"r3float",
"rg32float",
"rg3244ylyyat",
"r3wwfloat",
"r32fBBaii",
"rgdd2ssint",
"rgMsinee",
"Tg32sint",
"rg32sint",
"r82s00l",
"6mmg1Lsint",
"Gg32IYYnt",
"rYY2uLVVt",
"m62s32uinI",
"r32uinjj",
"rg32uint",
"ppg2u7",
"Ng32ui6t",
"rg32uinsgg",
"g8sint",
"JgOOsqnt",
"rg00sinMM",
"rg8sint",
"rMM8smmnt",
"rH8sqqt",
"gGsin88",
"gRRswworm",
"rgqsnorm",
"gUsom",
"rg8snorm",
"g8sBo5MQ",
"33g8snorm",
"Og8sno33m",
"w8unt",
"rgAkkM_t",
"rg8int",
"rg8uint",
"dg8i",
"rXXI55wwnt",
"g8uint",
"g8dorm",
"dJJunom",
"rg8_orm",
"rg8unorm",
"rgnorL",
"99g8unrm",
"xU8unorm",
"9gb10a2uit",
"rvb10a2uint",
"LLgb10a22uint",
"rgb10a2uint",
"rg1bf1uint",
"rgb1AAa2uin",
"CU10a2ui",
"rgb1zza2unwnm",
"MMwVVb10a2unonm",
"rgb10aNNXorm",
"rgb10a2unorm",
"rgb10a2un77Wee",
"vvgb133a2PPRorm",
"rg2210a2unorjj",
"rgbaAA6flot",
"kkba1NfRRoat",
"rQQba16float",
"rgba16float",
"rgb16fuuoat",
"uuba16flat",
"rga1floaZ",
"rgHa16snt",
"rgdSSS16sint",
"rgba16sTTnt",
"rgba16sint",
"rmb16ctnt",
"rgba16shhnt",
"rgba16siG",
"HHgbaww6snAArbb",
"rgba1BBsnorm",
"rgbM2hsnogm",
"rgba16snorm",
"rgba1snorWW",
"rgbqq16snorm",
"rgbar6snUUm",
"rgba6uiEt",
"rrVVba16uRnt",
"rgbH31GGOint",
"rgba16uint",
"rgba1ui55",
"rgBa16uiSSt",
"rga16uazz",
"rga16noAA66",
"rgbw6_norm",
"rgba6unorm",
"rgba16unorm",
"rgbr16norm",
"rgba16unRRrG",
"KK1ba1LLunoxm",
"rgba32NWWlFat",
"rgba3GfoUt",
"r6bEEFF2flat",
"rgba32float",
"99TJJbyy3float",
"rzb32float",
"gba3Iloat",
"gb32pt",
"ttgnn32sint",
"rgba3isiKt",
"rgba32sint",
"reeba32sint",
"rgbg_2si11t",
"rgb32sint",
"rgba3ont",
"rpbX3ui",
"rgYY6ss2uin",
"rgba32uint",
"r77ba3YuInt",
"rgbaSSeeuinG",
"rgbQluint",
"gba8int",
"rgba__sint",
"rDDba8sin",
"rgba8sint",
"rga8int",
"551balsint",
"rgbc4int",
"gba8snorm",
"rgOa811no6m",
"rgasnosm",
"rgba8snorm",
"rgba8snXrm",
"rg44w8snorm",
"rgba8YYnorm",
"rgba8int",
"gTTa8ynt",
"rga8vvbbt",
"rgba8uint",
"rgbakuint",
"g99a5uit",
"lRRbauinjj",
"YYgb8u77orm",
"rbaLLJrm",
"rgnnunorm",
"rgba8unorm",
"rooba8uord",
"rba8Enobm",
"rba8unorm",
};
for (auto _ : state) {
for (auto* str : kStrings) {
auto result = ParseTexelFormat(str);
benchmark::DoNotOptimize(result);
}
}
} // NOLINT(readability/fn_size)
BENCHMARK(TexelFormatParser);
} // namespace
} // namespace tint::core
// clang-format on