| // 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/lang/core/builtin_test.cc.tmpl |
| // |
| // To regenerate run: './tools/run gen' |
| // |
| // Do not modify this file directly |
| //////////////////////////////////////////////////////////////////////////////// |
| |
| #include "src/tint/lang/core/builtin.h" |
| |
| #include <string> |
| |
| #include "gtest/gtest.h" |
| |
| #include "src/tint/utils/text/string.h" |
| |
| namespace tint::core { |
| namespace { |
| |
| namespace parse_print_tests { |
| |
| struct Case { |
| const char* string; |
| Builtin value; |
| }; |
| |
| inline std::ostream& operator<<(std::ostream& out, Case c) { |
| return out << "'" << std::string(c.string) << "'"; |
| } |
| |
| static constexpr Case kValidCases[] = { |
| {"__atomic_compare_exchange_result_i32", Builtin::kAtomicCompareExchangeResultI32}, |
| {"__atomic_compare_exchange_result_u32", Builtin::kAtomicCompareExchangeResultU32}, |
| {"__frexp_result_abstract", Builtin::kFrexpResultAbstract}, |
| {"__frexp_result_f16", Builtin::kFrexpResultF16}, |
| {"__frexp_result_f32", Builtin::kFrexpResultF32}, |
| {"__frexp_result_vec2_abstract", Builtin::kFrexpResultVec2Abstract}, |
| {"__frexp_result_vec2_f16", Builtin::kFrexpResultVec2F16}, |
| {"__frexp_result_vec2_f32", Builtin::kFrexpResultVec2F32}, |
| {"__frexp_result_vec3_abstract", Builtin::kFrexpResultVec3Abstract}, |
| {"__frexp_result_vec3_f16", Builtin::kFrexpResultVec3F16}, |
| {"__frexp_result_vec3_f32", Builtin::kFrexpResultVec3F32}, |
| {"__frexp_result_vec4_abstract", Builtin::kFrexpResultVec4Abstract}, |
| {"__frexp_result_vec4_f16", Builtin::kFrexpResultVec4F16}, |
| {"__frexp_result_vec4_f32", Builtin::kFrexpResultVec4F32}, |
| {"__modf_result_abstract", Builtin::kModfResultAbstract}, |
| {"__modf_result_f16", Builtin::kModfResultF16}, |
| {"__modf_result_f32", Builtin::kModfResultF32}, |
| {"__modf_result_vec2_abstract", Builtin::kModfResultVec2Abstract}, |
| {"__modf_result_vec2_f16", Builtin::kModfResultVec2F16}, |
| {"__modf_result_vec2_f32", Builtin::kModfResultVec2F32}, |
| {"__modf_result_vec3_abstract", Builtin::kModfResultVec3Abstract}, |
| {"__modf_result_vec3_f16", Builtin::kModfResultVec3F16}, |
| {"__modf_result_vec3_f32", Builtin::kModfResultVec3F32}, |
| {"__modf_result_vec4_abstract", Builtin::kModfResultVec4Abstract}, |
| {"__modf_result_vec4_f16", Builtin::kModfResultVec4F16}, |
| {"__modf_result_vec4_f32", Builtin::kModfResultVec4F32}, |
| {"__packed_vec3", Builtin::kPackedVec3}, |
| {"array", Builtin::kArray}, |
| {"atomic", Builtin::kAtomic}, |
| {"bool", Builtin::kBool}, |
| {"f16", Builtin::kF16}, |
| {"f32", Builtin::kF32}, |
| {"i32", Builtin::kI32}, |
| {"mat2x2", Builtin::kMat2X2}, |
| {"mat2x2f", Builtin::kMat2X2F}, |
| {"mat2x2h", Builtin::kMat2X2H}, |
| {"mat2x3", Builtin::kMat2X3}, |
| {"mat2x3f", Builtin::kMat2X3F}, |
| {"mat2x3h", Builtin::kMat2X3H}, |
| {"mat2x4", Builtin::kMat2X4}, |
| {"mat2x4f", Builtin::kMat2X4F}, |
| {"mat2x4h", Builtin::kMat2X4H}, |
| {"mat3x2", Builtin::kMat3X2}, |
| {"mat3x2f", Builtin::kMat3X2F}, |
| {"mat3x2h", Builtin::kMat3X2H}, |
| {"mat3x3", Builtin::kMat3X3}, |
| {"mat3x3f", Builtin::kMat3X3F}, |
| {"mat3x3h", Builtin::kMat3X3H}, |
| {"mat3x4", Builtin::kMat3X4}, |
| {"mat3x4f", Builtin::kMat3X4F}, |
| {"mat3x4h", Builtin::kMat3X4H}, |
| {"mat4x2", Builtin::kMat4X2}, |
| {"mat4x2f", Builtin::kMat4X2F}, |
| {"mat4x2h", Builtin::kMat4X2H}, |
| {"mat4x3", Builtin::kMat4X3}, |
| {"mat4x3f", Builtin::kMat4X3F}, |
| {"mat4x3h", Builtin::kMat4X3H}, |
| {"mat4x4", Builtin::kMat4X4}, |
| {"mat4x4f", Builtin::kMat4X4F}, |
| {"mat4x4h", Builtin::kMat4X4H}, |
| {"ptr", Builtin::kPtr}, |
| {"sampler", Builtin::kSampler}, |
| {"sampler_comparison", Builtin::kSamplerComparison}, |
| {"texture_1d", Builtin::kTexture1D}, |
| {"texture_2d", Builtin::kTexture2D}, |
| {"texture_2d_array", Builtin::kTexture2DArray}, |
| {"texture_3d", Builtin::kTexture3D}, |
| {"texture_cube", Builtin::kTextureCube}, |
| {"texture_cube_array", Builtin::kTextureCubeArray}, |
| {"texture_depth_2d", Builtin::kTextureDepth2D}, |
| {"texture_depth_2d_array", Builtin::kTextureDepth2DArray}, |
| {"texture_depth_cube", Builtin::kTextureDepthCube}, |
| {"texture_depth_cube_array", Builtin::kTextureDepthCubeArray}, |
| {"texture_depth_multisampled_2d", Builtin::kTextureDepthMultisampled2D}, |
| {"texture_external", Builtin::kTextureExternal}, |
| {"texture_multisampled_2d", Builtin::kTextureMultisampled2D}, |
| {"texture_storage_1d", Builtin::kTextureStorage1D}, |
| {"texture_storage_2d", Builtin::kTextureStorage2D}, |
| {"texture_storage_2d_array", Builtin::kTextureStorage2DArray}, |
| {"texture_storage_3d", Builtin::kTextureStorage3D}, |
| {"u32", Builtin::kU32}, |
| {"vec2", Builtin::kVec2}, |
| {"vec2f", Builtin::kVec2F}, |
| {"vec2h", Builtin::kVec2H}, |
| {"vec2i", Builtin::kVec2I}, |
| {"vec2u", Builtin::kVec2U}, |
| {"vec3", Builtin::kVec3}, |
| {"vec3f", Builtin::kVec3F}, |
| {"vec3h", Builtin::kVec3H}, |
| {"vec3i", Builtin::kVec3I}, |
| {"vec3u", Builtin::kVec3U}, |
| {"vec4", Builtin::kVec4}, |
| {"vec4f", Builtin::kVec4F}, |
| {"vec4h", Builtin::kVec4H}, |
| {"vec4i", Builtin::kVec4I}, |
| {"vec4u", Builtin::kVec4U}, |
| }; |
| |
| static constexpr Case kInvalidCases[] = { |
| {"__atomic_compareexchangeccresult_i32", Builtin::kUndefined}, |
| {"__atoml3_compare_exchane_resulti2", Builtin::kUndefined}, |
| {"__atomic_compare_Vxchange_result_i32", Builtin::kUndefined}, |
| {"__atomic_com1are_exchange_result_u32", Builtin::kUndefined}, |
| {"__atomic_qqompare_exchage_resulJ_u32", Builtin::kUndefined}, |
| {"__atllmic_compare_exchange_result_u377", Builtin::kUndefined}, |
| {"qpp_frexp_resultHHbstract", Builtin::kUndefined}, |
| {"__fep_esulv_abstract", Builtin::kUndefined}, |
| {"__Gbexp_resul_abstract", Builtin::kUndefined}, |
| {"_vfrexp_resiilt_f16", Builtin::kUndefined}, |
| {"__fr8xp_resultWWf16", Builtin::kUndefined}, |
| {"__frxp_result_fMxx", Builtin::kUndefined}, |
| {"gg_fXexp_reslt_f32", Builtin::kUndefined}, |
| {"__frXxpresul_V32", Builtin::kUndefined}, |
| {"__frexp_r3sult_f32", Builtin::kUndefined}, |
| {"__frexpEresult_vec2_abstract", Builtin::kUndefined}, |
| {"__frex_rPPsult_vTTc2_abstract", Builtin::kUndefined}, |
| {"__frexp_resuddt_ec2_xxbstract", Builtin::kUndefined}, |
| {"__frexp_result_ve442_f16", Builtin::kUndefined}, |
| {"_SSfrexp_resulVV_vec2_f16", Builtin::kUndefined}, |
| {"__fRxpRr22sult_vec2_f16", Builtin::kUndefined}, |
| {"__frexp_res9lt_vec_fF2", Builtin::kUndefined}, |
| {"__frexp_result_ve2_f32", Builtin::kUndefined}, |
| {"_OOfrexp_result_VeHRRf32", Builtin::kUndefined}, |
| {"__frexp_reyult_vec3_absract", Builtin::kUndefined}, |
| {"__frexp_re77ulll_vecG_arrnstract", Builtin::kUndefined}, |
| {"__4rexp_result_vec3_00bstract", Builtin::kUndefined}, |
| {"__oorxp_result_vec316", Builtin::kUndefined}, |
| {"zz_frexp_esult_ec3_f16", Builtin::kUndefined}, |
| {"__iirex11_result_vp3_f16", Builtin::kUndefined}, |
| {"__frXXxp_result_vec3_f32", Builtin::kUndefined}, |
| {"__fnnexp99resIIlt_vec3_f355", Builtin::kUndefined}, |
| {"__faSSerrp_result_vHHc3_fY2", Builtin::kUndefined}, |
| {"__freHp_resutve4_abstkkact", Builtin::kUndefined}, |
| {"jfrexpgresult_veRR4_abstrac", Builtin::kUndefined}, |
| {"__frexp_resul_vec4_absbrac", Builtin::kUndefined}, |
| {"_jfrexp_result_vec4_f16", Builtin::kUndefined}, |
| {"__frexp_resultvec4_f16", Builtin::kUndefined}, |
| {"__freqpresultvec4_f16", Builtin::kUndefined}, |
| {"__frexNN_result_vec_f32", Builtin::kUndefined}, |
| {"__frexp_resvvlt_vc4_f3", Builtin::kUndefined}, |
| {"__frexp_esult_vec4_f3QQ", Builtin::kUndefined}, |
| {"rmodf_reffultabstract", Builtin::kUndefined}, |
| {"__jodf_result_abstract", Builtin::kUndefined}, |
| {"_mNNwdf_r2sult8abstract", Builtin::kUndefined}, |
| {"__mdf_result_f16", Builtin::kUndefined}, |
| {"__modrr_result_f16", Builtin::kUndefined}, |
| {"__mGdf_result_f16", Builtin::kUndefined}, |
| {"__modf_resulFF_f32", Builtin::kUndefined}, |
| {"__modf_eult_E3", Builtin::kUndefined}, |
| {"__odf_resurrt_f32", Builtin::kUndefined}, |
| {"__modf_reslt_vec_abstract", Builtin::kUndefined}, |
| {"__modfJJresuDt_Xc2_abstract", Builtin::kUndefined}, |
| {"_modf_reslt_vec28abstrct", Builtin::kUndefined}, |
| {"__odf_reult_vkc211f1", Builtin::kUndefined}, |
| {"__mdf_result_vec2_f16", Builtin::kUndefined}, |
| {"__modf_resuJt_vec2_f6", Builtin::kUndefined}, |
| {"__modf_result_vec2cf32", Builtin::kUndefined}, |
| {"__modf_result_vec2_fO2", Builtin::kUndefined}, |
| {"KK_movvf_result_vec2_ftt__", Builtin::kUndefined}, |
| {"xx_modf_r8sult_vec3_abtr5ct", Builtin::kUndefined}, |
| {"__modf_resuFt_vec3_aqt__act", Builtin::kUndefined}, |
| {"__modf_result_vec3_aqqstrac", Builtin::kUndefined}, |
| {"__odf_33esult_vec3_f1O6", Builtin::kUndefined}, |
| {"_ttm6df_resQQlt_ooec9_f16", Builtin::kUndefined}, |
| {"_modf_resu66t_vec3_f16", Builtin::kUndefined}, |
| {"__mdf_resultOvxc3_f36zz", Builtin::kUndefined}, |
| {"__modf_resuyyt_vec3_f32", Builtin::kUndefined}, |
| {"__mod_resul_vecZHHf32", Builtin::kUndefined}, |
| {"__modf_reqult_44ec4WWbstract", Builtin::kUndefined}, |
| {"__mof_result_vec4_abstrOOct", Builtin::kUndefined}, |
| {"__modYooresult_vh4_bstract", Builtin::kUndefined}, |
| {"__modf_relt_ve4_f16", Builtin::kUndefined}, |
| {"__modf_result_ve4Ff16", Builtin::kUndefined}, |
| {"__modf_result_wec4_f1", Builtin::kUndefined}, |
| {"__Kdff_rGsult_vec4_f2", Builtin::kUndefined}, |
| {"__modf_reKKulq_vec4_f32", Builtin::kUndefined}, |
| {"__modf_resummt3vec4_f3F", Builtin::kUndefined}, |
| {"__packed_ec3", Builtin::kUndefined}, |
| {"__packed_ecq", Builtin::kUndefined}, |
| {"_backed_bbec3", Builtin::kUndefined}, |
| {"iira", Builtin::kUndefined}, |
| {"aqOOy", Builtin::kUndefined}, |
| {"arvvTTy", Builtin::kUndefined}, |
| {"atomFFc", Builtin::kUndefined}, |
| {"aoQ00P", Builtin::kUndefined}, |
| {"atPmic", Builtin::kUndefined}, |
| {"bos77", Builtin::kUndefined}, |
| {"CoRbbl", Builtin::kUndefined}, |
| {"booXX", Builtin::kUndefined}, |
| {"qOOO6", Builtin::kUndefined}, |
| {"fs", Builtin::kUndefined}, |
| {"f1X", Builtin::kUndefined}, |
| {"f3", Builtin::kUndefined}, |
| {"q", Builtin::kUndefined}, |
| {"f322", Builtin::kUndefined}, |
| {"0yz2", Builtin::kUndefined}, |
| {"iVP", Builtin::kUndefined}, |
| {"Cnn", Builtin::kUndefined}, |
| {"AtqqHH2", Builtin::kUndefined}, |
| {"at2x2", Builtin::kUndefined}, |
| {"mafKK", Builtin::kUndefined}, |
| {"ltgg2f", Builtin::kUndefined}, |
| {"mat2xf", Builtin::kUndefined}, |
| {"NTTtcx4f", Builtin::kUndefined}, |
| {"ma7ppl2h", Builtin::kUndefined}, |
| {"mNNt2xg", Builtin::kUndefined}, |
| {"uub2XX2h", Builtin::kUndefined}, |
| {"mt2x3", Builtin::kUndefined}, |
| {"m88xK", Builtin::kUndefined}, |
| {"maqx3", Builtin::kUndefined}, |
| {"m11t2x3f", Builtin::kUndefined}, |
| {"22at2iif", Builtin::kUndefined}, |
| {"at2x377", Builtin::kUndefined}, |
| {"m2t2xNh", Builtin::kUndefined}, |
| {"mVVt2x3h", Builtin::kUndefined}, |
| {"FaWW2w11h", Builtin::kUndefined}, |
| {"matww4", Builtin::kUndefined}, |
| {"mat2D4", Builtin::kUndefined}, |
| {"maKx4", Builtin::kUndefined}, |
| {"mat21PPhf", Builtin::kUndefined}, |
| {"mat24f", Builtin::kUndefined}, |
| {"mYYt2x4f", Builtin::kUndefined}, |
| {"mttHH4kk", Builtin::kUndefined}, |
| {"mat2rr4h", Builtin::kUndefined}, |
| {"WWas2x4h", Builtin::kUndefined}, |
| {"maYx2", Builtin::kUndefined}, |
| {"mq3f2", Builtin::kUndefined}, |
| {"vvafu222", Builtin::kUndefined}, |
| {"t3x2f", Builtin::kUndefined}, |
| {"YYat3f", Builtin::kUndefined}, |
| {"may3x2EYY", Builtin::kUndefined}, |
| {"da3xMoh", Builtin::kUndefined}, |
| {"matMMx2", Builtin::kUndefined}, |
| {"mat3x55h", Builtin::kUndefined}, |
| {"maN3", Builtin::kUndefined}, |
| {"ma33x3", Builtin::kUndefined}, |
| {"mt3x3", Builtin::kUndefined}, |
| {"mm66Issf", Builtin::kUndefined}, |
| {"mat3x1f", Builtin::kUndefined}, |
| {"Xt3x3", Builtin::kUndefined}, |
| {"LatIx3h", Builtin::kUndefined}, |
| {"at3fh", Builtin::kUndefined}, |
| {"mYtURD3", Builtin::kUndefined}, |
| {"mah3x4", Builtin::kUndefined}, |
| {"muqII4", Builtin::kUndefined}, |
| {"mat3xH", Builtin::kUndefined}, |
| {"at3QQvv", Builtin::kUndefined}, |
| {"at66ef", Builtin::kUndefined}, |
| {"ma7O4f", Builtin::kUndefined}, |
| {"m55t3x0DD", Builtin::kUndefined}, |
| {"maH3x4II", Builtin::kUndefined}, |
| {"at3x4", Builtin::kUndefined}, |
| {"ma994x2", Builtin::kUndefined}, |
| {"mWWt4Gt2", Builtin::kUndefined}, |
| {"ay42", Builtin::kUndefined}, |
| {"mt4x2f", Builtin::kUndefined}, |
| {"IIaBB4x2f", Builtin::kUndefined}, |
| {"TTat4x833", Builtin::kUndefined}, |
| {"ddUUnntYYx2h", Builtin::kUndefined}, |
| {"m5CCxxdZ", Builtin::kUndefined}, |
| {"matkkq2h", Builtin::kUndefined}, |
| {"5iitp00", Builtin::kUndefined}, |
| {"mnntIIx3", Builtin::kUndefined}, |
| {"ccaKx", Builtin::kUndefined}, |
| {"m43KK", Builtin::kUndefined}, |
| {"mat66x3f", Builtin::kUndefined}, |
| {"Et4PP3K", Builtin::kUndefined}, |
| {"xxatx3h", Builtin::kUndefined}, |
| {"qat4x3h", Builtin::kUndefined}, |
| {"MMayySrxh", Builtin::kUndefined}, |
| {"uat4", Builtin::kUndefined}, |
| {"tx4", Builtin::kUndefined}, |
| {"ma54FF4", Builtin::kUndefined}, |
| {"rra444z4f", Builtin::kUndefined}, |
| {"matWW", Builtin::kUndefined}, |
| {"CatZJXx4f", Builtin::kUndefined}, |
| {"maPPx4h", Builtin::kUndefined}, |
| {"mat4c4h", Builtin::kUndefined}, |
| {"matPPll6h", Builtin::kUndefined}, |
| {"9tyy", Builtin::kUndefined}, |
| {"ptKK", Builtin::kUndefined}, |
| {"x_", Builtin::kUndefined}, |
| {"ayKer", Builtin::kUndefined}, |
| {"szmpVek", Builtin::kUndefined}, |
| {"sampqeK", Builtin::kUndefined}, |
| {"sampler_comparisn", Builtin::kUndefined}, |
| {"sapler_comparisVVn", Builtin::kUndefined}, |
| {"samplerIcompaAUison", Builtin::kUndefined}, |
| {"jexurbRd", Builtin::kUndefined}, |
| {"exure_YYd", Builtin::kUndefined}, |
| {"exture_1d", Builtin::kUndefined}, |
| {"texxxur_1d", Builtin::kUndefined}, |
| {"tJxucce_2d", Builtin::kUndefined}, |
| {"texure_JJd", Builtin::kUndefined}, |
| {"lDexture_fCC_arraU", Builtin::kUndefined}, |
| {"tegture_2d_array", Builtin::kUndefined}, |
| {"teCCure2d_arra", Builtin::kUndefined}, |
| {"textue_3d", Builtin::kUndefined}, |
| {"tIx__ure_3d", Builtin::kUndefined}, |
| {"texurettPP", Builtin::kUndefined}, |
| {"tddx3ure_cube", Builtin::kUndefined}, |
| {"teKyyur_cube", Builtin::kUndefined}, |
| {"teturecub", Builtin::kUndefined}, |
| {"textinne_c03e_array", Builtin::kUndefined}, |
| {"nextCCruuvcubK_array", Builtin::kUndefined}, |
| {"tXxturellcbe_array", Builtin::kUndefined}, |
| {"tppxture_depth_2d", Builtin::kUndefined}, |
| {"txture_deptww_2d", Builtin::kUndefined}, |
| {"gexturedemmthuu2", Builtin::kUndefined}, |
| {"texmmre_depthaa2daray", Builtin::kUndefined}, |
| {"texture_RRepth_Td_ccZray", Builtin::kUndefined}, |
| {"text88re_depthTOd_array", Builtin::kUndefined}, |
| {"texture_depth_cm00e", Builtin::kUndefined}, |
| {"texture_Bmepth_cube", Builtin::kUndefined}, |
| {"Mextre_ppeph_cube", Builtin::kUndefined}, |
| {"texturOO_depth_cub_array", Builtin::kUndefined}, |
| {"GeGGture_depthcube_array", Builtin::kUndefined}, |
| {"texture11Hdepth_cube_array", Builtin::kUndefined}, |
| {"textu6e_FFepth_multiameeled_2d", Builtin::kUndefined}, |
| {"texture_epth_mltisampled_2d", Builtin::kUndefined}, |
| {"texture_depth_mullKsaiipled_2d", Builtin::kUndefined}, |
| {"texture_extenal", Builtin::kUndefined}, |
| {"IIext99reexvvernal", Builtin::kUndefined}, |
| {"texture_externl", Builtin::kUndefined}, |
| {"texture_mhltisampled_2d", Builtin::kUndefined}, |
| {"texturemPllltisampzzed_2d", Builtin::kUndefined}, |
| {"exture_mltisamed_2d", Builtin::kUndefined}, |
| {"texture_qqtoragff_1", Builtin::kUndefined}, |
| {"textre_JJddorage_1W", Builtin::kUndefined}, |
| {"XXrxture_storae1zz", Builtin::kUndefined}, |
| {"texturestorag2_2d", Builtin::kUndefined}, |
| {"yyNxture_storage_2d", Builtin::kUndefined}, |
| {"etue_storage_2OO", Builtin::kUndefined}, |
| {"reutuPe_storZgeE2d_array", Builtin::kUndefined}, |
| {"texlure_storddeee_d_22rray", Builtin::kUndefined}, |
| {"texture_mtorage_2V_a9ra", Builtin::kUndefined}, |
| {"teII1re_storage_3d", Builtin::kUndefined}, |
| {"texture_storagb_3d", Builtin::kUndefined}, |
| {"texizrestorge73d", Builtin::kUndefined}, |
| {"u3oi", Builtin::kUndefined}, |
| {"3", Builtin::kUndefined}, |
| {"S2", Builtin::kUndefined}, |
| {"e22", Builtin::kUndefined}, |
| {"1eC2", Builtin::kUndefined}, |
| {"vf8c2", Builtin::kUndefined}, |
| {"c2f", Builtin::kUndefined}, |
| {"JJecSSf", Builtin::kUndefined}, |
| {"92f", Builtin::kUndefined}, |
| {"vbbJJ2TT", Builtin::kUndefined}, |
| {"e66h", Builtin::kUndefined}, |
| {"u662h", Builtin::kUndefined}, |
| {"vW2i", Builtin::kUndefined}, |
| {"v2i", Builtin::kUndefined}, |
| {"veci", Builtin::kUndefined}, |
| {"rec2u", Builtin::kUndefined}, |
| {"2ec2B", Builtin::kUndefined}, |
| {"vcBBu", Builtin::kUndefined}, |
| {"veRR", Builtin::kUndefined}, |
| {"VLL0", Builtin::kUndefined}, |
| {"KOe3", Builtin::kUndefined}, |
| {"vgwcf", Builtin::kUndefined}, |
| {"vLphf", Builtin::kUndefined}, |
| {"eiiEf", Builtin::kUndefined}, |
| {"ec3h", Builtin::kUndefined}, |
| {"UU883", Builtin::kUndefined}, |
| {"rrecvvh", Builtin::kUndefined}, |
| {"ecmm", Builtin::kUndefined}, |
| {"vec4j", Builtin::kUndefined}, |
| {"vec3X", Builtin::kUndefined}, |
| {"vec38", Builtin::kUndefined}, |
| {"vecvEE", Builtin::kUndefined}, |
| {"z99ci", Builtin::kUndefined}, |
| {"JJGeQQ4", Builtin::kUndefined}, |
| {"ssec4", Builtin::kUndefined}, |
| {"PecK", Builtin::kUndefined}, |
| {"tpc4f", Builtin::kUndefined}, |
| {"vec", Builtin::kUndefined}, |
| {"MMec4f", Builtin::kUndefined}, |
| {"vJJc40", Builtin::kUndefined}, |
| {"8c", Builtin::kUndefined}, |
| {"vecggKh", Builtin::kUndefined}, |
| {"vecfi", Builtin::kUndefined}, |
| {"vec47Q", Builtin::kUndefined}, |
| {"veY4i", Builtin::kUndefined}, |
| {"keSu", Builtin::kUndefined}, |
| {"n422", Builtin::kUndefined}, |
| {"vFFu", Builtin::kUndefined}, |
| }; |
| |
| using BuiltinParseTest = testing::TestWithParam<Case>; |
| |
| TEST_P(BuiltinParseTest, Parse) { |
| const char* string = GetParam().string; |
| Builtin expect = GetParam().value; |
| EXPECT_EQ(expect, ParseBuiltin(string)); |
| } |
| |
| INSTANTIATE_TEST_SUITE_P(ValidCases, BuiltinParseTest, testing::ValuesIn(kValidCases)); |
| INSTANTIATE_TEST_SUITE_P(InvalidCases, BuiltinParseTest, testing::ValuesIn(kInvalidCases)); |
| |
| using BuiltinPrintTest = testing::TestWithParam<Case>; |
| |
| TEST_P(BuiltinPrintTest, Print) { |
| Builtin value = GetParam().value; |
| const char* expect = GetParam().string; |
| EXPECT_EQ(expect, tint::ToString(value)); |
| } |
| |
| INSTANTIATE_TEST_SUITE_P(ValidCases, BuiltinPrintTest, testing::ValuesIn(kValidCases)); |
| |
| } // namespace parse_print_tests |
| |
| } // namespace |
| } // namespace tint::core |