mirror of
https://github.com/encounter/dawn-cmake.git
synced 2025-12-10 05:57:51 +00:00
Move TypeManager from tint::Context to ast::Module
Bug: tint:307 Bug: tint:337 Change-Id: I726cdf89182813ba6f468f8ac35e5d44b22e1e1f Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/33666 Commit-Queue: Ben Clayton <bclayton@google.com> Reviewed-by: David Neto <dneto@google.com>
This commit is contained in:
committed by
Commit Bot service account
parent
3e67c5dba6
commit
0fb5168fc7
@@ -237,7 +237,7 @@ bool BoundArrayAccessorsTransform::ProcessAccessExpression(
|
||||
return false;
|
||||
}
|
||||
} else {
|
||||
auto* u32 = ctx_->type_mgr().Get(std::make_unique<ast::type::U32Type>());
|
||||
auto* u32 = mod_->type_mgr().Get(std::make_unique<ast::type::U32Type>());
|
||||
|
||||
ast::ExpressionList cast_expr;
|
||||
cast_expr.push_back(expr->idx_expr());
|
||||
|
||||
@@ -222,7 +222,7 @@ void VertexPullingTransform::AddVertexStorageBuffers() {
|
||||
ary_decos.push_back(create<ast::StrideDecoration>(4u, Source{}));
|
||||
internal_array->set_decorations(std::move(ary_decos));
|
||||
|
||||
auto* internal_array_type = ctx_->type_mgr().Get(std::move(internal_array));
|
||||
auto* internal_array_type = mod_->type_mgr().Get(std::move(internal_array));
|
||||
|
||||
// Creating the struct type
|
||||
ast::StructMemberList members;
|
||||
@@ -236,7 +236,7 @@ void VertexPullingTransform::AddVertexStorageBuffers() {
|
||||
decos.push_back(create<ast::StructBlockDecoration>(Source{}));
|
||||
|
||||
auto* struct_type =
|
||||
ctx_->type_mgr().Get(std::make_unique<ast::type::StructType>(
|
||||
mod_->type_mgr().Get(std::make_unique<ast::type::StructType>(
|
||||
kStructName,
|
||||
create<ast::Struct>(std::move(decos), std::move(members))));
|
||||
|
||||
@@ -411,21 +411,21 @@ ast::Expression* VertexPullingTransform::AccessVec(uint32_t buffer,
|
||||
}
|
||||
|
||||
return create<ast::TypeConstructorExpression>(
|
||||
ctx_->type_mgr().Get(
|
||||
mod_->type_mgr().Get(
|
||||
std::make_unique<ast::type::VectorType>(base_type, count)),
|
||||
std::move(expr_list));
|
||||
}
|
||||
|
||||
ast::type::Type* VertexPullingTransform::GetU32Type() {
|
||||
return ctx_->type_mgr().Get(std::make_unique<ast::type::U32Type>());
|
||||
return mod_->type_mgr().Get(std::make_unique<ast::type::U32Type>());
|
||||
}
|
||||
|
||||
ast::type::Type* VertexPullingTransform::GetI32Type() {
|
||||
return ctx_->type_mgr().Get(std::make_unique<ast::type::I32Type>());
|
||||
return mod_->type_mgr().Get(std::make_unique<ast::type::I32Type>());
|
||||
}
|
||||
|
||||
ast::type::Type* VertexPullingTransform::GetF32Type() {
|
||||
return ctx_->type_mgr().Get(std::make_unique<ast::type::F32Type>());
|
||||
return mod_->type_mgr().Get(std::make_unique<ast::type::F32Type>());
|
||||
}
|
||||
|
||||
VertexBufferLayoutDescriptor::VertexBufferLayoutDescriptor() = default;
|
||||
|
||||
@@ -48,7 +48,7 @@ class VertexPullingTransformHelper {
|
||||
void InitBasicModule() {
|
||||
auto* func = create<ast::Function>(
|
||||
"main", ast::VariableList{},
|
||||
ctx_.type_mgr().Get(std::make_unique<ast::type::VoidType>()),
|
||||
mod_->type_mgr().Get(std::make_unique<ast::type::VoidType>()),
|
||||
create<ast::BlockStatement>());
|
||||
func->add_decoration(
|
||||
create<ast::StageDecoration>(ast::PipelineStage::kVertex, Source{}));
|
||||
@@ -81,7 +81,6 @@ class VertexPullingTransformHelper {
|
||||
mod_->AddGlobalVariable(var);
|
||||
}
|
||||
|
||||
Context* ctx() { return &ctx_; }
|
||||
ast::Module* mod() { return mod_.get(); }
|
||||
Manager* manager() { return manager_.get(); }
|
||||
VertexPullingTransform* transform() { return transform_; }
|
||||
@@ -128,7 +127,7 @@ TEST_F(VertexPullingTransformTest, Error_InvalidEntryPoint) {
|
||||
TEST_F(VertexPullingTransformTest, Error_EntryPointWrongStage) {
|
||||
auto* func = create<ast::Function>(
|
||||
"main", ast::VariableList{},
|
||||
ctx()->type_mgr().Get(std::make_unique<ast::type::VoidType>()),
|
||||
mod()->type_mgr().Get(std::make_unique<ast::type::VoidType>()),
|
||||
create<ast::BlockStatement>());
|
||||
func->add_decoration(
|
||||
create<ast::StageDecoration>(ast::PipelineStage::kFragment, Source{}));
|
||||
|
||||
Reference in New Issue
Block a user