| // 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 |
| //////////////////////////////////////////////////////////////////////////////// |
| |
| #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", |
| "samQQPPer", |
| "suDDmplxxr", |
| "YYlqamdpler", |
| "sampler", |
| "amFFle__", |
| "rrGGNNler", |
| "samMler", |
| "samlr_cmparison", |
| "sampler_comparqxon", |
| "sampler_comprison", |
| "sampler_comparison", |
| "sapler_comparis44n", |
| "sampler_WWomparGson", |
| "sampler_compajjson", |
| "sjjbgroup_matrix_left", |
| "subgrojp_matrix_l1t", |
| "subgrop_matrix_left", |
| "subgroup_matrix_left", |
| "subg99oup_matrix_left", |
| "subgroup_mayrix_lVVft", |
| "subgroup_matiZZ_lext", |
| "sugr33uvv_matrix_result", |
| "ssbgroup_9atrix_result", |
| "suFgroup_matrixresult", |
| "subgroup_matrix_result", |
| "ubgroup_matrix_eesuuut", |
| "sKKbgrou_mItrx_result", |
| "subgroup_aJrix_result", |
| "subgroupCCmatrixXXrighSS", |
| "subZZr66uWW_maJrix_right", |
| "summgropmadrix_5ight", |
| "subgroup_matrix_right", |
| "subUoup_matrBBx_riBBht", |
| "subgJJoup_mat110x_right", |
| "subgroup_matrix_rfgttt", |
| "texelbufftt", |
| "texel_buLwer", |
| "texel_bu1fer", |
| "texel_buffer", |
| "tewwel_buffer", |
| "teelbuffer", |
| "texel_bffer", |
| "textNNre_1d", |
| "tex__uleRUU1d", |
| "texHure_1d", |
| "texture_1d", |
| "teCCturr_1d", |
| "textre_1d", |
| "textupd_1d", |
| "textre_2d", |
| "textLN_d", |
| "tet_d", |
| "texture_2d", |
| "teqqtuxRR_GGd", |
| "texturS_GGd", |
| "88tucce_2d", |
| "texture_2d_arra", |
| "texture_2dpparty", |
| "te55tureFF02d_aqqray", |
| "texture_2d_array", |
| "texure_2d_array", |
| "texture_2d_ary", |
| "texure_2dOarray", |
| "textuHHe_3", |
| "66extureSS3O", |
| "tTTturddY_3d", |
| "texture_3d", |
| "textursg3d", |
| "texture_3GG", |
| "tIxtllOQQ_3d", |
| "txture_cube", |
| "texture_crrbe", |
| "teyytue_cub7", |
| "texture_cube", |
| "tBBxWur22_cube", |
| "yyexture_cubV", |
| "texturec4", |
| "texture_cudde_array", |
| "textu2e_cVVbz_rray", |
| "texture_cubeyyarray", |
| "texture_cube_array", |
| "texture_cAb___array", |
| "texture_cube_arhhay", |
| "teture_cube_arvvy", |
| "txture_dept_2d", |
| "texNNure_gesth_ood", |
| "emmtre_ZZepth_2d", |
| "texture_depth_2d", |
| "texture_dkt_2d", |
| "teRtue_ffepth_2d", |
| "terrztuWdepth_2d", |
| "texture_dept_2d_Rrray", |
| "texture_dS88ptM_2d_array", |
| "bbexurR_depth_2d_PPrray", |
| "texture_depth_2d_array", |
| "texturexxWWeth_2d_array", |
| "texture_dAAvth_2d_array", |
| "textujje_de44th_2d_Xrray", |
| "textufe_depth_cube", |
| "textureAAUepth_cOOe", |
| "tuxtre_ssepth_cue", |
| "texture_depth_cube", |
| "bbexture_sFFpth_cube", |
| "texture_nnepth_cubYY", |
| "teture_depth_cubss", |
| "textre_dzzpthqcube_array", |
| "texuQedepth_cube_aNNray", |
| "textukke_eptpp_cubearray", |
| "texture_depth_cube_array", |
| "texturL_depth_cusse_arraJ", |
| "texture5ffepth_cubeJa77TTay", |
| "textur00_dpxh_cube_array", |
| "exture_depth_Aulti1ampled_2d", |
| "texturedepth_multisampled_2d", |
| "textQQre_depth_multisamled_2d", |
| "texture_depth_multisampled_2d", |
| "iiexture_depthwultiampled_2d", |
| "texture_depth_mwwltisampled_2d", |
| "teYYturh_deptJJ_multisampled_2d", |
| "texture_RRxkEnal", |
| "texture_exteknauu", |
| "textrRtexternal", |
| "texture_external", |
| "IIeNtre_external", |
| "texture_exIernal", |
| "Eiixture_externl", |
| "texture_multsssample_2d", |
| "txture_mCCltXsa55pled_2d", |
| "9exture_multisampled_2d", |
| "texture_multisampled_2d", |
| "exture_mltisampled_Xd", |
| "tetIIre_mltisampled_2d", |
| "texzure_multisampled_2d", |
| "tAAxtur22_zztorae_1d", |
| "texture_storag_1d", |
| "texturbb_strageFd", |
| "texture_storage_1d", |
| "teVture_stMMrage_1d", |
| "textuwe_storacmzz_1d", |
| "textuQQOO_storag1d", |
| "texbure_storage_2d", |
| "nne5kture_torage_2C", |
| "textue_KKtorarreyy2d", |
| "texture_storage_2d", |
| "tTxtue_ttorageAA2d", |
| "QQexture_sorage_2d", |
| "texture_t8rage_d", |
| "texture_storag_2d_aaray", |
| "exteccre_storage_bd_array", |
| "txture_storage_dLLaPPray", |
| "texture_storage_2d_array", |
| "texWWUr_storag_2d_array", |
| "texzzure_stoage_2d_array", |
| "textNre_stoage_2__rray", |
| "texture_storagea3d", |
| "texre_stoBage_3d", |
| "zzexture_torge_3d", |
| "texture_storage_3d", |
| "textureUaatorbge_HHd", |
| "te4ture_sOorg_3d", |
| "texGGme_storage_3d", |
| "u3", |
| "8Gzz2", |
| "u3", |
| "u32", |
| "uAAx", |
| "ubb32", |
| "u3jj", |
| "cqJx", |
| "", |
| "A", |
| "u8", |
| "cc8", |
| "BU", |
| "BAA", |
| "vxc2", |
| "Ue8", |
| "vUICB8", |
| "vec2", |
| "vec__", |
| "ecUU", |
| "vec", |
| "vrruc27", |
| "ve2kk", |
| "vel2f", |
| "vec2f", |
| "vecf", |
| "YYc3f", |
| "44ec2f", |
| "Rc2h", |
| "88ePPr2h", |
| "ec2J", |
| "vec2h", |
| "cVt", |
| "vech", |
| "ec2", |
| "331i", |
| "uuci", |
| "4e02i", |
| "vec2i", |
| "v3ri", |
| "veYY2g", |
| "ve2i", |
| "rCCcu", |
| "lecu", |
| "vec2ZZ", |
| "vec2u", |
| "tqm9MMu", |
| "veUu", |
| "vgc77n", |
| "dddd", |
| "aaecE", |
| "vIIc3", |
| "vec3", |
| "ZllRR3", |
| "kNNecrr", |
| "e3", |
| "vc3f", |
| "veca", |
| "HHec3G", |
| "vec3f", |
| "cc3f", |
| "vB22nllf", |
| "vec35", |
| "eR3h", |
| "gec3h", |
| "ve3h", |
| "vec3h", |
| "vecph", |
| "vecK99h", |
| "22Rch", |
| "vecnn", |
| "veeENi", |
| "fHHec3i", |
| "vec3i", |
| "ss226i", |
| "em0i", |
| "vecNp", |
| "ve63", |
| "oZWWV3u", |
| "vHHu", |
| "vec3u", |
| "vAcu", |
| "vTu", |
| "2ec3u", |
| "vec4W", |
| "8eZ", |
| "FRc", |
| "vec4", |
| "bbc4", |
| "gce", |
| "ech", |
| "vZqNN", |
| "v9f", |
| "ccHMMf", |
| "vec4f", |
| "v4x", |
| "veXX", |
| "4f", |
| "veh", |
| "vecgg4h", |
| "rfe4h", |
| "vec4h", |
| "ve4h", |
| "vggc4D", |
| "v994Q", |
| "eeei", |
| "veci", |
| "vc4II", |
| "vec4i", |
| "veqi", |
| "Ooc77i", |
| "vrrDD", |
| "vecju", |
| "11ciiFu", |
| "jBcRRu", |
| "vec4u", |
| "vdAc_7u", |
| "4jj", |
| "xxkeo", |
| }; |
| 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[] = { |
| "clipWdistances", |
| "clIp_disNQQnc1s", |
| "clip_Iistance", |
| "clip_distances", |
| "clip_distjnce", |
| "li22_dstanc7s", |
| "clilc_diKtaEgces", |
| "frag_dept", |
| "5rag_dth", |
| "rag66e88th", |
| "frag_depth", |
| "ag_depth", |
| "frag_dEth", |
| "fagheQqh", |
| "front_fa_ig", |
| "fNot_arng", |
| "front_facng", |
| "front_facing", |
| "frTTeet_faBBing", |
| "11gont_acnnn", |
| "fqont_facinn", |
| "global_invmmBaccion_iX", |
| "gttbal_i77vocation_id", |
| "globalinvoatio_id", |
| "global_invocation_id", |
| "global_iKvocatin_id", |
| "globnl_injjcation_FFd", |
| "glb8l_invoaEEio_id", |
| "inLDtvnc_index", |
| "ih55stanco_Sndex", |
| "instane_iZuuex", |
| "instance_index", |
| "instancePPi7de55", |
| "instSnce_ndkkx", |
| "iFStanceEEindex", |
| "lcal_invyycbbtin_id", |
| "ocal_iJvoationRid", |
| "locaT_1nvoction_id", |
| "local_invocation_id", |
| "lcal_invocaXiTn_d", |
| "l00ca_invocation_id", |
| "local_invoc77tion_Pd", |
| "locl_inpocation_Zndex", |
| "PPocaw_invocatin_idbbx", |
| "8ocass_inHbbocation_indejj", |
| "local_invocation_index", |
| "local_inhocation_index", |
| "lcal_invocaxxio_indx", |
| "lcal_invocationrrinQeB", |
| "num_workJJroups", |
| "nu_wurkgrwuv", |
| "nutt_workgrupxx", |
| "num_workgroups", |
| "num_workvr99ups", |
| "num_rroups", |
| "numnnfforkgroups", |
| "posi5ion", |
| "uJUition", |
| "positio", |
| "position", |
| "positton", |
| "po1ition", |
| "pDDsitioAA", |
| "OPmiti2e_i", |
| "primiive_id", |
| "primi77ive_id", |
| "primitive_id", |
| "pUUimi1ie_AAmm", |
| "primitife_iAA", |
| "prvmitiVV_vd", |
| "ppample_index", |
| "sample_TTndex", |
| "kampljj_inde00", |
| "sample_index", |
| "sampe_index", |
| "ample_inyyex", |
| "saYYzze_index", |
| "sampiie_masW", |
| "UUa7plemas6", |
| "sampleUUps", |
| "sample_mask", |
| "hampleTTmk", |
| "sampe_mask", |
| "sa1pleak", |
| "submmroI44_id", |
| "suRgroYYDDid", |
| "subgroujj_id", |
| "subgroup_id", |
| "subgrou_id", |
| "subgouQQ_id", |
| "subgrHupi55", |
| "subgroux_ikvoFFation_id", |
| "sugDouprnvocation_id", |
| "sNbgroupKKinvocatio__id", |
| "subgroup_invocation_id", |
| "subaroup_invoxatTon_id", |
| "subgroup_invocatiovv_id", |
| "subgroup_invocation_jj", |
| "subgrounn_sOOe", |
| "sbggrOOupOsize", |
| "sQQbwwoup_size", |
| "subgroup_size", |
| "ubgJoup_size", |
| "subgDoup_size", |
| "OOubgrou_size", |
| "verte_index", |
| "vetex_i0dex", |
| "verte_iqle", |
| "vertex_index", |
| "vertex_inuex", |
| "ver33ex_index", |
| "ertex_NNndex", |
| "workgrp_Md", |
| "workgb22Ru_id", |
| "workiioup_id", |
| "workgroup_id", |
| "wokgroup_id", |
| "wokguup_ioo", |
| "worHHroJU_d", |
| }; |
| 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[] = { |
| "chggyg", "WWetBB", "enEcceEE", "center", "ceeetyy", "U44ner", "cente", |
| "cNntroid", "MMentroiss", "ceCtroDd", "centroid", "cTntggYid", "centjjoid", "cenDDoi", |
| "eEEMM9er", "eNher", "55ither", "either", "Qither", "nnther", "eitWFr", |
| "fi66st", "fivFt", "fWWr", "first", "fit", "5t", "fir4t", |
| "gmnnPe", "sSSpl", "2amVle", "sample", "spmple", "saXV9992", "nml", |
| }; |
| 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[] = { |
| "s", "8BB", "ylAACC", "flat", "ivv", "QQl4A", |
| "f4TaZ", "Xinlar", "ddinar", "lidd", "linear", "li1ar", |
| "vneGG", "jjnea", "perspewtive", "perXXpntive", "persjE9ctie", "perspective", |
| "perectize", "per2pectivWW", "perspctive", |
| }; |
| 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[] = { |
| "Vgr8unorm", "ngra8unzzrl", "Ygr__unom", "bgra8unorm", "bkHraMunorm", |
| "bzzrI8uDorm", "bgrd8unoq", "o1floah", "r16llFMMN", "16floa", |
| "r16float", "r169ax", "r16nlVVt", "rK6flt", "CC6siBB", |
| "r1oint", "881siEEwcc", "r16sint", "rbb6sin", "r166int", |
| "ggint", "r16sE1rm", "r16snor", "rHpsnorm", "r16snorm", |
| "qqaa6snGrm", "r6norm", "xxxx6_norm", "r16SSzznt", "r16int", |
| "16ont", "r16uint", "r16nt", "rK6ut", "rczuint", |
| "r88an5ggm", "r16unsjrm", "116unoriA", "r16unorm", "rVV6ul66rm", |
| "6norm", "tt1Ghmnom", "jiiyyfloa", "rv_QQflttt", "r2foLLt", |
| "r32float", "r32Wlo7t", "2fvvoFr", "ryyflzzat", "32sio", |
| "r32sI_c", "rdd2int", "r32sint", "lM2si2", "r3Osint", |
| "rKK6msiTT", "RRuin", "r3u04", "rnuiqq", "r32uint", |
| "r3BBuint", "rWB22aint", "rjj2uint", "8sntHH", "8Jint", |
| "ott8silS", "r8sint", "SSinr_", "r8sWWnt", "r8sikt", |
| "r8bbott", "r8sn1r", "rfsnoN", "r8snorm", "riisoVm", |
| "r8sworU", "r8Fnrm", "448u8LLnt", "r8uinZZ", "rMMuint", |
| "r8uint", "8uint", "SSAM6int", "GGxTTint", "r8unorI", |
| "r8ulorm", "rOOunm", "r8unorm", "8aKo5m", "Rf__zzrm", |
| "r8LLnorP", "rg1bhh0ufloat", "rg11b0ufloat", "r11b0ufljat", "rg11b10ufloat", |
| "rgb0BBfloa0", "xxg1gb10ufaLL", "rg11b10ufloMMIt", "rXg6FFoat", "gp6zzssoat", |
| "rgrF6flZZat", "rg16float", "rg006ljrat", "rww16prrat", "QQZ1foat", |
| "g1__nint", "rg1sint", "rg36sint", "rg16sint", "rg1Xsiit", |
| "r6sin", "rgO6cvvnt", "rg16vnPrj", "ugi6pnom", "g16s2orm", |
| "rg16snorm", "rgD6sJqrm", "rg1Qsmor", "rg16sJrm", "rg1uWWnt", |
| "rQQ1wuwgnt", "rg16uinz", "rg16uint", "rgWWuinzz", "rg1it", |
| "rK996qqUUn", "EEg16uRRom", "rg16nor", "rg1tunorm", "rg16unorm", |
| "rgqnoMMm", "rgT6aanBBrKK", "rl16uII5rm", "rg32fooBBw", "PPg3__float", |
| "rg32RRloat", "rg32float", "rghSot", "Q3fat", "r2fl8HHat", |
| "rg3YYsDnt", "rg3Osint", "Jg8IIsinZ", "rg32sint", "ogY2sint", |
| "r0X2sint", "rg2KKSncn", "rg333GGRin", "XXg3233qint", "gzzu4nt", |
| "rg32uint", "rgtW2uiWhh", "xg2urnt", "rz3eeQnt", "rgYsit", |
| "rg8sxSnm", "rrsint", "rg8sint", "yyg8snt", "rg8in", |
| "rgeeint", "hkkg8norm", "rgsnOOBrm", "g8sno9m", "rg8snorm", |
| "rggsnDrm", "rgnasor1", "6gInorS", "rguinYY", "Lg8YVVin", |
| "rg8ms2I66", "rg8uint", "jjg8unt", "pp7nt", "rgN6int", |
| "rg8unorsgg", "rgunorm", "rg8uJoOOm", "rg8unorm", "MMg8unor00", |
| "rg8unmmMMm", "r8unqHrm", "r88b10a2Gnt", "rgb0wwRRpint", "rgb10q2uint", |
| "rgb10a2uint", "rb0a2unU", "gB10a2uinM5", "rgb10a2ui33t", "rgb10a33unOrm", |
| "gb0a2unwrm", "kkgA10b2unorM", "rgb10a2unorm", "rgb10aunorm", "rg10audor", |
| "rXXbww55a2unor5", "rba16float", "rgba16flt", "rgbaJ6doat", "rgba16float", |
| "rb_16float", "rgLL16oat", "rga1Gfloa99", "UUxxba1int", "rgba16in9", |
| "rgba16vint", "rgba16sint", "rgb2216siLLt", "rgba11fnb", "rgba16sgAA", |
| "CUa16sno", "rgbw1zzsnonm", "rgna16snowVVMM", "rgba16snorm", "rgNNaX6snrm", |
| "rgbee77snWWrm", "rgb3316PPnorvv", "22gba16ujjnt", "cgAA16uint", "Ngbakk6RRin", |
| "rgba16uint", "rgba16uinQQ", "rgbuu6uint", "rba6uuunt", "rga1unorZ", |
| "rgba1uHorm", "rgba1dunoSSSm", "rgba16unorm", "rgba16unTTrm", "rba16cmort", |
| "rgba16unohhm", "Gba32float", "HHgbaww2flAAabb", "rgba3BBfloat", "rgba32float", |
| "rgbM2hflogt", "rgba3floaWW", "rgbqq32float", "Ogba3rsinU", "rgba2siEt", |
| "rrVVba32sRnt", "rgba32sint", "rgbH33GGOint", "rgba3si55", "rgBa32siSSt", |
| "rga32uazz", "rb662uiAAt", "wgba__2nt", "rgba32uint", "rgba32uit", |
| "rga32uirt", "rgbRR3Guint", "rKxULL8sint", "rNNFa8sinWW", "rgG8sUft", |
| "rgba8sint", "rgb86iFFEE", "rgba899iJyyt", "rbazsint", "rb8snorI", |
| "gb8spm", "ttgnn8snorm", "rgba8snorm", "rgba8inoKm", "reeba8snorm", |
| "rgbg_sno11m", "rgba8unt", "rgbaino", "rpX8ui", "rgba8uint", |
| "g6ss8uYYnt", "rIIba8u7Yt", "ngbGSSeeint", "rgbQlnorm", "ba8unorm", |
| "rgba8un__rm", "rgba8unorm", "rgba8uoDDm", "rgb8unrm", "rgb5l55nor1", |
| }; |
| for (auto _ : state) { |
| for (auto* str : kStrings) { |
| auto result = ParseTexelFormat(str); |
| benchmark::DoNotOptimize(result); |
| } |
| } |
| } // NOLINT(readability/fn_size) |
| |
| BENCHMARK(TexelFormatParser); |
| |
| } // namespace |
| } // namespace tint::core |