| // 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", |
| "subgoup_syze", |
| "ubgroup_size", |
| "subIIroupBBsize", |
| "subgroup_size", |
| "su8gTToup_s33ze", |
| "dnnUUbgrouSSY_size", |
| "xCu5groupZsize", |
| "vqkrtex", |
| "5iirp00", |
| "vnnrIIex", |
| "vertex", |
| "cceKe", |
| "vrKK", |
| "ve66tex", |
| "wKKkgroEp_PPiz", |
| "xorkgroup_size", |
| "workgroqp_size", |
| "workgroup_size", |
| "rorkgroupyMMSize", |
| "wrgroup_uize", |
| "wrkgrouSsie", |
| }; |
| 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[] = { |
| "__atomic_cFFmpare_exchange_result_i52", |
| "__at4zmic_compare_exchange_resurrt_i32", |
| "__atWWic_ompare_exhange_result_i32", |
| "__atomic_compare_exchange_result_i32", |
| "__atomic_comZZare_JXxchange_result_C32", |
| "PP_atomic_compare_exchange_reslt_i32", |
| "__atomic_compare_exchange_resuct_i32", |
| "__a6llmic_comparePPexchange_result_u32", |
| "__a99omic_compare_xchanyye_result_u32", |
| "__atoKKic_compare_exchange_result_u32", |
| "__atomic_compare_exchange_result_u32", |
| "__atomic_xompareexchange__esult_u32", |
| "__atomi_compare_exhanyy_result_uK2", |
| "__atomic_compare_zxchangeVresukt_u32", |
| "__freqp_rKsult_abstract", |
| "__rexp_result_abstract", |
| "__frexpresult_abstrVVct", |
| "__frexp_result_abstract", |
| "__frAAUp_resIlt_abstract", |
| "jfrexp_result_astrabt", |
| "__44YYxp_resultabstrat", |
| "__frxp_result_f16", |
| "__frex11_rxxsul_f6", |
| "__frccxpmmresulJ_f", |
| "__frexp_result_f16", |
| "__freJJ_result_f16", |
| "_ffDDUxp_resulCClf16", |
| "__frexp_resultgf16", |
| "_frexp_rult_CC32", |
| "_frexp_result_f32", |
| "__freIp_res__lt_f32", |
| "__frexp_result_f32", |
| "__frttp_PPsult_f32", |
| "__frexp_resul3d_f32", |
| "_frexp_Kesultyyf32", |
| "__rexp_resultvec2_abstacu", |
| "__frexi_re3ult_venn2_abs0ract", |
| "__frexpKrenultuuvecCC_vbstract", |
| "__frexp_result_vec2_abstract", |
| "__frllxp_Xesult_ec2_abstract", |
| "__frexp_result_vec2_aostrppct", |
| "ww_frexp_result_vec2_abstrat", |
| "uu_fgxp_reslt_vec2mmf16", |
| "aa_frexpesmmltvec2_f16", |
| "__TrexRR_result_vecZ_cc16", |
| "__frexp_result_vec2_f16", |
| "__frexp_result_vec8T_fO6", |
| "__frexp_mesult00vec2_f16", |
| "m_frexp_result_vBBc2_f16", |
| "__frex_ppeslt_vecM_f32", |
| "__fexp_result_vOOc2_f32", |
| "__GGrexp_reult_Gec2_f32", |
| "__frexp_result_vec2_f32", |
| "__frex11_resulHH_vec2_f32", |
| "_eere6p_resulFF_vec2_f32", |
| "__frexpresult_vec2_f2", |
| "__friixplresult_vec3_abstrKct", |
| "__frexp_esult_vec3_abstract", |
| "__rexII_result99vec3_abvvtract", |
| "__frexp_result_vec3_abstract", |
| "__frexp_result_vec_abstract", |
| "__frhxp_result_vec3_abstract", |
| "__frexp_result_llec3_zzbtraPPt", |
| "_frexp_rsult_v3_f16", |
| "__frexp_reffulqq_vc3_f16", |
| "_ddreJJp_result_vec3_f16", |
| "__frexp_result_vec3_f16", |
| "__feXXp_result_vec_zz16", |
| "__frexp_result_ve23_16", |
| "__frexp_result_yyeN3_f16", |
| "__frexpresult_ve3_3OO", |
| "__fZePp_rusrlt_vec3_fE2", |
| "__freeepresddll_vec3_2232", |
| "__frexp_result_vec3_f32", |
| "mfrexp_r9sult_ec3_fVV2", |
| "__IIrexp1result_vec3_f3", |
| "__frexp_result_vec3_f3b", |
| "__frexp_result_e7i_abstrat", |
| "__frexp_oesult_vecii_abstract", |
| "__fxp_r5sult_vecn_abstract", |
| "__frexp_result_vec4_abstract", |
| "__frexp_resultvec4Sabstract", |
| "_22frexp_reslt_vec4_abstrct", |
| "__Grexp_result7vecC_abst11ac", |
| "__fre8ff_result_vec4_f16", |
| "__frexp_resultve4_f16", |
| "__frexp_resuJJSS_vec4_f16", |
| "__frexp_result_vec4_f16", |
| "__frep9esult_vec4_f16", |
| "__frexp_JJesulTT_vecbb_f16", |
| "_frexp_res66lt_vec4_16", |
| "__fre0p_r66sultuvec_f32", |
| "__frexp_resuyW_ec4_f32", |
| "__frep_result_vec_f32", |
| "__frexp_result_vec4_f32", |
| "__frxp_result_vec4_f32", |
| "__frexp_result_vec4rf32", |
| "__frexp_2esult_vec4_f3B", |
| "__modf_resultBBastract", |
| "RR_modf_reult_abstract", |
| "_LLmodf_resulVV0btract", |
| "__modf_result_abstract", |
| "__modOO_resltKKabstrac", |
| "__modw_rggsult_absract", |
| "__mod_resultLhabstrpct", |
| "_mKKdf_reEiultf16", |
| "_modf_result_f16", |
| "UU_mdf88result_f6", |
| "__modf_result_f16", |
| "__movvrr_result_f16", |
| "__mowf_mmesult_1", |
| "__m44df_rsultjf16", |
| "__modf_resulX_f32", |
| "8_modf_result_f32", |
| "EE_modf_reultvvf32", |
| "__modf_result_f32", |
| "__modziesult99f32", |
| "__modfJJresnlGG_QQ32", |
| "__modf_resultssf32", |
| "K_modf_result_Pec2_abstract", |
| "__modf_resut_vc2_abstrpttct", |
| "__modf_reult_vec2_abstrct", |
| "__modf_result_vec2_abstract", |
| "__modMM_result_vec2_abstract", |
| "__modf_result_vec2_absJ0ract", |
| "__modf_resul_vV2_ab8trac", |
| "__modfKrggsult_vec2_fhh6", |
| "__modf_result_vec2_ff6", |
| "__Qodf_re77ult_vec2_f16", |
| "__modf_result_vec2_f16", |
| "__modf_resultYYvc2_f16", |
| "__mofkresult_vecS_f16", |
| "__modf_resut_en2_f122", |
| "__modf_rsult_FFec2_f2", |
| "u_modf_resultUUvGGPP2_f3I", |
| "_amodfFresult_vec2EEfv", |
| "__modf_result_vec2_f32", |
| "e_DDof_rddsult_vec2_BB32", |
| "__Modf_reEEult_v55c2_cc3", |
| "_mKKdvresult_vc2_f32", |
| "__modf_Result_vec3_abstract", |
| "__modf_re9ut_vec3_abstract", |
| "__modf_result_ve3_abstract", |
| "__modf_result_vec3_abstract", |
| "aa_mdI_result_ec3_abstract", |
| "__77odf_result_vec3_abstract", |
| "__mIdf_result_vec3_abstract", |
| "__modf_result_vec_f16", |
| "__modf_reult_vec3_f16", |
| "__modf_rsult_vec3_f6", |
| "__modf_result_vec3_f16", |
| "__m33df_reXXulc_vec3_f16", |
| "__modf_resultveE3_f16", |
| "__modf_result_vecXXf16", |
| "__modxx_result_veB3_f32", |
| "_modfresultGGec3_f32", |
| "__modf_result_vec3_f366", |
| "__modf_result_vec3_f32", |
| "__0dv_result_veTT_f32", |
| "__mdfresukt_ve_f32", |
| "__mdf_reult_vec3_fpp2", |
| "__modf_result_vec11_abstrt", |
| "__Jodf_resulE_vec4BBybstract", |
| "_qmodx_IImsult_vec4_abstract", |
| "__modf_result_vec4_abstract", |
| "__modf_result_vec4_aFstrac", |
| "_modf_rYsult_vec4_abstract", |
| "__modh_reHHult_vec4_abstDact", |
| "__mHfreslt_ve224_f16", |
| "__mdf_reslt_vec4_f16", |
| "__modf_rsult_vec4_f16", |
| "__modf_result_vec4_f16", |
| "__mdf_result_vec4_f16", |
| "__modf_result_vec4_fdd6", |
| "__modf_result_OPc4_f16", |
| "_modabbresult_vec4_f3", |
| "__m00df_result_vec4_32", |
| "__modf_result_hec4_f32", |
| "__modf_result_vec4_f32", |
| "__modf_YYesult_veg4_32", |
| "__modf_result_Oec4_f32", |
| "_hmodfresult_vec_f32", |
| "fEppay", |
| "rrvy", |
| "arazz", |
| "array", |
| "arra", |
| "OiiJa", |
| "aGray", |
| "aTT22mic", |
| "ltomic", |
| "atbmic", |
| "atomic", |
| "atomiB", |
| "aPIIoXiS", |
| "atojjic", |
| "bccnding_a_ray", |
| "bndiS6xx_azzray", |
| "iing_array", |
| "binding_array", |
| "Nindi4g_vxxay", |
| "iAAdingpp00rra", |
| "byning_aeeya", |
| "bWWbl", |
| "MMtmol", |
| "d", |
| "bool", |
| "_oo", |
| "bEEoV", |
| "boo4", |
| "fVVX", |
| "oV6", |
| "f1", |
| "f16", |
| "fK6", |
| "", |
| "1a", |
| "O2", |
| "G", |
| "f2", |
| "f32", |
| "99R32", |
| "32", |
| "YYvXR", |
| "2", |
| "XX5", |
| "3", |
| "i32", |
| "ppcc", |
| "v32", |
| "EESS", |
| "", |
| "m", |
| "iw9", |
| "i8", |
| "n", |
| "pp9P", |
| "n8", |
| "npuoo_attchmMnnn", |
| "niBut_attaahent", |
| "inptqatacment", |
| "input_attachment", |
| "00nput_aLtacment", |
| "input_attac66mvvnt", |
| "nrrut_attachment", |
| "etxxx2", |
| "mONCC2x2", |
| "mt2x2", |
| "mat2x2", |
| "mt2x2", |
| "mJNNNx2", |
| "mt2u2", |
| "Aat2xESf", |
| "mat2x0f", |
| "maaa2x2f", |
| "mat2x2f", |
| "maqmmx2", |
| "mt2x2f", |
| "mUUx2E", |
| "mDDtK2h", |
| "mat2x0t_", |
| "lApxh", |
| "mat2x2h", |
| "mtMx2h", |
| "mat2xBBh", |
| "nnt99bbh", |
| "AAEEt2x", |
| "m65T2x3", |
| "mat2xH", |
| "mat2x3", |
| "mHHt2x", |
| "yy0n2z3", |
| "mat23", |
| "makH3f", |
| "mat2cf", |
| "mrrx3oo", |
| "mat2x3f", |
| "mJJx3f", |
| "CCa203f", |
| "mAxFx99f", |
| "matcx3h", |
| "mat2S3h", |
| "masoxBB", |
| "mat2x3h", |
| "matx3h", |
| "matx3em", |
| "oPPtx3gQQ", |
| "aB", |
| "atKNxl", |
| "mrrt4", |
| "mat2x4", |
| "atrpp4", |
| "mat2Py4", |
| "cc2ZZ4", |
| "t2x4f", |
| "ma002x4f", |
| "msst24BJP", |
| "mat2x4f", |
| "ffawwxJJf", |
| "maXXI4f", |
| "2f", |
| "ma2x4h", |
| "utKKx4h", |
| "ma442dh", |
| "mat2x4h", |
| "motpx4h", |
| "mathhjN4h", |
| "ma33UUEwwh", |
| "muu32", |
| "at3crdd", |
| "matttPP", |
| "mat3x2", |
| "swwt3x1", |
| "mnnt11x2", |
| "mt3x2", |
| "ma3x2f", |
| "6SSaaIx2f", |
| "matx2EE", |
| "mat3x2f", |
| "IcatVR2f", |
| "m3x9f", |
| "aaht32f", |
| "mLtSx2h", |
| "mfmm32", |
| "mm4V2h", |
| "mat3x2h", |
| "matx__", |
| "Qat2h", |
| "mdRRE3x2", |
| "at3x9", |
| "0Ctx", |
| "m3z3", |
| "mat3x3", |
| "matccx3", |
| "Ot3Q_3", |
| "ma3xt", |
| "CCzzt333pEf", |
| "mat3hhddf", |
| "66t3x77f", |
| "mat3x3f", |
| "mat3xPf", |
| "matwx3f", |
| "uux3f", |
| "6at3XX3h", |
| "mR33h", |
| "m33VV", |
| "mat3x3h", |
| "mHHt3GG3h", |
| "mMtFF73h", |
| "9at3x3", |
| "3at3x", |
| "mt3B_4", |
| "aaaBOO3", |
| "mat3x4", |
| "matAA4", |
| "matGGy", |
| "77a3xX", |
| "FFtt3xKf", |
| "mZZt3Uss4f", |
| "mat34f", |
| "mat3x4f", |
| "mat3x4l", |
| "mht3x4f", |
| "mKtTTxk", |
| "ma3xwwh", |
| "mt3x4Kjj", |
| "atxYYh", |
| "mat3x4h", |
| "mat3EE4", |
| "QQat3x4h", |
| "lat3P", |
| "mtffHx2", |
| "mat4xn", |
| "Fat466", |
| "mat4x2", |
| "hass4x8", |
| "mallFF2", |
| "2t4002", |
| "matgx2f", |
| "mat4xe", |
| "maff4xf", |
| "mat4x2f", |
| "atxf", |
| "matx2f", |
| "qqt4x2f", |
| "AA42h", |
| "matx2v", |
| "mjjt4xh", |
| "mat4x2h", |
| "ZZat4x2h", |
| "mPIItO22h", |
| "mZZt4x2h", |
| "mat4xnn", |
| "ZZakkH223", |
| "mt4x3", |
| "mat4x3", |
| "Rt43", |
| "maqq4x99", |
| "m77t4x3", |
| "matx3", |
| "uut4xccf", |
| "m1tRR3f", |
| "mat4x3f", |
| "mat4llJf", |
| "MMatI", |
| "7T6t4x3", |
| "mat4xQQJ", |
| "uu4x3h", |
| "mat4h", |
| "mat4x3h", |
| "m433qh", |
| "maxx4x3h", |
| "Nrr4h", |
| "ma94x4", |
| "ma4x4", |
| "mltH4", |
| "mat4x4", |
| "_t44", |
| "mt4x4", |
| "jt4x4", |
| "mmmt4EEttf", |
| "matxf", |
| "mrr4x4f", |
| "mat4x4f", |
| "maxx4f", |
| "zzt4x4", |
| "mat4x4e", |
| "au4pZ4h", |
| "muuTT4x00", |
| "mvvxJJ", |
| "mat4x4h", |
| "maQ4x4h", |
| "mC4R4h", |
| "aCx", |
| "pPPr", |
| "puDxxr", |
| "qqYYmll", |
| "ptr", |
| "p_FF", |
| "NNGtr", |
| "Mlr", |
| "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 |