Skip to content

Commit e01ade2

Browse files
committed
SPV_QCOM_image_processing
1 parent aa331ab commit e01ade2

File tree

10 files changed

+187
-0
lines changed

10 files changed

+187
-0
lines changed

include/spirv/unified1/spirv.bf

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -507,6 +507,8 @@ namespace Spv
507507
MaxByteOffsetId = 47,
508508
NoSignedWrap = 4469,
509509
NoUnsignedWrap = 4470,
510+
WeightTextureQCOM = 4487,
511+
BlockMatchTextureQCOM = 4488,
510512
ExplicitInterpAMD = 4999,
511513
OverrideCoverageNV = 5248,
512514
PassthroughNV = 5250,
@@ -1019,6 +1021,9 @@ namespace Spv
10191021
RayQueryKHR = 4472,
10201022
RayTraversalPrimitiveCullingKHR = 4478,
10211023
RayTracingKHR = 4479,
1024+
TextureSampleWeightedQCOM = 4484,
1025+
TextureBoxFilterQCOM = 4485,
1026+
TextureBlockMatchQCOM = 4486,
10221027
Float16ImageAMD = 5008,
10231028
ImageGatherBiasLodAMD = 5009,
10241029
FragmentMaskAMD = 5010,
@@ -1634,6 +1639,10 @@ namespace Spv
16341639
OpRayQueryConfirmIntersectionKHR = 4476,
16351640
OpRayQueryProceedKHR = 4477,
16361641
OpRayQueryGetIntersectionTypeKHR = 4479,
1642+
OpImageSampleWeightedQCOM = 4480,
1643+
OpImageBoxFilterQCOM = 4481,
1644+
OpImageBlockMatchSSDQCOM = 4482,
1645+
OpImageBlockMatchSADQCOM = 4483,
16371646
OpGroupIAddNonUniformAMD = 5000,
16381647
OpGroupFAddNonUniformAMD = 5001,
16391648
OpGroupFMinNonUniformAMD = 5002,

include/spirv/unified1/spirv.core.grammar.json

Lines changed: 94 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4592,6 +4592,70 @@
45924592
"extensions" : [ "SPV_KHR_ray_query" ],
45934593
"version" : "None"
45944594
},
4595+
{
4596+
"opname" : "OpImageSampleWeightedQCOM",
4597+
"class" : "Image",
4598+
"opcode" : 4480,
4599+
"operands" : [
4600+
{ "kind" : "IdResultType" },
4601+
{ "kind" : "IdResult" },
4602+
{ "kind" : "IdRef", "name" : "'Texture'" },
4603+
{ "kind" : "IdRef", "name" : "'Coordinates'" },
4604+
{ "kind" : "IdRef", "name" : "'Weights'" }
4605+
],
4606+
"capabilities" : [ "TextureSampleWeightedQCOM" ],
4607+
"extensions" : [ "SPV_QCOM_image_processing" ],
4608+
"version" : "None"
4609+
},
4610+
{
4611+
"opname" : "OpImageBoxFilterQCOM",
4612+
"class" : "Image",
4613+
"opcode" : 4481,
4614+
"operands" : [
4615+
{ "kind" : "IdResultType" },
4616+
{ "kind" : "IdResult" },
4617+
{ "kind" : "IdRef", "name" : "'Texture'" },
4618+
{ "kind" : "IdRef", "name" : "'Coordinates'" },
4619+
{ "kind" : "IdRef", "name" : "'Box Size'" }
4620+
],
4621+
"capabilities" : [ "TextureBoxFilterQCOM" ],
4622+
"extensions" : [ "SPV_QCOM_image_processing" ],
4623+
"version" : "None"
4624+
},
4625+
{
4626+
"opname" : "OpImageBlockMatchSSDQCOM",
4627+
"class" : "Image",
4628+
"opcode" : 4482,
4629+
"operands" : [
4630+
{ "kind" : "IdResultType" },
4631+
{ "kind" : "IdResult" },
4632+
{ "kind" : "IdRef", "name" : "'Target'" },
4633+
{ "kind" : "IdRef", "name" : "'Target Coordinates'" },
4634+
{ "kind" : "IdRef", "name" : "'Reference'" },
4635+
{ "kind" : "IdRef", "name" : "'Reference Coordinates'" },
4636+
{ "kind" : "IdRef", "name" : "'Block Size'" }
4637+
],
4638+
"capabilities" : [ "TextureBlockMatchQCOM" ],
4639+
"extensions" : [ "SPV_QCOM_image_processing" ],
4640+
"version" : "None"
4641+
},
4642+
{
4643+
"opname" : "OpImageBlockMatchSADQCOM",
4644+
"class" : "Image",
4645+
"opcode" : 4483,
4646+
"operands" : [
4647+
{ "kind" : "IdResultType" },
4648+
{ "kind" : "IdResult" },
4649+
{ "kind" : "IdRef", "name" : "'Target'" },
4650+
{ "kind" : "IdRef", "name" : "'Target Coordinates'" },
4651+
{ "kind" : "IdRef", "name" : "'Reference'" },
4652+
{ "kind" : "IdRef", "name" : "'Reference Coordinates'" },
4653+
{ "kind" : "IdRef", "name" : "'Block Size'" }
4654+
],
4655+
"capabilities" : [ "TextureBlockMatchQCOM" ],
4656+
"extensions" : [ "SPV_QCOM_image_processing" ],
4657+
"version" : "None"
4658+
},
45954659
{
45964660
"opname" : "OpGroupIAddNonUniformAMD",
45974661
"class" : "Group",
@@ -11986,6 +12050,18 @@
1198612050
"extensions" : [ "SPV_KHR_no_integer_wrap_decoration" ],
1198712051
"version" : "1.4"
1198812052
},
12053+
{
12054+
"enumerant" : "WeightTextureQCOM",
12055+
"value" : 4487,
12056+
"extensions" : [ "SPV_QCOM_image_processing" ],
12057+
"version" : "None"
12058+
},
12059+
{
12060+
"enumerant" : "BlockMatchTextureQCOM",
12061+
"value" : 4488,
12062+
"extensions" : [ "SPV_QCOM_image_processing" ],
12063+
"version" : "None"
12064+
},
1198912065
{
1199012066
"enumerant" : "ExplicitInterpAMD",
1199112067
"value" : 4999,
@@ -14082,6 +14158,24 @@
1408214158
"extensions" : [ "SPV_KHR_ray_tracing" ],
1408314159
"version" : "None"
1408414160
},
14161+
{
14162+
"enumerant" : "TextureSampleWeightedQCOM",
14163+
"value" : 4484,
14164+
"extensions" : [ "SPV_QCOM_image_processing" ],
14165+
"version" : "None"
14166+
},
14167+
{
14168+
"enumerant" : "TextureBoxFilterQCOM",
14169+
"value" : 4485,
14170+
"extensions" : [ "SPV_QCOM_image_processing" ],
14171+
"version" : "None"
14172+
},
14173+
{
14174+
"enumerant" : "TextureBlockMatchQCOM",
14175+
"value" : 4486,
14176+
"extensions" : [ "SPV_QCOM_image_processing" ],
14177+
"version" : "None"
14178+
},
1408514179
{
1408614180
"enumerant" : "Float16ImageAMD",
1408714181
"value" : 5008,

include/spirv/unified1/spirv.cs

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -506,6 +506,8 @@ public enum Decoration
506506
MaxByteOffsetId = 47,
507507
NoSignedWrap = 4469,
508508
NoUnsignedWrap = 4470,
509+
WeightTextureQCOM = 4487,
510+
BlockMatchTextureQCOM = 4488,
509511
ExplicitInterpAMD = 4999,
510512
OverrideCoverageNV = 5248,
511513
PassthroughNV = 5250,
@@ -1018,6 +1020,9 @@ public enum Capability
10181020
RayQueryKHR = 4472,
10191021
RayTraversalPrimitiveCullingKHR = 4478,
10201022
RayTracingKHR = 4479,
1023+
TextureSampleWeightedQCOM = 4484,
1024+
TextureBoxFilterQCOM = 4485,
1025+
TextureBlockMatchQCOM = 4486,
10211026
Float16ImageAMD = 5008,
10221027
ImageGatherBiasLodAMD = 5009,
10231028
FragmentMaskAMD = 5010,
@@ -1633,6 +1638,10 @@ public enum Op
16331638
OpRayQueryConfirmIntersectionKHR = 4476,
16341639
OpRayQueryProceedKHR = 4477,
16351640
OpRayQueryGetIntersectionTypeKHR = 4479,
1641+
OpImageSampleWeightedQCOM = 4480,
1642+
OpImageBoxFilterQCOM = 4481,
1643+
OpImageBlockMatchSSDQCOM = 4482,
1644+
OpImageBlockMatchSADQCOM = 4483,
16361645
OpGroupIAddNonUniformAMD = 5000,
16371646
OpGroupFAddNonUniformAMD = 5001,
16381647
OpGroupFMinNonUniformAMD = 5002,

include/spirv/unified1/spirv.h

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -512,6 +512,8 @@ typedef enum SpvDecoration_ {
512512
SpvDecorationMaxByteOffsetId = 47,
513513
SpvDecorationNoSignedWrap = 4469,
514514
SpvDecorationNoUnsignedWrap = 4470,
515+
SpvDecorationWeightTextureQCOM = 4487,
516+
SpvDecorationBlockMatchTextureQCOM = 4488,
515517
SpvDecorationExplicitInterpAMD = 4999,
516518
SpvDecorationOverrideCoverageNV = 5248,
517519
SpvDecorationPassthroughNV = 5250,
@@ -1018,6 +1020,9 @@ typedef enum SpvCapability_ {
10181020
SpvCapabilityRayQueryKHR = 4472,
10191021
SpvCapabilityRayTraversalPrimitiveCullingKHR = 4478,
10201022
SpvCapabilityRayTracingKHR = 4479,
1023+
SpvCapabilityTextureSampleWeightedQCOM = 4484,
1024+
SpvCapabilityTextureBoxFilterQCOM = 4485,
1025+
SpvCapabilityTextureBlockMatchQCOM = 4486,
10211026
SpvCapabilityFloat16ImageAMD = 5008,
10221027
SpvCapabilityImageGatherBiasLodAMD = 5009,
10231028
SpvCapabilityFragmentMaskAMD = 5010,
@@ -1631,6 +1636,10 @@ typedef enum SpvOp_ {
16311636
SpvOpRayQueryConfirmIntersectionKHR = 4476,
16321637
SpvOpRayQueryProceedKHR = 4477,
16331638
SpvOpRayQueryGetIntersectionTypeKHR = 4479,
1639+
SpvOpImageSampleWeightedQCOM = 4480,
1640+
SpvOpImageBoxFilterQCOM = 4481,
1641+
SpvOpImageBlockMatchSSDQCOM = 4482,
1642+
SpvOpImageBlockMatchSADQCOM = 4483,
16341643
SpvOpGroupIAddNonUniformAMD = 5000,
16351644
SpvOpGroupFAddNonUniformAMD = 5001,
16361645
SpvOpGroupFMinNonUniformAMD = 5002,
@@ -2339,6 +2348,10 @@ inline void SpvHasResultAndType(SpvOp opcode, bool *hasResult, bool *hasResultTy
23392348
case SpvOpRayQueryConfirmIntersectionKHR: *hasResult = false; *hasResultType = false; break;
23402349
case SpvOpRayQueryProceedKHR: *hasResult = true; *hasResultType = true; break;
23412350
case SpvOpRayQueryGetIntersectionTypeKHR: *hasResult = true; *hasResultType = true; break;
2351+
case SpvOpImageSampleWeightedQCOM: *hasResult = true; *hasResultType = true; break;
2352+
case SpvOpImageBoxFilterQCOM: *hasResult = true; *hasResultType = true; break;
2353+
case SpvOpImageBlockMatchSSDQCOM: *hasResult = true; *hasResultType = true; break;
2354+
case SpvOpImageBlockMatchSADQCOM: *hasResult = true; *hasResultType = true; break;
23422355
case SpvOpGroupIAddNonUniformAMD: *hasResult = true; *hasResultType = true; break;
23432356
case SpvOpGroupFAddNonUniformAMD: *hasResult = true; *hasResultType = true; break;
23442357
case SpvOpGroupFMinNonUniformAMD: *hasResult = true; *hasResultType = true; break;

include/spirv/unified1/spirv.hpp

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -508,6 +508,8 @@ enum Decoration {
508508
DecorationMaxByteOffsetId = 47,
509509
DecorationNoSignedWrap = 4469,
510510
DecorationNoUnsignedWrap = 4470,
511+
DecorationWeightTextureQCOM = 4487,
512+
DecorationBlockMatchTextureQCOM = 4488,
511513
DecorationExplicitInterpAMD = 4999,
512514
DecorationOverrideCoverageNV = 5248,
513515
DecorationPassthroughNV = 5250,
@@ -1014,6 +1016,9 @@ enum Capability {
10141016
CapabilityRayQueryKHR = 4472,
10151017
CapabilityRayTraversalPrimitiveCullingKHR = 4478,
10161018
CapabilityRayTracingKHR = 4479,
1019+
CapabilityTextureSampleWeightedQCOM = 4484,
1020+
CapabilityTextureBoxFilterQCOM = 4485,
1021+
CapabilityTextureBlockMatchQCOM = 4486,
10171022
CapabilityFloat16ImageAMD = 5008,
10181023
CapabilityImageGatherBiasLodAMD = 5009,
10191024
CapabilityFragmentMaskAMD = 5010,
@@ -1627,6 +1632,10 @@ enum Op {
16271632
OpRayQueryConfirmIntersectionKHR = 4476,
16281633
OpRayQueryProceedKHR = 4477,
16291634
OpRayQueryGetIntersectionTypeKHR = 4479,
1635+
OpImageSampleWeightedQCOM = 4480,
1636+
OpImageBoxFilterQCOM = 4481,
1637+
OpImageBlockMatchSSDQCOM = 4482,
1638+
OpImageBlockMatchSADQCOM = 4483,
16301639
OpGroupIAddNonUniformAMD = 5000,
16311640
OpGroupFAddNonUniformAMD = 5001,
16321641
OpGroupFMinNonUniformAMD = 5002,
@@ -2335,6 +2344,10 @@ inline void HasResultAndType(Op opcode, bool *hasResult, bool *hasResultType) {
23352344
case OpRayQueryConfirmIntersectionKHR: *hasResult = false; *hasResultType = false; break;
23362345
case OpRayQueryProceedKHR: *hasResult = true; *hasResultType = true; break;
23372346
case OpRayQueryGetIntersectionTypeKHR: *hasResult = true; *hasResultType = true; break;
2347+
case OpImageSampleWeightedQCOM: *hasResult = true; *hasResultType = true; break;
2348+
case OpImageBoxFilterQCOM: *hasResult = true; *hasResultType = true; break;
2349+
case OpImageBlockMatchSSDQCOM: *hasResult = true; *hasResultType = true; break;
2350+
case OpImageBlockMatchSADQCOM: *hasResult = true; *hasResultType = true; break;
23382351
case OpGroupIAddNonUniformAMD: *hasResult = true; *hasResultType = true; break;
23392352
case OpGroupFAddNonUniformAMD: *hasResult = true; *hasResultType = true; break;
23402353
case OpGroupFMinNonUniformAMD: *hasResult = true; *hasResultType = true; break;

include/spirv/unified1/spirv.hpp11

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -508,6 +508,8 @@ enum class Decoration : unsigned {
508508
MaxByteOffsetId = 47,
509509
NoSignedWrap = 4469,
510510
NoUnsignedWrap = 4470,
511+
WeightTextureQCOM = 4487,
512+
BlockMatchTextureQCOM = 4488,
511513
ExplicitInterpAMD = 4999,
512514
OverrideCoverageNV = 5248,
513515
PassthroughNV = 5250,
@@ -1014,6 +1016,9 @@ enum class Capability : unsigned {
10141016
RayQueryKHR = 4472,
10151017
RayTraversalPrimitiveCullingKHR = 4478,
10161018
RayTracingKHR = 4479,
1019+
TextureSampleWeightedQCOM = 4484,
1020+
TextureBoxFilterQCOM = 4485,
1021+
TextureBlockMatchQCOM = 4486,
10171022
Float16ImageAMD = 5008,
10181023
ImageGatherBiasLodAMD = 5009,
10191024
FragmentMaskAMD = 5010,
@@ -1627,6 +1632,10 @@ enum class Op : unsigned {
16271632
OpRayQueryConfirmIntersectionKHR = 4476,
16281633
OpRayQueryProceedKHR = 4477,
16291634
OpRayQueryGetIntersectionTypeKHR = 4479,
1635+
OpImageSampleWeightedQCOM = 4480,
1636+
OpImageBoxFilterQCOM = 4481,
1637+
OpImageBlockMatchSSDQCOM = 4482,
1638+
OpImageBlockMatchSADQCOM = 4483,
16301639
OpGroupIAddNonUniformAMD = 5000,
16311640
OpGroupFAddNonUniformAMD = 5001,
16321641
OpGroupFMinNonUniformAMD = 5002,
@@ -2335,6 +2344,10 @@ inline void HasResultAndType(Op opcode, bool *hasResult, bool *hasResultType) {
23352344
case Op::OpRayQueryConfirmIntersectionKHR: *hasResult = false; *hasResultType = false; break;
23362345
case Op::OpRayQueryProceedKHR: *hasResult = true; *hasResultType = true; break;
23372346
case Op::OpRayQueryGetIntersectionTypeKHR: *hasResult = true; *hasResultType = true; break;
2347+
case Op::OpImageSampleWeightedQCOM: *hasResult = true; *hasResultType = true; break;
2348+
case Op::OpImageBoxFilterQCOM: *hasResult = true; *hasResultType = true; break;
2349+
case Op::OpImageBlockMatchSSDQCOM: *hasResult = true; *hasResultType = true; break;
2350+
case Op::OpImageBlockMatchSADQCOM: *hasResult = true; *hasResultType = true; break;
23382351
case Op::OpGroupIAddNonUniformAMD: *hasResult = true; *hasResultType = true; break;
23392352
case Op::OpGroupFAddNonUniformAMD: *hasResult = true; *hasResultType = true; break;
23402353
case Op::OpGroupFMinNonUniformAMD: *hasResult = true; *hasResultType = true; break;

include/spirv/unified1/spirv.json

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -534,6 +534,8 @@
534534
"MaxByteOffsetId": 47,
535535
"NoSignedWrap": 4469,
536536
"NoUnsignedWrap": 4470,
537+
"WeightTextureQCOM": 4487,
538+
"BlockMatchTextureQCOM": 4488,
537539
"ExplicitInterpAMD": 4999,
538540
"OverrideCoverageNV": 5248,
539541
"PassthroughNV": 5250,
@@ -994,6 +996,9 @@
994996
"RayQueryKHR": 4472,
995997
"RayTraversalPrimitiveCullingKHR": 4478,
996998
"RayTracingKHR": 4479,
999+
"TextureSampleWeightedQCOM": 4484,
1000+
"TextureBoxFilterQCOM": 4485,
1001+
"TextureBlockMatchQCOM": 4486,
9971002
"Float16ImageAMD": 5008,
9981003
"ImageGatherBiasLodAMD": 5009,
9991004
"FragmentMaskAMD": 5010,
@@ -1617,6 +1622,10 @@
16171622
"OpRayQueryConfirmIntersectionKHR": 4476,
16181623
"OpRayQueryProceedKHR": 4477,
16191624
"OpRayQueryGetIntersectionTypeKHR": 4479,
1625+
"OpImageSampleWeightedQCOM": 4480,
1626+
"OpImageBoxFilterQCOM": 4481,
1627+
"OpImageBlockMatchSSDQCOM": 4482,
1628+
"OpImageBlockMatchSADQCOM": 4483,
16201629
"OpGroupIAddNonUniformAMD": 5000,
16211630
"OpGroupFAddNonUniformAMD": 5001,
16221631
"OpGroupFMinNonUniformAMD": 5002,

include/spirv/unified1/spirv.lua

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -481,6 +481,8 @@ spv = {
481481
MaxByteOffsetId = 47,
482482
NoSignedWrap = 4469,
483483
NoUnsignedWrap = 4470,
484+
WeightTextureQCOM = 4487,
485+
BlockMatchTextureQCOM = 4488,
484486
ExplicitInterpAMD = 4999,
485487
OverrideCoverageNV = 5248,
486488
PassthroughNV = 5250,
@@ -976,6 +978,9 @@ spv = {
976978
RayQueryKHR = 4472,
977979
RayTraversalPrimitiveCullingKHR = 4478,
978980
RayTracingKHR = 4479,
981+
TextureSampleWeightedQCOM = 4484,
982+
TextureBoxFilterQCOM = 4485,
983+
TextureBlockMatchQCOM = 4486,
979984
Float16ImageAMD = 5008,
980985
ImageGatherBiasLodAMD = 5009,
981986
FragmentMaskAMD = 5010,
@@ -1578,6 +1583,10 @@ spv = {
15781583
OpRayQueryConfirmIntersectionKHR = 4476,
15791584
OpRayQueryProceedKHR = 4477,
15801585
OpRayQueryGetIntersectionTypeKHR = 4479,
1586+
OpImageSampleWeightedQCOM = 4480,
1587+
OpImageBoxFilterQCOM = 4481,
1588+
OpImageBlockMatchSSDQCOM = 4482,
1589+
OpImageBlockMatchSADQCOM = 4483,
15811590
OpGroupIAddNonUniformAMD = 5000,
15821591
OpGroupFAddNonUniformAMD = 5001,
15831592
OpGroupFMinNonUniformAMD = 5002,

include/spirv/unified1/spirv.py

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -481,6 +481,8 @@
481481
'MaxByteOffsetId' : 47,
482482
'NoSignedWrap' : 4469,
483483
'NoUnsignedWrap' : 4470,
484+
'WeightTextureQCOM' : 4487,
485+
'BlockMatchTextureQCOM' : 4488,
484486
'ExplicitInterpAMD' : 4999,
485487
'OverrideCoverageNV' : 5248,
486488
'PassthroughNV' : 5250,
@@ -976,6 +978,9 @@
976978
'RayQueryKHR' : 4472,
977979
'RayTraversalPrimitiveCullingKHR' : 4478,
978980
'RayTracingKHR' : 4479,
981+
'TextureSampleWeightedQCOM' : 4484,
982+
'TextureBoxFilterQCOM' : 4485,
983+
'TextureBlockMatchQCOM' : 4486,
979984
'Float16ImageAMD' : 5008,
980985
'ImageGatherBiasLodAMD' : 5009,
981986
'FragmentMaskAMD' : 5010,
@@ -1578,6 +1583,10 @@
15781583
'OpRayQueryConfirmIntersectionKHR' : 4476,
15791584
'OpRayQueryProceedKHR' : 4477,
15801585
'OpRayQueryGetIntersectionTypeKHR' : 4479,
1586+
'OpImageSampleWeightedQCOM' : 4480,
1587+
'OpImageBoxFilterQCOM' : 4481,
1588+
'OpImageBlockMatchSSDQCOM' : 4482,
1589+
'OpImageBlockMatchSADQCOM' : 4483,
15811590
'OpGroupIAddNonUniformAMD' : 5000,
15821591
'OpGroupFAddNonUniformAMD' : 5001,
15831592
'OpGroupFMinNonUniformAMD' : 5002,

0 commit comments

Comments
 (0)