mirror of
https://github.com/encounter/dawn-cmake.git
synced 2025-12-10 22:17:51 +00:00
Add support for [[builtin(workgroup_id)]]
This is a trivial mapping to/from WGSL in all cases. Bug: tint:478 Change-Id: I7f21a2392543a880906b54fddbdb8bbd149a526e Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/48140 Commit-Queue: James Price <jrprice@google.com> Commit-Queue: Ben Clayton <bclayton@google.com> Auto-Submit: James Price <jrprice@google.com> Reviewed-by: Ben Clayton <bclayton@google.com> Kokoro: Kokoro <noreply+kokoro@google.com>
This commit is contained in:
committed by
Commit Bot service account
parent
5cd71b8c0a
commit
395b48825a
@@ -86,6 +86,8 @@ ast::Builtin EnumConverter::ToBuiltin(SpvBuiltIn b) {
|
||||
return ast::Builtin::kLocalInvocationIndex;
|
||||
case SpvBuiltInGlobalInvocationId:
|
||||
return ast::Builtin::kGlobalInvocationId;
|
||||
case SpvBuiltInWorkgroupId:
|
||||
return ast::Builtin::kWorkgroupId;
|
||||
case SpvBuiltInSampleId:
|
||||
return ast::Builtin::kSampleIndex;
|
||||
case SpvBuiltInSampleMask:
|
||||
|
||||
@@ -217,6 +217,7 @@ INSTANTIATE_TEST_SUITE_P(
|
||||
ast::Builtin::kLocalInvocationIndex},
|
||||
BuiltinCase{SpvBuiltInGlobalInvocationId, true,
|
||||
ast::Builtin::kGlobalInvocationId},
|
||||
BuiltinCase{SpvBuiltInWorkgroupId, true, ast::Builtin::kWorkgroupId},
|
||||
BuiltinCase{SpvBuiltInSampleId, true, ast::Builtin::kSampleIndex},
|
||||
BuiltinCase{SpvBuiltInSampleMask, true, ast::Builtin::kSampleMask}));
|
||||
|
||||
|
||||
@@ -85,6 +85,9 @@ ast::Builtin ident_to_builtin(const std::string& str) {
|
||||
if (str == "global_invocation_id") {
|
||||
return ast::Builtin::kGlobalInvocationId;
|
||||
}
|
||||
if (str == "workgroup_id") {
|
||||
return ast::Builtin::kWorkgroupId;
|
||||
}
|
||||
if (str == "sample_index") {
|
||||
return ast::Builtin::kSampleIndex;
|
||||
}
|
||||
|
||||
@@ -121,6 +121,7 @@ INSTANTIATE_TEST_SUITE_P(
|
||||
BuiltinData{"local_invocation_index",
|
||||
ast::Builtin::kLocalInvocationIndex},
|
||||
BuiltinData{"global_invocation_id", ast::Builtin::kGlobalInvocationId},
|
||||
BuiltinData{"workgroup_id", ast::Builtin::kWorkgroupId},
|
||||
BuiltinData{"sample_index", ast::Builtin::kSampleIndex},
|
||||
BuiltinData{"sample_mask", ast::Builtin::kSampleMask},
|
||||
BuiltinData{"sample_mask_in", ast::Builtin::kSampleMaskIn},
|
||||
|
||||
Reference in New Issue
Block a user