[spirv-reader][ir] Add SubgroupId builtin support.
Add support for the `SubgroupId` builtin.
Fixed: 431030756
Change-Id: Ic3c4b04221a10ec7f6318cb6a503d7056e87017a
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/252034
Reviewed-by: David Neto <dneto@google.com>
Commit-Queue: David Neto <dneto@google.com>
diff --git a/src/tint/lang/spirv/reader/parser/parser.cc b/src/tint/lang/spirv/reader/parser/parser.cc
index 34523e1..845ebd9 100644
--- a/src/tint/lang/spirv/reader/parser/parser.cc
+++ b/src/tint/lang/spirv/reader/parser/parser.cc
@@ -612,6 +612,8 @@
return core::BuiltinValue::kSampleIndex;
case spv::BuiltIn::SampleMask:
return core::BuiltinValue::kSampleMask;
+ case spv::BuiltIn::SubgroupId:
+ return core::BuiltinValue::kSubgroupId;
case spv::BuiltIn::SubgroupSize:
return core::BuiltinValue::kSubgroupSize;
case spv::BuiltIn::SubgroupLocalInvocationId:
diff --git a/src/tint/lang/spirv/reader/parser/var_test.cc b/src/tint/lang/spirv/reader/parser/var_test.cc
index 4e1cad2..7fb14cf 100644
--- a/src/tint/lang/spirv/reader/parser/var_test.cc
+++ b/src/tint/lang/spirv/reader/parser/var_test.cc
@@ -670,6 +670,11 @@
},
BuiltinCase{
"u32",
+ "SubgroupId",
+ "%1:ptr<__in, u32, read> = var undef @builtin(subgroup_id)",
+ },
+ BuiltinCase{
+ "u32",
"SubgroupSize",
"%1:ptr<__in, u32, read> = var undef @builtin(subgroup_size)",
},