Import Tint changes from Dawn
Changes:
- e132516e6ff8cd315ee7027b25d9b853e75349f8 tint: Rename and move builtin_table and builtin-gen by Ben Clayton <bclayton@google.com>
GitOrigin-RevId: e132516e6ff8cd315ee7027b25d9b853e75349f8
Change-Id: I4cabd12d4673b354d99ce0524fb7d738a04aeb39
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/89280
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: Ben Clayton <bclayton@google.com>
Commit-Queue: Ben Clayton <bclayton@google.com>
diff --git a/src/tint/BUILD.gn b/src/tint/BUILD.gn
index 71cd2dc..259a26b 100644
--- a/src/tint/BUILD.gn
+++ b/src/tint/BUILD.gn
@@ -334,9 +334,6 @@
"ast/void.h",
"ast/workgroup_attribute.cc",
"ast/workgroup_attribute.h",
- "builtin_table.cc",
- "builtin_table.h",
- "builtin_table.inl",
"castable.cc",
"castable.h",
"clone_context.cc",
@@ -370,6 +367,9 @@
"reader/reader.h",
"resolver/dependency_graph.cc",
"resolver/dependency_graph.h",
+ "resolver/intrinsic_table.cc",
+ "resolver/intrinsic_table.h",
+ "resolver/intrinsic_table.inl",
"resolver/resolver.cc",
"resolver/resolver.h",
"resolver/resolver_constants.cc",
diff --git a/src/tint/CMakeLists.txt b/src/tint/CMakeLists.txt
index 4d10bcb..682817f 100644
--- a/src/tint/CMakeLists.txt
+++ b/src/tint/CMakeLists.txt
@@ -223,9 +223,6 @@
ast/void.h
ast/workgroup_attribute.cc
ast/workgroup_attribute.h
- builtin_table.cc
- builtin_table.h
- builtin_table.inl
castable.cc
castable.h
clone_context.cc
@@ -251,6 +248,9 @@
reader/reader.h
resolver/dependency_graph.cc
resolver/dependency_graph.h
+ resolver/intrinsic_table.cc
+ resolver/intrinsic_table.h
+ resolver/intrinsic_table.inl
resolver/resolver.cc
resolver/resolver_constants.cc
resolver/resolver.h
@@ -727,7 +727,6 @@
ast/variable_test.cc
ast/vector_test.cc
ast/workgroup_attribute_test.cc
- builtin_table_test.cc
castable_test.cc
clone_context_test.cc
debug_test.cc
@@ -756,6 +755,7 @@
resolver/host_shareable_validation_test.cc
resolver/increment_decrement_validation_test.cc
resolver/inferred_type_test.cc
+ resolver/intrinsic_table_test.cc
resolver/is_host_shareable_test.cc
resolver/is_storeable_test.cc
resolver/pipeline_overridable_constant_test.cc
diff --git a/src/tint/builtins.def b/src/tint/intrinsics.def
similarity index 100%
rename from src/tint/builtins.def
rename to src/tint/intrinsics.def
diff --git a/src/tint/builtin_table.cc b/src/tint/resolver/intrinsic_table.cc
similarity index 98%
rename from src/tint/builtin_table.cc
rename to src/tint/resolver/intrinsic_table.cc
index 1a3c9cc..7656e55 100644
--- a/src/tint/builtin_table.cc
+++ b/src/tint/resolver/intrinsic_table.cc
@@ -12,7 +12,7 @@
// See the License for the specific language governing permissions and
// limitations under the License.
-#include "src/tint/builtin_table.h"
+#include "src/tint/resolver/intrinsic_table.h"
#include <algorithm>
#include <limits>
@@ -770,7 +770,7 @@
OverloadInfo const* const overloads;
};
-#include "builtin_table.inl"
+#include "intrinsic_table.inl"
/// BuiltinPrototype describes a fully matched builtin function, which is
/// used as a lookup for building unique sem::Builtin instances.
@@ -820,8 +820,8 @@
return true;
}
-/// Impl is the private implementation of the BuiltinTable interface.
-class Impl : public BuiltinTable {
+/// Impl is the private implementation of the IntrinsicTable interface.
+class Impl : public IntrinsicTable {
public:
explicit Impl(ProgramBuilder& builder);
@@ -1116,11 +1116,11 @@
} // namespace
-std::unique_ptr<BuiltinTable> BuiltinTable::Create(ProgramBuilder& builder) {
+std::unique_ptr<IntrinsicTable> IntrinsicTable::Create(ProgramBuilder& builder) {
return std::make_unique<Impl>(builder);
}
-BuiltinTable::~BuiltinTable() = default;
+IntrinsicTable::~IntrinsicTable() = default;
/// TypeInfo for the Any type declared in the anonymous namespace above
TINT_INSTANTIATE_TYPEINFO(Any);
diff --git a/src/tint/builtin_table.h b/src/tint/resolver/intrinsic_table.h
similarity index 78%
rename from src/tint/builtin_table.h
rename to src/tint/resolver/intrinsic_table.h
index 89f7e90..e9760a5 100644
--- a/src/tint/builtin_table.h
+++ b/src/tint/resolver/intrinsic_table.h
@@ -12,8 +12,8 @@
// See the License for the specific language governing permissions and
// limitations under the License.
-#ifndef SRC_TINT_BUILTIN_TABLE_H_
-#define SRC_TINT_BUILTIN_TABLE_H_
+#ifndef SRC_TINT_RESOLVER_INTRINSIC_TABLE_H_
+#define SRC_TINT_RESOLVER_INTRINSIC_TABLE_H_
#include <memory>
#include <string>
@@ -28,15 +28,15 @@
namespace tint {
-/// BuiltinTable is a lookup table of all the WGSL builtin functions
-class BuiltinTable {
+/// IntrinsicTable is a lookup table of all the WGSL builtin functions
+class IntrinsicTable {
public:
/// @param builder the program builder
- /// @return a pointer to a newly created BuiltinTable
- static std::unique_ptr<BuiltinTable> Create(ProgramBuilder& builder);
+ /// @return a pointer to a newly created IntrinsicTable
+ static std::unique_ptr<IntrinsicTable> Create(ProgramBuilder& builder);
/// Destructor
- virtual ~BuiltinTable();
+ virtual ~IntrinsicTable();
/// Lookup looks for the builtin overload with the given signature, raising
/// an error diagnostic if the builtin was not found.
@@ -51,4 +51,4 @@
} // namespace tint
-#endif // SRC_TINT_BUILTIN_TABLE_H_
+#endif // SRC_TINT_RESOLVER_INTRINSIC_TABLE_H_
diff --git a/src/tint/builtin_table.inl b/src/tint/resolver/intrinsic_table.inl
similarity index 100%
rename from src/tint/builtin_table.inl
rename to src/tint/resolver/intrinsic_table.inl
diff --git a/src/tint/builtin_table.inl.tmpl b/src/tint/resolver/intrinsic_table.inl.tmpl
similarity index 98%
rename from src/tint/builtin_table.inl.tmpl
rename to src/tint/resolver/intrinsic_table.inl.tmpl
index b7604b8..931ae24 100644
--- a/src/tint/builtin_table.inl.tmpl
+++ b/src/tint/resolver/intrinsic_table.inl.tmpl
@@ -4,7 +4,7 @@
Used by BuiltinTable.cc for builtin overload resolution.
See:
-* tools/cmd/builtin-gen/gen for structures used by this template
+* tools/cmd/intrinsic-gen/gen for structures used by this template
* https://golang.org/pkg/text/template/ for documentation on the template syntax
--------------------------------------------------------------------------------
*/ -}}
diff --git a/src/tint/builtin_table_test.cc b/src/tint/resolver/intrinsic_table_test.cc
similarity index 92%
rename from src/tint/builtin_table_test.cc
rename to src/tint/resolver/intrinsic_table_test.cc
index 48cdc18..c4f4fd4 100644
--- a/src/tint/builtin_table_test.cc
+++ b/src/tint/resolver/intrinsic_table_test.cc
@@ -12,7 +12,7 @@
// See the License for the specific language governing permissions and
// limitations under the License.
-#include "src/tint/builtin_table.h"
+#include "src/tint/resolver/intrinsic_table.h"
#include "gmock/gmock.h"
#include "src/tint/program_builder.h"
@@ -34,12 +34,12 @@
using Parameter = sem::Parameter;
using ParameterUsage = sem::ParameterUsage;
-class BuiltinTableTest : public testing::Test, public ProgramBuilder {
+class IntrinsicTableTest : public testing::Test, public ProgramBuilder {
public:
- std::unique_ptr<BuiltinTable> table = BuiltinTable::Create(*this);
+ std::unique_ptr<IntrinsicTable> table = IntrinsicTable::Create(*this);
};
-TEST_F(BuiltinTableTest, MatchF32) {
+TEST_F(IntrinsicTableTest, MatchF32) {
auto* f32 = create<sem::F32>();
auto* result = table->Lookup(BuiltinType::kCos, {f32}, Source{});
ASSERT_NE(result, nullptr) << Diagnostics().str();
@@ -50,14 +50,14 @@
EXPECT_EQ(result->Parameters()[0]->Type(), f32);
}
-TEST_F(BuiltinTableTest, MismatchF32) {
+TEST_F(IntrinsicTableTest, MismatchF32) {
auto* i32 = create<sem::I32>();
auto* result = table->Lookup(BuiltinType::kCos, {i32}, Source{});
ASSERT_EQ(result, nullptr);
ASSERT_THAT(Diagnostics().str(), HasSubstr("no matching call"));
}
-TEST_F(BuiltinTableTest, MatchU32) {
+TEST_F(IntrinsicTableTest, MatchU32) {
auto* f32 = create<sem::F32>();
auto* u32 = create<sem::U32>();
auto* vec2_f32 = create<sem::Vector>(f32, 2u);
@@ -70,14 +70,14 @@
EXPECT_EQ(result->Parameters()[0]->Type(), u32);
}
-TEST_F(BuiltinTableTest, MismatchU32) {
+TEST_F(IntrinsicTableTest, MismatchU32) {
auto* f32 = create<sem::F32>();
auto* result = table->Lookup(BuiltinType::kUnpack2x16float, {f32}, Source{});
ASSERT_EQ(result, nullptr);
ASSERT_THAT(Diagnostics().str(), HasSubstr("no matching call"));
}
-TEST_F(BuiltinTableTest, MatchI32) {
+TEST_F(IntrinsicTableTest, MatchI32) {
auto* f32 = create<sem::F32>();
auto* i32 = create<sem::I32>();
auto* vec4_f32 = create<sem::Vector>(f32, 4u);
@@ -96,7 +96,7 @@
EXPECT_EQ(result->Parameters()[2]->Usage(), ParameterUsage::kLevel);
}
-TEST_F(BuiltinTableTest, MismatchI32) {
+TEST_F(IntrinsicTableTest, MismatchI32) {
auto* f32 = create<sem::F32>();
auto* tex = create<sem::SampledTexture>(ast::TextureDimension::k1d, f32);
auto* result = table->Lookup(BuiltinType::kTextureLoad, {tex, f32}, Source{});
@@ -104,7 +104,7 @@
ASSERT_THAT(Diagnostics().str(), HasSubstr("no matching call"));
}
-TEST_F(BuiltinTableTest, MatchIU32AsI32) {
+TEST_F(IntrinsicTableTest, MatchIU32AsI32) {
auto* i32 = create<sem::I32>();
auto* result = table->Lookup(BuiltinType::kCountOneBits, {i32}, Source{});
ASSERT_NE(result, nullptr) << Diagnostics().str();
@@ -115,7 +115,7 @@
EXPECT_EQ(result->Parameters()[0]->Type(), i32);
}
-TEST_F(BuiltinTableTest, MatchIU32AsU32) {
+TEST_F(IntrinsicTableTest, MatchIU32AsU32) {
auto* u32 = create<sem::U32>();
auto* result = table->Lookup(BuiltinType::kCountOneBits, {u32}, Source{});
ASSERT_NE(result, nullptr) << Diagnostics().str();
@@ -126,14 +126,14 @@
EXPECT_EQ(result->Parameters()[0]->Type(), u32);
}
-TEST_F(BuiltinTableTest, MismatchIU32) {
+TEST_F(IntrinsicTableTest, MismatchIU32) {
auto* f32 = create<sem::F32>();
auto* result = table->Lookup(BuiltinType::kCountOneBits, {f32}, Source{});
ASSERT_EQ(result, nullptr);
ASSERT_THAT(Diagnostics().str(), HasSubstr("no matching call"));
}
-TEST_F(BuiltinTableTest, MatchFIU32AsI32) {
+TEST_F(IntrinsicTableTest, MatchFIU32AsI32) {
auto* i32 = create<sem::I32>();
auto* result = table->Lookup(BuiltinType::kClamp, {i32, i32, i32}, Source{});
ASSERT_NE(result, nullptr) << Diagnostics().str();
@@ -146,7 +146,7 @@
EXPECT_EQ(result->Parameters()[2]->Type(), i32);
}
-TEST_F(BuiltinTableTest, MatchFIU32AsU32) {
+TEST_F(IntrinsicTableTest, MatchFIU32AsU32) {
auto* u32 = create<sem::U32>();
auto* result = table->Lookup(BuiltinType::kClamp, {u32, u32, u32}, Source{});
ASSERT_NE(result, nullptr) << Diagnostics().str();
@@ -159,7 +159,7 @@
EXPECT_EQ(result->Parameters()[2]->Type(), u32);
}
-TEST_F(BuiltinTableTest, MatchFIU32AsF32) {
+TEST_F(IntrinsicTableTest, MatchFIU32AsF32) {
auto* f32 = create<sem::F32>();
auto* result = table->Lookup(BuiltinType::kClamp, {f32, f32, f32}, Source{});
ASSERT_NE(result, nullptr) << Diagnostics().str();
@@ -172,14 +172,14 @@
EXPECT_EQ(result->Parameters()[2]->Type(), f32);
}
-TEST_F(BuiltinTableTest, MismatchFIU32) {
+TEST_F(IntrinsicTableTest, MismatchFIU32) {
auto* bool_ = create<sem::Bool>();
auto* result = table->Lookup(BuiltinType::kClamp, {bool_, bool_, bool_}, Source{});
ASSERT_EQ(result, nullptr);
ASSERT_THAT(Diagnostics().str(), HasSubstr("no matching call"));
}
-TEST_F(BuiltinTableTest, MatchBool) {
+TEST_F(IntrinsicTableTest, MatchBool) {
auto* f32 = create<sem::F32>();
auto* bool_ = create<sem::Bool>();
auto* result = table->Lookup(BuiltinType::kSelect, {f32, f32, bool_}, Source{});
@@ -193,14 +193,14 @@
EXPECT_EQ(result->Parameters()[2]->Type(), bool_);
}
-TEST_F(BuiltinTableTest, MismatchBool) {
+TEST_F(IntrinsicTableTest, MismatchBool) {
auto* f32 = create<sem::F32>();
auto* result = table->Lookup(BuiltinType::kSelect, {f32, f32, f32}, Source{});
ASSERT_EQ(result, nullptr);
ASSERT_THAT(Diagnostics().str(), HasSubstr("no matching call"));
}
-TEST_F(BuiltinTableTest, MatchPointer) {
+TEST_F(IntrinsicTableTest, MatchPointer) {
auto* i32 = create<sem::I32>();
auto* atomicI32 = create<sem::Atomic>(i32);
auto* ptr =
@@ -214,7 +214,7 @@
EXPECT_EQ(result->Parameters()[0]->Type(), ptr);
}
-TEST_F(BuiltinTableTest, MismatchPointer) {
+TEST_F(IntrinsicTableTest, MismatchPointer) {
auto* i32 = create<sem::I32>();
auto* atomicI32 = create<sem::Atomic>(i32);
auto* result = table->Lookup(BuiltinType::kAtomicLoad, {atomicI32}, Source{});
@@ -222,7 +222,7 @@
ASSERT_THAT(Diagnostics().str(), HasSubstr("no matching call"));
}
-TEST_F(BuiltinTableTest, MatchArray) {
+TEST_F(IntrinsicTableTest, MatchArray) {
auto* arr = create<sem::Array>(create<sem::U32>(), 0u, 4u, 4u, 4u, 4u);
auto* arr_ptr = create<sem::Pointer>(arr, ast::StorageClass::kStorage, ast::Access::kReadWrite);
auto* result = table->Lookup(BuiltinType::kArrayLength, {arr_ptr}, Source{});
@@ -236,14 +236,14 @@
EXPECT_TRUE(param_type->As<sem::Pointer>()->StoreType()->Is<sem::Array>());
}
-TEST_F(BuiltinTableTest, MismatchArray) {
+TEST_F(IntrinsicTableTest, MismatchArray) {
auto* f32 = create<sem::F32>();
auto* result = table->Lookup(BuiltinType::kArrayLength, {f32}, Source{});
ASSERT_EQ(result, nullptr);
ASSERT_THAT(Diagnostics().str(), HasSubstr("no matching call"));
}
-TEST_F(BuiltinTableTest, MatchSampler) {
+TEST_F(IntrinsicTableTest, MatchSampler) {
auto* f32 = create<sem::F32>();
auto* vec2_f32 = create<sem::Vector>(f32, 2u);
auto* vec4_f32 = create<sem::Vector>(f32, 4u);
@@ -263,7 +263,7 @@
EXPECT_EQ(result->Parameters()[2]->Usage(), ParameterUsage::kCoords);
}
-TEST_F(BuiltinTableTest, MismatchSampler) {
+TEST_F(IntrinsicTableTest, MismatchSampler) {
auto* f32 = create<sem::F32>();
auto* vec2_f32 = create<sem::Vector>(f32, 2u);
auto* tex = create<sem::SampledTexture>(ast::TextureDimension::k2d, f32);
@@ -272,7 +272,7 @@
ASSERT_THAT(Diagnostics().str(), HasSubstr("no matching call"));
}
-TEST_F(BuiltinTableTest, MatchSampledTexture) {
+TEST_F(IntrinsicTableTest, MatchSampledTexture) {
auto* i32 = create<sem::I32>();
auto* f32 = create<sem::F32>();
auto* vec2_i32 = create<sem::Vector>(i32, 2u);
@@ -292,7 +292,7 @@
EXPECT_EQ(result->Parameters()[2]->Usage(), ParameterUsage::kLevel);
}
-TEST_F(BuiltinTableTest, MatchMultisampledTexture) {
+TEST_F(IntrinsicTableTest, MatchMultisampledTexture) {
auto* i32 = create<sem::I32>();
auto* f32 = create<sem::F32>();
auto* vec2_i32 = create<sem::Vector>(i32, 2u);
@@ -312,7 +312,7 @@
EXPECT_EQ(result->Parameters()[2]->Usage(), ParameterUsage::kSampleIndex);
}
-TEST_F(BuiltinTableTest, MatchDepthTexture) {
+TEST_F(IntrinsicTableTest, MatchDepthTexture) {
auto* f32 = create<sem::F32>();
auto* i32 = create<sem::I32>();
auto* vec2_i32 = create<sem::Vector>(i32, 2u);
@@ -331,7 +331,7 @@
EXPECT_EQ(result->Parameters()[2]->Usage(), ParameterUsage::kLevel);
}
-TEST_F(BuiltinTableTest, MatchDepthMultisampledTexture) {
+TEST_F(IntrinsicTableTest, MatchDepthMultisampledTexture) {
auto* f32 = create<sem::F32>();
auto* i32 = create<sem::I32>();
auto* vec2_i32 = create<sem::Vector>(i32, 2u);
@@ -350,7 +350,7 @@
EXPECT_EQ(result->Parameters()[2]->Usage(), ParameterUsage::kSampleIndex);
}
-TEST_F(BuiltinTableTest, MatchExternalTexture) {
+TEST_F(IntrinsicTableTest, MatchExternalTexture) {
auto* f32 = create<sem::F32>();
auto* i32 = create<sem::I32>();
auto* vec2_i32 = create<sem::Vector>(i32, 2u);
@@ -368,7 +368,7 @@
EXPECT_EQ(result->Parameters()[1]->Usage(), ParameterUsage::kCoords);
}
-TEST_F(BuiltinTableTest, MatchWOStorageTexture) {
+TEST_F(IntrinsicTableTest, MatchWOStorageTexture) {
auto* f32 = create<sem::F32>();
auto* i32 = create<sem::I32>();
auto* vec2_i32 = create<sem::Vector>(i32, 2u);
@@ -391,7 +391,7 @@
EXPECT_EQ(result->Parameters()[2]->Usage(), ParameterUsage::kValue);
}
-TEST_F(BuiltinTableTest, MismatchTexture) {
+TEST_F(IntrinsicTableTest, MismatchTexture) {
auto* f32 = create<sem::F32>();
auto* i32 = create<sem::I32>();
auto* vec2_i32 = create<sem::Vector>(i32, 2u);
@@ -400,7 +400,7 @@
ASSERT_THAT(Diagnostics().str(), HasSubstr("no matching call"));
}
-TEST_F(BuiltinTableTest, ImplicitLoadOnReference) {
+TEST_F(IntrinsicTableTest, ImplicitLoadOnReference) {
auto* f32 = create<sem::F32>();
auto* result = table->Lookup(
BuiltinType::kCos,
@@ -414,7 +414,7 @@
EXPECT_EQ(result->Parameters()[0]->Type(), f32);
}
-TEST_F(BuiltinTableTest, MatchOpenType) {
+TEST_F(IntrinsicTableTest, MatchOpenType) {
auto* f32 = create<sem::F32>();
auto* result = table->Lookup(BuiltinType::kClamp, {f32, f32, f32}, Source{});
ASSERT_NE(result, nullptr) << Diagnostics().str();
@@ -426,7 +426,7 @@
EXPECT_EQ(result->Parameters()[2]->Type(), f32);
}
-TEST_F(BuiltinTableTest, MismatchOpenType) {
+TEST_F(IntrinsicTableTest, MismatchOpenType) {
auto* f32 = create<sem::F32>();
auto* u32 = create<sem::U32>();
auto* result = table->Lookup(BuiltinType::kClamp, {f32, u32, f32}, Source{});
@@ -434,7 +434,7 @@
ASSERT_THAT(Diagnostics().str(), HasSubstr("no matching call"));
}
-TEST_F(BuiltinTableTest, MatchOpenSizeVector) {
+TEST_F(IntrinsicTableTest, MatchOpenSizeVector) {
auto* f32 = create<sem::F32>();
auto* vec2_f32 = create<sem::Vector>(f32, 2u);
auto* result = table->Lookup(BuiltinType::kClamp, {vec2_f32, vec2_f32, vec2_f32}, Source{});
@@ -448,7 +448,7 @@
EXPECT_EQ(result->Parameters()[2]->Type(), vec2_f32);
}
-TEST_F(BuiltinTableTest, MismatchOpenSizeVector) {
+TEST_F(IntrinsicTableTest, MismatchOpenSizeVector) {
auto* f32 = create<sem::F32>();
auto* u32 = create<sem::U32>();
auto* vec2_f32 = create<sem::Vector>(f32, 2u);
@@ -457,7 +457,7 @@
ASSERT_THAT(Diagnostics().str(), HasSubstr("no matching call"));
}
-TEST_F(BuiltinTableTest, MatchOpenSizeMatrix) {
+TEST_F(IntrinsicTableTest, MatchOpenSizeMatrix) {
auto* f32 = create<sem::F32>();
auto* vec3_f32 = create<sem::Vector>(f32, 3u);
auto* mat3_f32 = create<sem::Matrix>(vec3_f32, 3u);
@@ -470,7 +470,7 @@
EXPECT_EQ(result->Parameters()[0]->Type(), mat3_f32);
}
-TEST_F(BuiltinTableTest, MismatchOpenSizeMatrix) {
+TEST_F(IntrinsicTableTest, MismatchOpenSizeMatrix) {
auto* f32 = create<sem::F32>();
auto* vec2_f32 = create<sem::Vector>(f32, 2u);
auto* mat3x2_f32 = create<sem::Matrix>(vec2_f32, 3u);
@@ -479,7 +479,7 @@
ASSERT_THAT(Diagnostics().str(), HasSubstr("no matching call"));
}
-TEST_F(BuiltinTableTest, OverloadOrderByNumberOfParameters) {
+TEST_F(IntrinsicTableTest, OverloadOrderByNumberOfParameters) {
// None of the arguments match, so expect the overloads with 2 parameters to
// come first
auto* bool_ = create<sem::Bool>();
@@ -518,7 +518,7 @@
)");
}
-TEST_F(BuiltinTableTest, OverloadOrderByMatchingParameter) {
+TEST_F(IntrinsicTableTest, OverloadOrderByMatchingParameter) {
auto* tex = create<sem::DepthTexture>(ast::TextureDimension::k2d);
auto* bool_ = create<sem::Bool>();
table->Lookup(BuiltinType::kTextureDimensions, {tex, bool_}, Source{});
@@ -556,7 +556,7 @@
)");
}
-TEST_F(BuiltinTableTest, SameOverloadReturnsSameBuiltinPointer) {
+TEST_F(IntrinsicTableTest, SameOverloadReturnsSameBuiltinPointer) {
auto* f32 = create<sem::F32>();
auto* vec2_f32 = create<sem::Vector>(create<sem::F32>(), 2u);
auto* bool_ = create<sem::Bool>();
diff --git a/src/tint/resolver/resolver.cc b/src/tint/resolver/resolver.cc
index dc1007b..760813d 100644
--- a/src/tint/resolver/resolver.cc
+++ b/src/tint/resolver/resolver.cc
@@ -84,7 +84,7 @@
Resolver::Resolver(ProgramBuilder* builder)
: builder_(builder),
diagnostics_(builder->Diagnostics()),
- builtin_table_(BuiltinTable::Create(*builder)),
+ intrinsic_table_(IntrinsicTable::Create(*builder)),
sem_(builder, dependencies_),
validator_(builder, sem_) {}
@@ -1292,7 +1292,7 @@
sem::BuiltinType builtin_type,
const std::vector<const sem::Expression*> args,
const std::vector<const sem::Type*> arg_tys) {
- auto* builtin = builtin_table_->Lookup(builtin_type, std::move(arg_tys), expr->source);
+ auto* builtin = intrinsic_table_->Lookup(builtin_type, std::move(arg_tys), expr->source);
if (!builtin) {
return nullptr;
}
diff --git a/src/tint/resolver/resolver.h b/src/tint/resolver/resolver.h
index f8dec15..ba90a30 100644
--- a/src/tint/resolver/resolver.h
+++ b/src/tint/resolver/resolver.h
@@ -22,9 +22,9 @@
#include <utility>
#include <vector>
-#include "src/tint/builtin_table.h"
#include "src/tint/program_builder.h"
#include "src/tint/resolver/dependency_graph.h"
+#include "src/tint/resolver/intrinsic_table.h"
#include "src/tint/resolver/sem_helper.h"
#include "src/tint/resolver/validator.h"
#include "src/tint/scope_stack.h"
@@ -378,7 +378,7 @@
ProgramBuilder* const builder_;
diag::List& diagnostics_;
- std::unique_ptr<BuiltinTable> const builtin_table_;
+ std::unique_ptr<IntrinsicTable> const intrinsic_table_;
DependencyGraph dependencies_;
SemHelper sem_;
Validator validator_;
diff --git a/src/tint/sem/builtin_type.cc b/src/tint/sem/builtin_type.cc
index 820b3e6..49ee000 100644
--- a/src/tint/sem/builtin_type.cc
+++ b/src/tint/sem/builtin_type.cc
@@ -13,11 +13,11 @@
// limitations under the License.
////////////////////////////////////////////////////////////////////////////////
-// File generated by tools/builtin-gen
+// File generated by tools/intrinsic-gen
// using the template:
// src/tint/sem/builtin_type.cc.tmpl
-// and the builtin defintion file:
-// src/tint/builtins.def
+// and the intrinsic defintion file:
+// src/tint/intrinsics.def
//
// Do not modify this file directly
////////////////////////////////////////////////////////////////////////////////
diff --git a/src/tint/sem/builtin_type.cc.tmpl b/src/tint/sem/builtin_type.cc.tmpl
index 2330c87..63c2083 100644
--- a/src/tint/sem/builtin_type.cc.tmpl
+++ b/src/tint/sem/builtin_type.cc.tmpl
@@ -3,7 +3,7 @@
Template file for use with tools/builtin-gen to generate builtin_type.cc
See:
-* tools/cmd/builtin-gen/gen for structures used by this template
+* tools/cmd/intrinsic-gen/gen for structures used by this template
* https://golang.org/pkg/text/template/ for documentation on the template syntax
--------------------------------------------------------------------------------
*/ -}}
diff --git a/src/tint/sem/builtin_type.h b/src/tint/sem/builtin_type.h
index ec07274..780f9c5 100644
--- a/src/tint/sem/builtin_type.h
+++ b/src/tint/sem/builtin_type.h
@@ -13,11 +13,11 @@
// limitations under the License.
////////////////////////////////////////////////////////////////////////////////
-// File generated by tools/builtin-gen
+// File generated by tools/intrinsic-gen
// using the template:
// src/tint/sem/builtin_type.h.tmpl
-// and the builtin defintion file:
-// src/tint/builtins.def
+// and the intrinsic defintion file:
+// src/tint/intrinsics.def
//
// Do not modify this file directly
////////////////////////////////////////////////////////////////////////////////
diff --git a/src/tint/sem/builtin_type.h.tmpl b/src/tint/sem/builtin_type.h.tmpl
index b601c37..d4e1cc7 100644
--- a/src/tint/sem/builtin_type.h.tmpl
+++ b/src/tint/sem/builtin_type.h.tmpl
@@ -3,7 +3,7 @@
Template file for use with tools/builtin-gen to generate builtin_type.h
See:
-* tools/cmd/builtin-gen/gen for structures used by this template
+* tools/cmd/intrinsic-gen/gen for structures used by this template
* https://golang.org/pkg/text/template/ for documentation on the template syntax
--------------------------------------------------------------------------------
*/ -}}
diff --git a/src/tint/sem/parameter_usage.cc b/src/tint/sem/parameter_usage.cc
index 0eef789..4891bba 100644
--- a/src/tint/sem/parameter_usage.cc
+++ b/src/tint/sem/parameter_usage.cc
@@ -13,11 +13,11 @@
// limitations under the License.
////////////////////////////////////////////////////////////////////////////////
-// File generated by tools/builtin-gen
+// File generated by tools/intrinsic-gen
// using the template:
// src/tint/sem/parameter_usage.cc.tmpl
-// and the builtin defintion file:
-// src/tint/builtins.def
+// and the intrinsic defintion file:
+// src/tint/intrinsics.def
//
// Do not modify this file directly
////////////////////////////////////////////////////////////////////////////////
diff --git a/src/tint/sem/parameter_usage.cc.tmpl b/src/tint/sem/parameter_usage.cc.tmpl
index bb767d4..bc413e1 100644
--- a/src/tint/sem/parameter_usage.cc.tmpl
+++ b/src/tint/sem/parameter_usage.cc.tmpl
@@ -3,7 +3,7 @@
Template file for use with tools/builtin-gen to generate parameter_usage.cc
See:
-* tools/cmd/builtin-gen/gen for structures used by this template
+* tools/cmd/intrinsic-gen/gen for structures used by this template
* https://golang.org/pkg/text/template/ for documentation on the template syntax
--------------------------------------------------------------------------------
*/ -}}
diff --git a/src/tint/sem/parameter_usage.h b/src/tint/sem/parameter_usage.h
index d4e99c1..85ef64f 100644
--- a/src/tint/sem/parameter_usage.h
+++ b/src/tint/sem/parameter_usage.h
@@ -13,11 +13,11 @@
// limitations under the License.
////////////////////////////////////////////////////////////////////////////////
-// File generated by tools/builtin-gen
+// File generated by tools/intrinsic-gen
// using the template:
// src/tint/sem/parameter_usage.h.tmpl
-// and the builtin defintion file:
-// src/tint/builtins.def
+// and the intrinsic defintion file:
+// src/tint/intrinsics.def
//
// Do not modify this file directly
////////////////////////////////////////////////////////////////////////////////
diff --git a/src/tint/sem/parameter_usage.h.tmpl b/src/tint/sem/parameter_usage.h.tmpl
index f7a3c28..b1b5789 100644
--- a/src/tint/sem/parameter_usage.h.tmpl
+++ b/src/tint/sem/parameter_usage.h.tmpl
@@ -3,7 +3,7 @@
Template file for use with tools/builtin-gen to generate parameter_usage.h
See:
-* tools/cmd/builtin-gen/gen for structures used by this template
+* tools/cmd/intrinsic-gen/gen for structures used by this template
* https://golang.org/pkg/text/template/ for documentation on the template syntax
--------------------------------------------------------------------------------
*/ -}}
diff --git a/test/tint/BUILD.gn b/test/tint/BUILD.gn
index 8111273..bed8729 100644
--- a/test/tint/BUILD.gn
+++ b/test/tint/BUILD.gn
@@ -252,6 +252,7 @@
"../../src/tint/resolver/function_validation_test.cc",
"../../src/tint/resolver/host_shareable_validation_test.cc",
"../../src/tint/resolver/increment_decrement_validation_test.cc",
+ "../../src/tint/resolver/intrinsic_table_test.cc",
"../../src/tint/resolver/is_host_shareable_test.cc",
"../../src/tint/resolver/is_storeable_test.cc",
"../../src/tint/resolver/pipeline_overridable_constant_test.cc",
@@ -713,7 +714,6 @@
tint_unittests_source_set("tint_unittests_core_src") {
sources = [
- "../../src/tint/builtin_table_test.cc",
"../../src/tint/castable_test.cc",
"../../src/tint/clone_context_test.cc",
"../../src/tint/debug_test.cc",