mirror of
https://gitee.com/openharmony/third_party_spirv-headers
synced 2024-11-26 17:20:34 +00:00
Publish the headers for the clspv embedded reflection non-semantic extended instruction set (#164)
* Clspv non-semantic reflection instruction set * Version 1
This commit is contained in:
parent
76afa63974
commit
96013f32b4
73
include/spirv/unified1/NonSemanticClspvReflection.h
Normal file
73
include/spirv/unified1/NonSemanticClspvReflection.h
Normal file
@ -0,0 +1,73 @@
|
||||
// Copyright (c) 2020 The Khronos Group Inc.
|
||||
//
|
||||
// Permission is hereby granted, free of charge, to any person obtaining a
|
||||
// copy of this software and/or associated documentation files (the
|
||||
// "Materials"), to deal in the Materials without restriction, including
|
||||
// without limitation the rights to use, copy, modify, merge, publish,
|
||||
// distribute, sublicense, and/or sell copies of the Materials, and to
|
||||
// permit persons to whom the Materials are furnished to do so, subject to
|
||||
// the following conditions:
|
||||
//
|
||||
// The above copyright notice and this permission notice shall be included
|
||||
// in all copies or substantial portions of the Materials.
|
||||
//
|
||||
// MODIFICATIONS TO THIS FILE MAY MEAN IT NO LONGER ACCURATELY REFLECTS
|
||||
// KHRONOS STANDARDS. THE UNMODIFIED, NORMATIVE VERSIONS OF KHRONOS
|
||||
// SPECIFICATIONS AND HEADER INFORMATION ARE LOCATED AT
|
||||
// https://www.khronos.org/registry/
|
||||
//
|
||||
// THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||
// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||
// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
||||
// IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
|
||||
// CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
||||
// TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
||||
// MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.
|
||||
//
|
||||
|
||||
#ifndef SPIRV_UNIFIED1_NonSemanticClspvReflection_H_
|
||||
#define SPIRV_UNIFIED1_NonSemanticClspvReflection_H_
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
enum {
|
||||
NonSemanticClspvReflectionRevision = 1,
|
||||
NonSemanticClspvReflectionRevision_BitWidthPadding = 0x7fffffff
|
||||
};
|
||||
|
||||
enum NonSemanticClspvReflectionInstructions {
|
||||
NonSemanticClspvReflectionKernel = 1,
|
||||
NonSemanticClspvReflectionArgumentInfo = 2,
|
||||
NonSemanticClspvReflectionArgumentStorageBuffer = 3,
|
||||
NonSemanticClspvReflectionArgumentUniform = 4,
|
||||
NonSemanticClspvReflectionArgumentPodStorageBuffer = 5,
|
||||
NonSemanticClspvReflectionArgumentPodUniform = 6,
|
||||
NonSemanticClspvReflectionArgumentPodPushConstant = 7,
|
||||
NonSemanticClspvReflectionArgumentSampledImage = 8,
|
||||
NonSemanticClspvReflectionArgumentStorageImage = 9,
|
||||
NonSemanticClspvReflectionArgumentSampler = 10,
|
||||
NonSemanticClspvReflectionArgumentWorkgroup = 11,
|
||||
NonSemanticClspvReflectionSpecConstantWorkgroupSize = 12,
|
||||
NonSemanticClspvReflectionSpecConstantGlobalOffset = 13,
|
||||
NonSemanticClspvReflectionSpecConstantWorkDim = 14,
|
||||
NonSemanticClspvReflectionPushConstantGlobalOffset = 15,
|
||||
NonSemanticClspvReflectionPushConstantEnqueuedLocalSize = 16,
|
||||
NonSemanticClspvReflectionPushConstantGlobalSize = 17,
|
||||
NonSemanticClspvReflectionPushConstantRegionOffset = 18,
|
||||
NonSemanticClspvReflectionPushConstantNumWorkgroups = 19,
|
||||
NonSemanticClspvReflectionPushConstantRegionGroupOffset = 20,
|
||||
NonSemanticClspvReflectionConstantDataStorageBuffer = 21,
|
||||
NonSemanticClspvReflectionConstantDataUniform = 22,
|
||||
NonSemanticClspvReflectionLiteralSampler = 23,
|
||||
NonSemanticClspvReflectionPropertyRequiredWorkgroupSize = 24,
|
||||
NonSemanticClspvReflectionInstructionsMax = 0x7fffffff
|
||||
};
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif // SPIRV_UNIFIED1_NonSemanticClspvReflection_H_
|
@ -0,0 +1,237 @@
|
||||
{
|
||||
"revision" : 1,
|
||||
"instructions" : [
|
||||
{
|
||||
"opname" : "Kernel",
|
||||
"opcode" : 1,
|
||||
"operands" : [
|
||||
{ "kind" : "IdRef", "name" : "Kernel" },
|
||||
{ "kind" : "IdRef", "name" : "Name" }
|
||||
]
|
||||
},
|
||||
{
|
||||
"opname" : "ArgumentInfo",
|
||||
"opcode" : 2,
|
||||
"operands" : [
|
||||
{ "kind" : "IdRef", "name" : "Name" },
|
||||
{ "kind" : "IdRef", "name" : "Type Name", "quantifier" : "?" },
|
||||
{ "kind" : "IdRef", "name" : "Address Qualifier", "quantifier" : "?" },
|
||||
{ "kind" : "IdRef", "name" : "Access Qualifier", "quantifier" : "?" },
|
||||
{ "kind" : "IdRef", "name" : "Type Qualifier", "quantifier" : "?" }
|
||||
]
|
||||
},
|
||||
{
|
||||
"opname" : "ArgumentStorageBuffer",
|
||||
"opcode" : 3,
|
||||
"operands" : [
|
||||
{ "kind" : "IdRef", "name" : "Decl" },
|
||||
{ "kind" : "IdRef", "name" : "Ordinal" },
|
||||
{ "kind" : "IdRef", "name" : "DescriptorSet" },
|
||||
{ "kind" : "IdRef", "name" : "Binding" },
|
||||
{ "kind" : "IdRef", "name" : "ArgInfo", "quantifier" : "?" }
|
||||
]
|
||||
},
|
||||
{
|
||||
"opname" : "ArgumentUniform",
|
||||
"opcode" : 4,
|
||||
"operands" : [
|
||||
{ "kind" : "IdRef", "name" : "Decl" },
|
||||
{ "kind" : "IdRef", "name" : "Ordinal" },
|
||||
{ "kind" : "IdRef", "name" : "DescriptorSet" },
|
||||
{ "kind" : "IdRef", "name" : "Binding" },
|
||||
{ "kind" : "IdRef", "name" : "ArgInfo", "quantifier" : "?" }
|
||||
]
|
||||
},
|
||||
{
|
||||
"opname" : "ArgumentPodStorageBuffer",
|
||||
"opcode" : 5,
|
||||
"operands" : [
|
||||
{ "kind" : "IdRef", "name" : "Decl" },
|
||||
{ "kind" : "IdRef", "name" : "Ordinal" },
|
||||
{ "kind" : "IdRef", "name" : "DescriptorSet" },
|
||||
{ "kind" : "IdRef", "name" : "Binding" },
|
||||
{ "kind" : "IdRef", "name" : "Offset" },
|
||||
{ "kind" : "IdRef", "name" : "Size" },
|
||||
{ "kind" : "IdRef", "name" : "ArgInfo", "quantifier" : "?" }
|
||||
]
|
||||
},
|
||||
{
|
||||
"opname" : "ArgumentPodUniform",
|
||||
"opcode" : 6,
|
||||
"operands" : [
|
||||
{ "kind" : "IdRef", "name" : "Decl" },
|
||||
{ "kind" : "IdRef", "name" : "Ordinal" },
|
||||
{ "kind" : "IdRef", "name" : "DescriptorSet" },
|
||||
{ "kind" : "IdRef", "name" : "Binding" },
|
||||
{ "kind" : "IdRef", "name" : "Offset" },
|
||||
{ "kind" : "IdRef", "name" : "Size" },
|
||||
{ "kind" : "IdRef", "name" : "ArgInfo", "quantifier" : "?" }
|
||||
]
|
||||
},
|
||||
{
|
||||
"opname" : "ArgumentPodPushConstant",
|
||||
"opcode" : 7,
|
||||
"operands" : [
|
||||
{ "kind" : "IdRef", "name" : "Decl" },
|
||||
{ "kind" : "IdRef", "name" : "Ordinal" },
|
||||
{ "kind" : "IdRef", "name" : "Offset" },
|
||||
{ "kind" : "IdRef", "name" : "Size" },
|
||||
{ "kind" : "IdRef", "name" : "ArgInfo", "quantifier" : "?" }
|
||||
]
|
||||
},
|
||||
{
|
||||
"opname" : "ArgumentSampledImage",
|
||||
"opcode" : 8,
|
||||
"operands" : [
|
||||
{ "kind" : "IdRef", "name" : "Decl" },
|
||||
{ "kind" : "IdRef", "name" : "Ordinal" },
|
||||
{ "kind" : "IdRef", "name" : "DescriptorSet" },
|
||||
{ "kind" : "IdRef", "name" : "Binding" },
|
||||
{ "kind" : "IdRef", "name" : "ArgInfo", "quantifier" : "?" }
|
||||
]
|
||||
},
|
||||
{
|
||||
"opname" : "ArgumentStorageImage",
|
||||
"opcode" : 9,
|
||||
"operands" : [
|
||||
{ "kind" : "IdRef", "name" : "Decl" },
|
||||
{ "kind" : "IdRef", "name" : "Ordinal" },
|
||||
{ "kind" : "IdRef", "name" : "DescriptorSet" },
|
||||
{ "kind" : "IdRef", "name" : "Binding" },
|
||||
{ "kind" : "IdRef", "name" : "ArgInfo", "quantifier" : "?" }
|
||||
]
|
||||
},
|
||||
{
|
||||
"opname" : "ArgumentSampler",
|
||||
"opcode" : 10,
|
||||
"operands" : [
|
||||
{ "kind" : "IdRef", "name" : "Decl" },
|
||||
{ "kind" : "IdRef", "name" : "Ordinal" },
|
||||
{ "kind" : "IdRef", "name" : "DescriptorSet" },
|
||||
{ "kind" : "IdRef", "name" : "Binding" },
|
||||
{ "kind" : "IdRef", "name" : "ArgInfo", "quantifier" : "?" }
|
||||
]
|
||||
},
|
||||
{
|
||||
"opname" : "ArgumentWorkgroup",
|
||||
"opcode" : 11,
|
||||
"operands" : [
|
||||
{ "kind" : "IdRef", "name" : "Decl" },
|
||||
{ "kind" : "IdRef", "name" : "Ordinal" },
|
||||
{ "kind" : "IdRef", "name" : "SpecId" },
|
||||
{ "kind" : "IdRef", "name" : "ElemSize" },
|
||||
{ "kind" : "IdRef", "name" : "ArgInfo", "quantifier" : "?" }
|
||||
]
|
||||
},
|
||||
{
|
||||
"opname" : "SpecConstantWorkgroupSize",
|
||||
"opcode" : 12,
|
||||
"operands" : [
|
||||
{ "kind" : "IdRef", "name" : "X" },
|
||||
{ "kind" : "IdRef", "name" : "Y" },
|
||||
{ "kind" : "IdRef", "name" : "Z" }
|
||||
]
|
||||
},
|
||||
{
|
||||
"opname" : "SpecConstantGlobalOffset",
|
||||
"opcode" : 13,
|
||||
"operands" : [
|
||||
{ "kind" : "IdRef", "name" : "X" },
|
||||
{ "kind" : "IdRef", "name" : "Y" },
|
||||
{ "kind" : "IdRef", "name" : "Z" }
|
||||
]
|
||||
},
|
||||
{
|
||||
"opname" : "SpecConstantWorkDim",
|
||||
"opcode" : 14,
|
||||
"operands" : [
|
||||
{ "kind" : "IdRef", "name" : "Dim" }
|
||||
]
|
||||
},
|
||||
{
|
||||
"opname" : "PushConstantGlobalOffset",
|
||||
"opcode" : 15,
|
||||
"operands" : [
|
||||
{ "kind" : "IdRef", "name" : "Offset" },
|
||||
{ "kind" : "IdRef", "name" : "Size" }
|
||||
]
|
||||
},
|
||||
{
|
||||
"opname" : "PushConstantEnqueuedLocalSize",
|
||||
"opcode" : 16,
|
||||
"operands" : [
|
||||
{ "kind" : "IdRef", "name" : "Offset" },
|
||||
{ "kind" : "IdRef", "name" : "Size" }
|
||||
]
|
||||
},
|
||||
{
|
||||
"opname" : "PushConstantGlobalSize",
|
||||
"opcode" : 17,
|
||||
"operands" : [
|
||||
{ "kind" : "IdRef", "name" : "Offset" },
|
||||
{ "kind" : "IdRef", "name" : "Size" }
|
||||
]
|
||||
},
|
||||
{
|
||||
"opname" : "PushConstantRegionOffset",
|
||||
"opcode" : 18,
|
||||
"operands" : [
|
||||
{ "kind" : "IdRef", "name" : "Offset" },
|
||||
{ "kind" : "IdRef", "name" : "Size" }
|
||||
]
|
||||
},
|
||||
{
|
||||
"opname" : "PushConstantNumWorkgroups",
|
||||
"opcode" : 19,
|
||||
"operands" : [
|
||||
{ "kind" : "IdRef", "name" : "Offset" },
|
||||
{ "kind" : "IdRef", "name" : "Size" }
|
||||
]
|
||||
},
|
||||
{
|
||||
"opname" : "PushConstantRegionGroupOffset",
|
||||
"opcode" : 20,
|
||||
"operands" : [
|
||||
{ "kind" : "IdRef", "name" : "Offset" },
|
||||
{ "kind" : "IdRef", "name" : "Size" }
|
||||
]
|
||||
},
|
||||
{
|
||||
"opname" : "ConstantDataStorageBuffer",
|
||||
"opcode" : 21,
|
||||
"operands" : [
|
||||
{ "kind" : "IdRef", "name" : "DescriptorSet" },
|
||||
{ "kind" : "IdRef", "name" : "Binding" },
|
||||
{ "kind" : "IdRef", "name" : "Data" }
|
||||
]
|
||||
},
|
||||
{
|
||||
"opname" : "ConstantDataUniform",
|
||||
"opcode" : 22,
|
||||
"operands" : [
|
||||
{ "kind" : "IdRef", "name" : "DescriptorSet" },
|
||||
{ "kind" : "IdRef", "name" : "Binding" },
|
||||
{ "kind" : "IdRef", "name" : "Data" }
|
||||
]
|
||||
},
|
||||
{
|
||||
"opname" : "LiteralSampler",
|
||||
"opcode" : 23,
|
||||
"operands" : [
|
||||
{ "kind" : "IdRef", "name" : "DescriptorSet" },
|
||||
{ "kind" : "IdRef", "name" : "Binding" },
|
||||
{ "kind" : "IdRef", "name" : "Mask" }
|
||||
]
|
||||
},
|
||||
{
|
||||
"opname" : "PropertyRequiredWorkgroupSize",
|
||||
"opcode" : 24,
|
||||
"operands" : [
|
||||
{ "kind" : "IdRef", "name" : "Kernel" },
|
||||
{ "kind" : "IdRef", "name" : "X" },
|
||||
{ "kind" : "IdRef", "name" : "Y" },
|
||||
{ "kind" : "IdRef", "name" : "Z" }
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
@ -25,3 +25,4 @@ mk_extinst('AMD_shader_ballot', 'extinst.spv-amd-shader-ballot.grammar.json')
|
||||
mk_extinst('AMD_shader_explicit_vertex_parameter', 'extinst.spv-amd-shader-explicit-vertex-parameter.grammar.json')
|
||||
mk_extinst('AMD_shader_trinary_minmax', 'extinst.spv-amd-shader-trinary-minmax.grammar.json')
|
||||
mk_extinst('NonSemanticDebugPrintf', 'extinst.nonsemantic.debugprintf.grammar.json')
|
||||
mk_extinst('NonSemanticClspvReflection', 'extinst.nonsemantic.clspvreflection.grammar.json')
|
||||
|
Loading…
Reference in New Issue
Block a user