tint/ast: Remove ast::ExternalTexture

Instead use ast::TypeName.

Bug: tint:1810
Change-Id: Ia1ae61b2bffd386f8958c8164e2223df5f8ac91c
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/119121
Reviewed-by: Dan Sinclair <dsinclair@chromium.org>
Kokoro: Ben Clayton <bclayton@chromium.org>
Commit-Queue: Ben Clayton <bclayton@chromium.org>
This commit is contained in:
Ben Clayton
2023-02-09 23:59:07 +00:00
committed by Dawn LUCI CQ
parent ed3389faee
commit 4906b03963
18 changed files with 179 additions and 262 deletions

View File

@@ -100,6 +100,9 @@ Builtin ParseBuiltin(std::string_view str) {
if (str == "sampler_comparison") {
return Builtin::kSamplerComparison;
}
if (str == "texture_external") {
return Builtin::kTextureExternal;
}
if (str == "u32") {
return Builtin::kU32;
}
@@ -194,6 +197,8 @@ std::ostream& operator<<(std::ostream& out, Builtin value) {
return out << "sampler";
case Builtin::kSamplerComparison:
return out << "sampler_comparison";
case Builtin::kTextureExternal:
return out << "texture_external";
case Builtin::kU32:
return out << "u32";
case Builtin::kVec2F:

View File

@@ -54,6 +54,7 @@ enum class Builtin {
kMat4X4H,
kSampler,
kSamplerComparison,
kTextureExternal,
kU32,
kVec2F,
kVec2H,
@@ -80,12 +81,43 @@ std::ostream& operator<<(std::ostream& out, Builtin value);
Builtin ParseBuiltin(std::string_view str);
constexpr const char* kBuiltinStrings[] = {
"bool", "f16", "f32", "i32", "mat2x2f", "mat2x2h",
"mat2x3f", "mat2x3h", "mat2x4f", "mat2x4h", "mat3x2f", "mat3x2h",
"mat3x3f", "mat3x3h", "mat3x4f", "mat3x4h", "mat4x2f", "mat4x2h",
"mat4x3f", "mat4x3h", "mat4x4f", "mat4x4h", "sampler", "sampler_comparison",
"u32", "vec2f", "vec2h", "vec2i", "vec2u", "vec3f",
"vec3h", "vec3i", "vec3u", "vec4f", "vec4h", "vec4i",
"bool",
"f16",
"f32",
"i32",
"mat2x2f",
"mat2x2h",
"mat2x3f",
"mat2x3h",
"mat2x4f",
"mat2x4h",
"mat3x2f",
"mat3x2h",
"mat3x3f",
"mat3x3h",
"mat3x4f",
"mat3x4h",
"mat4x2f",
"mat4x2h",
"mat4x3f",
"mat4x3h",
"mat4x4f",
"mat4x4h",
"sampler",
"sampler_comparison",
"texture_external",
"u32",
"vec2f",
"vec2h",
"vec2i",
"vec2u",
"vec3f",
"vec3h",
"vec3i",
"vec3u",
"vec4f",
"vec4h",
"vec4i",
"vec4u",
};

View File

@@ -199,97 +199,104 @@ void BuiltinParser(::benchmark::State& state) {
"samplpLL_comparisI",
"smplerfomparison",
"sYmpURDr_comprison",
"u3h",
"IIq",
"u3H",
"texturh_external",
"teqtureuIIextnal",
"texture_externaH",
"texture_external",
"texre_externaQvv",
"te66ue_external",
"textue_e7tOrnal",
"550DD",
"II3H",
"u3",
"u32",
"Qvv",
"66",
"73",
"ve055DD",
"IIec2f",
"vec2",
"r2",
"u3l",
"uGt",
"ey2f",
"vc2f",
"IIeBB2f",
"vec2f",
"rec2",
"lec2f",
"GeJ2f",
"ey2h",
"vc2h",
"IIeBB2h",
"vec2h",
"TTec338",
"veUUSS2nnd",
"vZx5CC",
"kkec2q",
"v005ii",
"vnIIc2i",
"vec2i",
"v005ih",
"vnIIc2h",
"vec2h",
"cceW",
"cKK",
"vec66i",
"vec66h",
"vePPK",
"vexxu",
"qec2u",
"vec2u",
"vexxi",
"qec2i",
"vec2i",
"veSyMMr",
"v2u",
"ec",
"5eFF3f",
"5eFF2u",
"rrecz44",
"vWW",
"vec3f",
"vec2u",
"XJecCZZ",
"vePP3",
"vec3c",
"ve6ll3h",
"vePP2",
"vec2c",
"ve6ll3f",
"vcyy99",
"Jec3KK",
"vec3h",
"vec3f",
"_ex3",
"Ky3",
"zek3h",
"veKSi",
"vc3i",
"zek3f",
"veKSh",
"vc3h",
"ec3VV",
"vec3i",
"IAAc3i",
"vec3h",
"IAAc3h",
"jbR",
"veY4",
"ec3u",
"ec3i",
"vc911",
"mmccu",
"vec3u",
"vJJcu",
"mmcci",
"vec3i",
"vJJci",
"lDDcUfC",
"vec3g",
"CCe",
"ec4f",
"vIc__f",
"vec4f",
"ec3u",
"vIc__u",
"vec3u",
"ePPtt",
"v3dc4f",
"vcyyf",
"v3dc3u",
"vcyyu",
"u4",
"v03nnh",
"v03nnf",
"Cuuecnv",
"vec4h",
"vec4f",
"vX4ll",
"vocpph",
"vocppf",
"vwwc4",
"veuug",
"vaac",
"TRZccci",
"vec4i",
"TRZccch",
"vec4h",
"vTc4O8",
"vem04i",
"meBB4i",
"vem04h",
"meBB4h",
"Mpp4",
"OOe4u",
"OOe4i",
"veG4G",
"vec4u",
"11eHH4u",
"vec4i",
"11eHH4i",
"veFFe6",
"ve4",
"vKii4l",
"ec4u",
"v994IIv",
"vec4u",
"vecu",
"vechu",
"vczllPu",
};
for (auto _ : state) {
for (auto* str : kStrings) {

View File

@@ -43,24 +43,43 @@ inline std::ostream& operator<<(std::ostream& out, Case c) {
}
static constexpr Case kValidCases[] = {
{"bool", Builtin::kBool}, {"f16", Builtin::kF16},
{"f32", Builtin::kF32}, {"i32", Builtin::kI32},
{"mat2x2f", Builtin::kMat2X2F}, {"mat2x2h", Builtin::kMat2X2H},
{"mat2x3f", Builtin::kMat2X3F}, {"mat2x3h", Builtin::kMat2X3H},
{"mat2x4f", Builtin::kMat2X4F}, {"mat2x4h", Builtin::kMat2X4H},
{"mat3x2f", Builtin::kMat3X2F}, {"mat3x2h", Builtin::kMat3X2H},
{"mat3x3f", Builtin::kMat3X3F}, {"mat3x3h", Builtin::kMat3X3H},
{"mat3x4f", Builtin::kMat3X4F}, {"mat3x4h", Builtin::kMat3X4H},
{"mat4x2f", Builtin::kMat4X2F}, {"mat4x2h", Builtin::kMat4X2H},
{"mat4x3f", Builtin::kMat4X3F}, {"mat4x3h", Builtin::kMat4X3H},
{"mat4x4f", Builtin::kMat4X4F}, {"mat4x4h", Builtin::kMat4X4H},
{"sampler", Builtin::kSampler}, {"sampler_comparison", Builtin::kSamplerComparison},
{"u32", Builtin::kU32}, {"vec2f", Builtin::kVec2F},
{"vec2h", Builtin::kVec2H}, {"vec2i", Builtin::kVec2I},
{"vec2u", Builtin::kVec2U}, {"vec3f", Builtin::kVec3F},
{"vec3h", Builtin::kVec3H}, {"vec3i", Builtin::kVec3I},
{"vec3u", Builtin::kVec3U}, {"vec4f", Builtin::kVec4F},
{"vec4h", Builtin::kVec4H}, {"vec4i", Builtin::kVec4I},
{"bool", Builtin::kBool},
{"f16", Builtin::kF16},
{"f32", Builtin::kF32},
{"i32", Builtin::kI32},
{"mat2x2f", Builtin::kMat2X2F},
{"mat2x2h", Builtin::kMat2X2H},
{"mat2x3f", Builtin::kMat2X3F},
{"mat2x3h", Builtin::kMat2X3H},
{"mat2x4f", Builtin::kMat2X4F},
{"mat2x4h", Builtin::kMat2X4H},
{"mat3x2f", Builtin::kMat3X2F},
{"mat3x2h", Builtin::kMat3X2H},
{"mat3x3f", Builtin::kMat3X3F},
{"mat3x3h", Builtin::kMat3X3H},
{"mat3x4f", Builtin::kMat3X4F},
{"mat3x4h", Builtin::kMat3X4H},
{"mat4x2f", Builtin::kMat4X2F},
{"mat4x2h", Builtin::kMat4X2H},
{"mat4x3f", Builtin::kMat4X3F},
{"mat4x3h", Builtin::kMat4X3H},
{"mat4x4f", Builtin::kMat4X4F},
{"mat4x4h", Builtin::kMat4X4H},
{"sampler", Builtin::kSampler},
{"sampler_comparison", Builtin::kSamplerComparison},
{"texture_external", Builtin::kTextureExternal},
{"u32", Builtin::kU32},
{"vec2f", Builtin::kVec2F},
{"vec2h", Builtin::kVec2H},
{"vec2i", Builtin::kVec2I},
{"vec2u", Builtin::kVec2U},
{"vec3f", Builtin::kVec3F},
{"vec3h", Builtin::kVec3H},
{"vec3i", Builtin::kVec3I},
{"vec3u", Builtin::kVec3U},
{"vec4f", Builtin::kVec4F},
{"vec4h", Builtin::kVec4H},
{"vec4i", Builtin::kVec4I},
{"vec4u", Builtin::kVec4U},
};
@@ -137,45 +156,48 @@ static constexpr Case kInvalidCases[] = {
{"sWWpleq_compari44on", Builtin::kUndefined},
{"sampler_compaisoOO", Builtin::kUndefined},
{"smpeoo_coYparison", Builtin::kUndefined},
{"", Builtin::kUndefined},
{"u3", Builtin::kUndefined},
{"3w", Builtin::kUndefined},
{"veff", Builtin::kUndefined},
{"KKeq2f", Builtin::kUndefined},
{"vFmm2f", Builtin::kUndefined},
{"vech", Builtin::kUndefined},
{"qc2h", Builtin::kUndefined},
{"eture_eternal", Builtin::kUndefined},
{"texture_exeFnal", Builtin::kUndefined},
{"textureewternal", Builtin::kUndefined},
{"Gf", Builtin::kUndefined},
{"KK3q", Builtin::kUndefined},
{"umm2", Builtin::kUndefined},
{"vecf", Builtin::kUndefined},
{"qc2f", Builtin::kUndefined},
{"vecbb", Builtin::kUndefined},
{"iic2", Builtin::kUndefined},
{"vqOOi", Builtin::kUndefined},
{"vevvTTi", Builtin::kUndefined},
{"veFF2u", Builtin::kUndefined},
{"vqOOh", Builtin::kUndefined},
{"vevvTTh", Builtin::kUndefined},
{"veFF2i", Builtin::kUndefined},
{"00PfQ", Builtin::kUndefined},
{"vec2P", Builtin::kUndefined},
{"vec77s", Builtin::kUndefined},
{"vecbbCf", Builtin::kUndefined},
{"vecXXf", Builtin::kUndefined},
{"vecbbCu", Builtin::kUndefined},
{"vecXXu", Builtin::kUndefined},
{"CCOOec3", Builtin::kUndefined},
{"vs3u", Builtin::kUndefined},
{"Xec3h", Builtin::kUndefined},
{"ve3i", Builtin::kUndefined},
{"Xec3f", Builtin::kUndefined},
{"ve3h", Builtin::kUndefined},
{"qq3", Builtin::kUndefined},
{"vec322", Builtin::kUndefined},
{"vezzXy", Builtin::kUndefined},
{"ieVVP", Builtin::kUndefined},
{"venCu", Builtin::kUndefined},
{"vHc4Aq", Builtin::kUndefined},
{"ve4f", Builtin::kUndefined},
{"venCi", Builtin::kUndefined},
{"vHc3Aq", Builtin::kUndefined},
{"ve3u", Builtin::kUndefined},
{"vefK", Builtin::kUndefined},
{"vgg4", Builtin::kUndefined},
{"vech", Builtin::kUndefined},
{"4TNc4h", Builtin::kUndefined},
{"vecf", Builtin::kUndefined},
{"4TNc4f", Builtin::kUndefined},
{"ppec7l", Builtin::kUndefined},
{"zNe4i", Builtin::kUndefined},
{"uXXb4i", Builtin::kUndefined},
{"zNe4h", Builtin::kUndefined},
{"uXXb4h", Builtin::kUndefined},
{"vec4", Builtin::kUndefined},
{"884K", Builtin::kUndefined},
{"vq9u", Builtin::kUndefined},
{"vq9i", Builtin::kUndefined},
{"vec411", Builtin::kUndefined},
{"22ciiu", Builtin::kUndefined},
{"ec77u", Builtin::kUndefined},
};
using BuiltinParseTest = testing::TestWithParam<Case>;