tree-sitter-glsl-spec 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +106 -0
- package/binding.gyp +21 -0
- package/bindings/node/binding.cc +20 -0
- package/bindings/node/binding_test.js +11 -0
- package/bindings/node/index.d.ts +91 -0
- package/bindings/node/index.js +39 -0
- package/grammar.js +2932 -0
- package/package.json +71 -0
- package/queries/constructor-heuristics.scm +7 -0
- package/queries/highlights.in +112 -0
- package/queries/highlights.scm +486 -0
- package/queries/injections.scm +5 -0
- package/queries/locals.scm +34 -0
- package/queries/tags.scm +50 -0
- package/queries/version-tags.scm +150 -0
- package/src/grammar.json +7839 -0
- package/src/node-types.json +5807 -0
- package/src/parser.c +237532 -0
- package/src/tree_sitter/alloc.h +54 -0
- package/src/tree_sitter/array.h +330 -0
- package/src/tree_sitter/parser.h +286 -0
- package/src/tree_sitter/runtime.h +112 -0
|
@@ -0,0 +1,486 @@
|
|
|
1
|
+
; This file is generated by generate_highlights.js.
|
|
2
|
+
; Edit queries/highlights.in or builtin.js, then regenerate.
|
|
3
|
+
|
|
4
|
+
"break" @keyword
|
|
5
|
+
"case" @keyword
|
|
6
|
+
"const" @keyword
|
|
7
|
+
"continue" @keyword
|
|
8
|
+
"default" @keyword
|
|
9
|
+
"discard" @keyword
|
|
10
|
+
"do" @keyword
|
|
11
|
+
"else" @keyword
|
|
12
|
+
"for" @keyword
|
|
13
|
+
"if" @keyword
|
|
14
|
+
"return" @keyword
|
|
15
|
+
"struct" @keyword
|
|
16
|
+
"switch" @keyword
|
|
17
|
+
"while" @keyword
|
|
18
|
+
|
|
19
|
+
(preproc_call
|
|
20
|
+
directive: (preproc_directive) @keyword)
|
|
21
|
+
|
|
22
|
+
"=" @operator
|
|
23
|
+
(assignment_expression
|
|
24
|
+
operator: _ @operator)
|
|
25
|
+
|
|
26
|
+
(binary_expression
|
|
27
|
+
operator: _ @operator)
|
|
28
|
+
|
|
29
|
+
(unary_expression
|
|
30
|
+
operator: _ @operator)
|
|
31
|
+
|
|
32
|
+
(update_expression
|
|
33
|
+
operator: _ @operator)
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
"." @delimiter
|
|
37
|
+
"," @delimiter
|
|
38
|
+
";" @delimiter
|
|
39
|
+
"(" @delimiter
|
|
40
|
+
")" @delimiter
|
|
41
|
+
"[" @delimiter
|
|
42
|
+
"]" @delimiter
|
|
43
|
+
"{" @delimiter
|
|
44
|
+
"}" @delimiter
|
|
45
|
+
|
|
46
|
+
[
|
|
47
|
+
(number_literal)
|
|
48
|
+
] @number
|
|
49
|
+
|
|
50
|
+
(bool_literal) @boolean
|
|
51
|
+
|
|
52
|
+
(comment) @comment
|
|
53
|
+
|
|
54
|
+
(invariant_qualifier) @keyword
|
|
55
|
+
(layout_qualifier) @keyword
|
|
56
|
+
(precise_qualifier) @keyword
|
|
57
|
+
|
|
58
|
+
((storage_qualifier) @keyword
|
|
59
|
+
(#match? @keyword "^subroutine(\\(|$)"))
|
|
60
|
+
|
|
61
|
+
(function_declarator
|
|
62
|
+
name: (identifier) @function)
|
|
63
|
+
|
|
64
|
+
(function_call
|
|
65
|
+
function: (identifier) @function)
|
|
66
|
+
|
|
67
|
+
(function_call
|
|
68
|
+
function: (field_expression
|
|
69
|
+
field: (field_identifier) @function))
|
|
70
|
+
|
|
71
|
+
(preproc_function_def
|
|
72
|
+
name: (identifier) @function.special)
|
|
73
|
+
|
|
74
|
+
(field_identifier) @property
|
|
75
|
+
|
|
76
|
+
(type_specifier
|
|
77
|
+
(type_identifier) @type)
|
|
78
|
+
|
|
79
|
+
[
|
|
80
|
+
"atomic_uint" "bool" "bvec2" "bvec3" "bvec4" "float" "iimage2D" "iimage2DArray"
|
|
81
|
+
"iimage3D" "iimageBuffer" "iimageCube" "iimageCubeArray" "image2D" "image2DArray"
|
|
82
|
+
"image3D" "imageBuffer" "imageCube" "imageCubeArray" "int" "isampler2D"
|
|
83
|
+
"isampler2DArray" "isampler2DMS" "isampler2DMSArray" "isampler3D" "isamplerBuffer"
|
|
84
|
+
"isamplerCube" "isamplerCubeArray" "ivec2" "ivec3" "ivec4" "mat2" "mat2x2" "mat2x3"
|
|
85
|
+
"mat2x4" "mat3" "mat3x2" "mat3x3" "mat3x4" "mat4" "mat4x2" "mat4x3" "mat4x4"
|
|
86
|
+
"sampler2D" "sampler2DArray" "sampler2DArrayShadow" "sampler2DMS" "sampler2DMSArray"
|
|
87
|
+
"sampler2DShadow" "sampler3D" "samplerBuffer" "samplerCube" "samplerCubeArray"
|
|
88
|
+
"samplerCubeArrayShadow" "samplerCubeShadow" "uimage2D" "uimage2DArray" "uimage3D"
|
|
89
|
+
"uimageBuffer" "uimageCube" "uimageCubeArray" "uint" "usampler2D" "usampler2DArray"
|
|
90
|
+
"usampler2DMS" "usampler2DMSArray" "usampler3D" "usamplerBuffer" "usamplerCube"
|
|
91
|
+
"usamplerCubeArray" "uvec2" "uvec3" "uvec4" "vec2" "vec3" "vec4" "void" "dmat2"
|
|
92
|
+
"dmat2x2" "dmat2x3" "dmat2x4" "dmat3" "dmat3x2" "dmat3x3" "dmat3x4" "dmat4" "dmat4x2"
|
|
93
|
+
"dmat4x3" "dmat4x4" "double" "dvec2" "dvec3" "dvec4" "iimage1D" "iimage1DArray"
|
|
94
|
+
"iimage2DMS" "iimage2DMSArray" "iimage2DRect" "image1D" "image1DArray" "image2DMS"
|
|
95
|
+
"image2DMSArray" "image2DRect" "isampler1D" "isampler1DArray" "isampler2DRect"
|
|
96
|
+
"itexture2DRect" "sampler1D" "sampler1DArray" "sampler1DArrayShadow" "sampler1DShadow"
|
|
97
|
+
"sampler2DRect" "sampler2DRectShadow" "texture2DRect" "uimage1D" "uimage1DArray"
|
|
98
|
+
"uimage2DMS" "uimage2DMSArray" "uimage2DRect" "usampler1D" "usampler1DArray"
|
|
99
|
+
"usampler2DRect" "utexture2DRect" "isubpassInput" "isubpassInputMS" "itexture1D"
|
|
100
|
+
"itexture1DArray" "itexture2D" "itexture2DArray" "itexture2DMS" "itexture2DMSArray"
|
|
101
|
+
"itexture3D" "itextureBuffer" "itextureCube" "itextureCubeArray" "sampler"
|
|
102
|
+
"samplerShadow" "subpassInput" "subpassInputMS" "texture1D" "texture1DArray"
|
|
103
|
+
"texture2D" "texture2DArray" "texture2DMS" "texture2DMSArray" "texture3D"
|
|
104
|
+
"textureBuffer" "textureCube" "textureCubeArray" "usubpassInput" "usubpassInputMS"
|
|
105
|
+
"utexture1D" "utexture1DArray" "utexture2D" "utexture2DArray" "utexture2DMS"
|
|
106
|
+
"utexture2DMSArray" "utexture3D" "utextureBuffer" "utextureCube" "utextureCubeArray"
|
|
107
|
+
"tensorARM" "bf16vec2" "bf16vec3" "bf16vec4" "bfloat16_t" "fe4m3vec2" "fe4m3vec3"
|
|
108
|
+
"fe4m3vec4" "floate4m3_t" "fe5m2vec2" "fe5m2vec3" "fe5m2vec4" "floate5m2_t" "f16mat2"
|
|
109
|
+
"f16mat2x2" "f16mat2x3" "f16mat2x4" "f16mat3" "f16mat3x2" "f16mat3x3" "f16mat3x4"
|
|
110
|
+
"f16mat4" "f16mat4x2" "f16mat4x3" "f16mat4x4" "f16vec2" "f16vec3" "f16vec4" "f32mat2"
|
|
111
|
+
"f32mat2x2" "f32mat2x3" "f32mat2x4" "f32mat3" "f32mat3x2" "f32mat3x3" "f32mat3x4"
|
|
112
|
+
"f32mat4" "f32mat4x2" "f32mat4x3" "f32mat4x4" "f32vec2" "f32vec3" "f32vec4" "f64mat2"
|
|
113
|
+
"f64mat2x2" "f64mat2x3" "f64mat2x4" "f64mat3" "f64mat3x2" "f64mat3x3" "f64mat3x4"
|
|
114
|
+
"f64mat4" "f64mat4x2" "f64mat4x3" "f64mat4x4" "f64vec2" "f64vec3" "f64vec4"
|
|
115
|
+
"float16_t" "float32_t" "float64_t" "i16vec2" "i16vec3" "i16vec4" "i32vec2" "i32vec3"
|
|
116
|
+
"i32vec4" "i64vec2" "i64vec3" "i64vec4" "i8vec2" "i8vec3" "i8vec4" "int16_t" "int32_t"
|
|
117
|
+
"int64_t" "int8_t" "u16vec2" "u16vec3" "u16vec4" "u32vec2" "u32vec3" "u32vec4"
|
|
118
|
+
"u64vec2" "u64vec3" "u64vec4" "u8vec2" "u8vec3" "u8vec4" "uint16_t" "uint32_t"
|
|
119
|
+
"uint64_t" "uint8_t" "accelerationStructureEXT" "rayQueryEXT" "hitObjectEXT"
|
|
120
|
+
"attachmentEXT" "iattachmentEXT" "uattachmentEXT" "coopmat" "coopmatNV" "fcoopmatNV"
|
|
121
|
+
"icoopmatNV" "ucoopmatNV" "tensorLayoutNV" "tensorViewNV" "coopvecNV"
|
|
122
|
+
"accelerationStructureNV" "hitObjectNV"
|
|
123
|
+
] @type.builtin
|
|
124
|
+
|
|
125
|
+
[
|
|
126
|
+
"attribute" "buffer" "centroid" "coherent" "in" "inout" "out" "patch" "readonly"
|
|
127
|
+
"restrict" "sample" "shared" "uniform" "varying" "volatile" "writeonly" "highp" "lowp"
|
|
128
|
+
"mediump" "flat" "noperspective" "smooth" "nonuniformEXT" "subgroupuniformEXT"
|
|
129
|
+
"pervertexEXT" "perprimitiveEXT" "taskPayloadSharedEXT" "nontemporal"
|
|
130
|
+
"callableDataEXT" "callableDataInEXT" "hitAttributeEXT" "rayPayloadEXT"
|
|
131
|
+
"rayPayloadInEXT" "shaderRecordEXT" "shadercallcoherent" "hitObjectAttributeEXT"
|
|
132
|
+
"tileImageEXT" "pervertexNV" "perprimitiveNV" "perviewNV" "taskNV" "callableDataInNV"
|
|
133
|
+
"callableDataNV" "hitAttributeNV" "rayPayloadInNV" "rayPayloadNV" "shaderRecordNV"
|
|
134
|
+
"hitObjectAttributeNV"
|
|
135
|
+
] @type.qualifier
|
|
136
|
+
|
|
137
|
+
(layout_argument
|
|
138
|
+
"shared" @attribute)
|
|
139
|
+
|
|
140
|
+
((layout_argument
|
|
141
|
+
(identifier) @attribute)
|
|
142
|
+
(#any-of? @attribute
|
|
143
|
+
"lines" "local_size_x" "local_size_x_id" "local_size_y" "local_size_y_id"
|
|
144
|
+
"local_size_z" "local_size_z_id" "max_primitives" "max_vertices" "points" "triangles"
|
|
145
|
+
"branch" "dependency_infinite" "dependency_length" "dont_flatten" "dont_unroll"
|
|
146
|
+
"flatten" "loop" "unroll" "iteration_multiple" "max_iterations" "min_iterations"
|
|
147
|
+
"partial_count" "peel_count" "maximally_reconverges" "scalar"
|
|
148
|
+
"subgroup_uniform_control_flow" "constant_id" "input_attachment_index" "push_constant"
|
|
149
|
+
"set" "buffer_reference" "buffer_reference_align" "descriptor_heap"
|
|
150
|
+
"descriptor_stride" "primitive_culling" "hitobjectshaderrecordext"
|
|
151
|
+
"non_coherent_color_attachment_readEXT" "non_coherent_depth_attachment_readEXT"
|
|
152
|
+
"non_coherent_stencil_attachment_readEXT" "derivative_group_linearNV"
|
|
153
|
+
"derivative_group_quadsNV" "bank" "member_offset" "hitobjectshaderrecordnv")
|
|
154
|
+
)
|
|
155
|
+
|
|
156
|
+
((identifier) @constant
|
|
157
|
+
(#match? @constant "^[A-Z][A-Z\\d_]*$"))
|
|
158
|
+
|
|
159
|
+
; Built-in constant names from builtins.adoc.
|
|
160
|
+
((identifier) @constant.builtin
|
|
161
|
+
(#any-of? @constant.builtin
|
|
162
|
+
"gl_ClusterIDNoneNV" "gl_ComponentTypeFloat16NV" "gl_ComponentTypeFloat32NV"
|
|
163
|
+
"gl_ComponentTypeFloat64NV" "gl_ComponentTypeFloatE4M3NV"
|
|
164
|
+
"gl_ComponentTypeFloatE5M2NV" "gl_ComponentTypeSignedInt16NV"
|
|
165
|
+
"gl_ComponentTypeSignedInt32NV" "gl_ComponentTypeSignedInt64NV"
|
|
166
|
+
"gl_ComponentTypeSignedInt8NV" "gl_ComponentTypeSignedInt8PackedNV"
|
|
167
|
+
"gl_ComponentTypeUnsignedInt16NV" "gl_ComponentTypeUnsignedInt32NV"
|
|
168
|
+
"gl_ComponentTypeUnsignedInt64NV" "gl_ComponentTypeUnsignedInt8NV"
|
|
169
|
+
"gl_ComponentTypeUnsignedInt8PackedNV" "gl_CooperativeMatrixClampModeClampToEdgeNV"
|
|
170
|
+
"gl_CooperativeMatrixClampModeConstantNV"
|
|
171
|
+
"gl_CooperativeMatrixClampModeMirrorRepeatNV" "gl_CooperativeMatrixClampModeRepeatNV"
|
|
172
|
+
"gl_CooperativeMatrixClampModeUndefinedNV"
|
|
173
|
+
"gl_CooperativeMatrixLayoutColumnBlockedInterleavedARM"
|
|
174
|
+
"gl_CooperativeMatrixLayoutColumnMajor"
|
|
175
|
+
"gl_CooperativeMatrixLayoutRowBlockedInterleavedARM"
|
|
176
|
+
"gl_CooperativeMatrixLayoutRowMajor" "gl_CooperativeMatrixReduce2x2NV"
|
|
177
|
+
"gl_CooperativeMatrixReduceColumnNV" "gl_CooperativeMatrixReduceRowAndColumnNV"
|
|
178
|
+
"gl_CooperativeMatrixReduceRowNV" "gl_CooperativeVectorMatrixLayoutColumnMajorNV"
|
|
179
|
+
"gl_CooperativeVectorMatrixLayoutInferencingOptimalNV"
|
|
180
|
+
"gl_CooperativeVectorMatrixLayoutRowMajorNV"
|
|
181
|
+
"gl_CooperativeVectorMatrixLayoutTrainingOptimalNV" "gl_HitKindBackFacingTriangleEXT"
|
|
182
|
+
"gl_HitKindFrontFacingTriangleEXT" "gl_MatrixOperandsSaturatingAccumulation"
|
|
183
|
+
"gl_MatrixUseA" "gl_MatrixUseAccumulator" "gl_MatrixUseB"
|
|
184
|
+
"gl_MaxAtomicCounterBindings" "gl_MaxAtomicCounterBufferSize" "gl_MaxClipDistances"
|
|
185
|
+
"gl_MaxClipPlanes" "gl_MaxCombinedAtomicCounterBuffers" "gl_MaxCombinedAtomicCounters"
|
|
186
|
+
"gl_MaxCombinedClipAndCullDistances" "gl_MaxCombinedImageUniforms"
|
|
187
|
+
"gl_MaxCombinedImageUnitsAndFragmentOutputs" "gl_MaxCombinedShaderOutputResources"
|
|
188
|
+
"gl_MaxCombinedTextureImageUnits" "gl_MaxComputeAtomicCounterBuffers"
|
|
189
|
+
"gl_MaxComputeAtomicCounters" "gl_MaxComputeImageUniforms"
|
|
190
|
+
"gl_MaxComputeTextureImageUnits" "gl_MaxComputeUniformComponents"
|
|
191
|
+
"gl_MaxComputeWorkGroupCount" "gl_MaxComputeWorkGroupSize" "gl_MaxCullDistances"
|
|
192
|
+
"gl_MaxDrawBuffers" "gl_MaxFragmentAtomicCounterBuffers"
|
|
193
|
+
"gl_MaxFragmentAtomicCounters" "gl_MaxFragmentImageUniforms"
|
|
194
|
+
"gl_MaxFragmentInputComponents" "gl_MaxFragmentInputVectors"
|
|
195
|
+
"gl_MaxFragmentUniformComponents" "gl_MaxFragmentUniformVectors"
|
|
196
|
+
"gl_MaxGeometryAtomicCounterBuffers" "gl_MaxGeometryAtomicCounters"
|
|
197
|
+
"gl_MaxGeometryImageUniforms" "gl_MaxGeometryInputComponents"
|
|
198
|
+
"gl_MaxGeometryOutputComponents" "gl_MaxGeometryOutputVertices"
|
|
199
|
+
"gl_MaxGeometryTextureImageUnits" "gl_MaxGeometryTotalOutputComponents"
|
|
200
|
+
"gl_MaxGeometryUniformComponents" "gl_MaxGeometryVaryingComponents"
|
|
201
|
+
"gl_MaxImageSamples" "gl_MaxImageUnits" "gl_MaxInputAttachments" "gl_MaxLights"
|
|
202
|
+
"gl_MaxMeshViewCountNV" "gl_MaxPatchVertices" "gl_MaxProgramTexelOffset"
|
|
203
|
+
"gl_MaxSamples" "gl_MaxTessControlAtomicCounterBuffers"
|
|
204
|
+
"gl_MaxTessControlAtomicCounters" "gl_MaxTessControlImageUniforms"
|
|
205
|
+
"gl_MaxTessControlInputComponents" "gl_MaxTessControlOutputComponents"
|
|
206
|
+
"gl_MaxTessControlTextureImageUnits" "gl_MaxTessControlTotalOutputComponents"
|
|
207
|
+
"gl_MaxTessControlUniformComponents" "gl_MaxTessEvaluationAtomicCounterBuffers"
|
|
208
|
+
"gl_MaxTessEvaluationAtomicCounters" "gl_MaxTessEvaluationImageUniforms"
|
|
209
|
+
"gl_MaxTessEvaluationInputComponents" "gl_MaxTessEvaluationOutputComponents"
|
|
210
|
+
"gl_MaxTessEvaluationTextureImageUnits" "gl_MaxTessEvaluationUniformComponents"
|
|
211
|
+
"gl_MaxTessGenLevel" "gl_MaxTessPatchComponents" "gl_MaxTextureCoords"
|
|
212
|
+
"gl_MaxTextureImageUnits" "gl_MaxTextureUnits" "gl_MaxTransformFeedbackBuffers"
|
|
213
|
+
"gl_MaxTransformFeedbackInterleavedComponents" "gl_MaxVaryingComponents"
|
|
214
|
+
"gl_MaxVaryingFloats" "gl_MaxVaryingVectors" "gl_MaxVertexAtomicCounterBuffers"
|
|
215
|
+
"gl_MaxVertexAtomicCounters" "gl_MaxVertexAttribs" "gl_MaxVertexImageUniforms"
|
|
216
|
+
"gl_MaxVertexOutputComponents" "gl_MaxVertexOutputVectors"
|
|
217
|
+
"gl_MaxVertexTextureImageUnits" "gl_MaxVertexUniformComponents"
|
|
218
|
+
"gl_MaxVertexUniformVectors" "gl_MaxViewports" "gl_MinProgramTexelOffset"
|
|
219
|
+
"gl_RayFlagsCullBackFacingTrianglesEXT" "gl_RayFlagsCullBackFacingTrianglesNV"
|
|
220
|
+
"gl_RayFlagsCullFrontFacingTrianglesEXT" "gl_RayFlagsCullFrontFacingTrianglesNV"
|
|
221
|
+
"gl_RayFlagsCullNoOpaqueEXT" "gl_RayFlagsCullNoOpaqueNV" "gl_RayFlagsCullOpaqueEXT"
|
|
222
|
+
"gl_RayFlagsCullOpaqueNV" "gl_RayFlagsForceOpacityMicromap2StateEXT"
|
|
223
|
+
"gl_RayFlagsNoneEXT" "gl_RayFlagsNoneNV" "gl_RayFlagsNoOpaqueEXT"
|
|
224
|
+
"gl_RayFlagsNoOpaqueNV" "gl_RayFlagsOpaqueEXT" "gl_RayFlagsOpaqueNV"
|
|
225
|
+
"gl_RayFlagsSkipAABBEXT" "gl_RayFlagsSkipBuiltinPrimitivesNV"
|
|
226
|
+
"gl_RayFlagsSkipClosestHitShaderEXT" "gl_RayFlagsSkipClosestHitShaderNV"
|
|
227
|
+
"gl_RayFlagsSkipTrianglesEXT" "gl_RayFlagsTerminateOnFirstHitEXT"
|
|
228
|
+
"gl_RayFlagsTerminateOnFirstHitNV" "gl_RayQueryCandidateIntersectionAABBEXT"
|
|
229
|
+
"gl_RayQueryCandidateIntersectionTriangleEXT"
|
|
230
|
+
"gl_RayQueryCommittedIntersectionGeneratedEXT"
|
|
231
|
+
"gl_RayQueryCommittedIntersectionNoneEXT"
|
|
232
|
+
"gl_RayQueryCommittedIntersectionTriangleEXT" "gl_ScopeDevice" "gl_ScopeInvocation"
|
|
233
|
+
"gl_ScopeQueueFamily" "gl_ScopeShaderCallEXT" "gl_ScopeSubgroup" "gl_ScopeWorkgroup"
|
|
234
|
+
"gl_SemanticsAcquire" "gl_SemanticsAcquireRelease" "gl_SemanticsMakeAvailable"
|
|
235
|
+
"gl_SemanticsMakeVisible" "gl_SemanticsRelaxed" "gl_SemanticsRelease"
|
|
236
|
+
"gl_SemanticsVolatile" "gl_ShadingRateFlag2HorizontalPixelsEXT"
|
|
237
|
+
"gl_ShadingRateFlag2VerticalPixelsEXT" "gl_ShadingRateFlag4HorizontalPixelsEXT"
|
|
238
|
+
"gl_ShadingRateFlag4VerticalPixelsEXT" "gl_StorageSemanticsBuffer"
|
|
239
|
+
"gl_StorageSemanticsImage" "gl_StorageSemanticsNone" "gl_StorageSemanticsOutput"
|
|
240
|
+
"gl_StorageSemanticsShared" "gl_TensorOperandsNonTemporalARM"
|
|
241
|
+
"gl_TensorOperandsOutOfBoundsValueARM" "gl_WorkGroupSize"))
|
|
242
|
+
|
|
243
|
+
; Built-in variable names from builtins.adoc.
|
|
244
|
+
((identifier) @variable.builtin
|
|
245
|
+
(#any-of? @variable.builtin
|
|
246
|
+
"gl_BackColor" "gl_BackLightModelProduct" "gl_BackLightProduct" "gl_BackMaterial"
|
|
247
|
+
"gl_BackSecondaryColor" "gl_BaryCoordEXT" "gl_BaryCoordNoPerspAMD"
|
|
248
|
+
"gl_BaryCoordNoPerspCentroidAMD" "gl_BaryCoordNoPerspEXT" "gl_BaryCoordNoPerspNV"
|
|
249
|
+
"gl_BaryCoordNoPerspSampleAMD" "gl_BaryCoordNV" "gl_BaryCoordPullModelAMD"
|
|
250
|
+
"gl_BaryCoordSmoothAMD" "gl_BaryCoordSmoothCentroidAMD" "gl_BaryCoordSmoothSampleAMD"
|
|
251
|
+
"gl_BaseInstance" "gl_BaseVertex" "gl_BoundingBox" "gl_ClipDistance"
|
|
252
|
+
"gl_ClipDistancePerViewEXT" "gl_ClipDistancePerViewNV" "gl_ClipPlane" "gl_ClipVertex"
|
|
253
|
+
"gl_ClusterIDHUAWEI" "gl_ClusterIDNV" "gl_Color" "gl_CoreCountARM" "gl_CoreIDARM"
|
|
254
|
+
"gl_CoreMaxIDARM" "gl_CullDistance" "gl_CullDistancePerViewEXT"
|
|
255
|
+
"gl_CullDistancePerViewNV" "gl_CullMaskEXT" "gl_CullPrimitiveEXT"
|
|
256
|
+
"gl_CurrentRayTimeNV" "gl_DepthRange" "gl_DeviceIndex" "gl_DrawID" "gl_EyePlaneQ"
|
|
257
|
+
"gl_EyePlaneR" "gl_EyePlaneS" "gl_EyePlaneT" "gl_FirstIndexHUAWEI"
|
|
258
|
+
"gl_FirstInstanceHUAWEI" "gl_FirstVertexHUAWEI" "gl_Fog" "gl_FogCoord"
|
|
259
|
+
"gl_FogFragCoord" "gl_FragColor" "gl_FragCoord" "gl_FragData" "gl_FragDepth"
|
|
260
|
+
"gl_FragInvocationCountEXT" "gl_FragmentSizeNV" "gl_FragSizeEXT" "gl_FragSizeNV"
|
|
261
|
+
"gl_FragStencilRefARB" "gl_FrontColor" "gl_FrontFacing" "gl_FrontLightModelProduct"
|
|
262
|
+
"gl_FrontLightProduct" "gl_FrontMaterial" "gl_FrontSecondaryColor"
|
|
263
|
+
"gl_GeometryIndexEXT" "gl_GlobalInvocationID" "gl_HelperInvocation"
|
|
264
|
+
"gl_HelperThreadNV" "gl_HitIsLSSNV" "gl_HitIsSphereNV"
|
|
265
|
+
"gl_HitKindBackFacingMicroTriangleNV" "gl_HitKindEXT"
|
|
266
|
+
"gl_HitKindFrontFacingMicroTriangleNV" "gl_HitKindNV" "gl_HitLSSPositionsNV"
|
|
267
|
+
"gl_HitLSSRadiiNV" "gl_HitMicroTriangleVertexBarycentricsNV"
|
|
268
|
+
"gl_HitMicroTriangleVertexPositionsNV" "gl_HitSpherePositionNV" "gl_HitSphereRadiusNV"
|
|
269
|
+
"gl_HitTEXT" "gl_HitTNV" "gl_HitTriangleVertexPositionsEXT" "gl_in"
|
|
270
|
+
"gl_IncomingRayFlagsEXT" "gl_IncomingRayFlagsNV" "gl_IndexCountHUAWEI"
|
|
271
|
+
"gl_InstanceCountHUAWEI" "gl_InstanceCustomIndexEXT" "gl_InstanceCustomIndexNV"
|
|
272
|
+
"gl_InstanceID" "gl_InstanceIndex" "gl_InvocationID" "gl_InvocationsPerPixelNV"
|
|
273
|
+
"gl_LaunchIDEXT" "gl_LaunchIDNV" "gl_LaunchSizeEXT" "gl_LaunchSizeNV" "gl_Layer"
|
|
274
|
+
"gl_LayerPerViewNV" "gl_LightModel" "gl_LightSource" "gl_LocalInvocationID"
|
|
275
|
+
"gl_LocalInvocationIndex" "gl_MeshPrimitivesEXT" "gl_MeshPrimitivesNV"
|
|
276
|
+
"gl_MeshVerticesEXT" "gl_MeshVerticesNV" "gl_MeshViewCountNV" "gl_MeshViewIndicesNV"
|
|
277
|
+
"gl_ModelViewMatrix" "gl_ModelViewMatrixInverse" "gl_ModelViewMatrixInverseTranspose"
|
|
278
|
+
"gl_ModelViewMatrixTranspose" "gl_ModelViewProjectionMatrix"
|
|
279
|
+
"gl_ModelViewProjectionMatrixInverse" "gl_ModelViewProjectionMatrixInverseTranspose"
|
|
280
|
+
"gl_ModelViewProjectionMatrixTranspose" "gl_MultiTexCoord0" "gl_MultiTexCoord1"
|
|
281
|
+
"gl_MultiTexCoord2" "gl_MultiTexCoord3" "gl_MultiTexCoord4" "gl_MultiTexCoord5"
|
|
282
|
+
"gl_MultiTexCoord6" "gl_MultiTexCoord7" "gl_Normal" "gl_NormalMatrix" "gl_NormalScale"
|
|
283
|
+
"gl_NumSamples" "gl_NumSubgroups" "gl_NumWorkGroups" "gl_ObjectPlaneQ"
|
|
284
|
+
"gl_ObjectPlaneR" "gl_ObjectPlaneS" "gl_ObjectPlaneT" "gl_ObjectRayDirectionEXT"
|
|
285
|
+
"gl_ObjectRayDirectionNV" "gl_ObjectRayOriginEXT" "gl_ObjectRayOriginNV"
|
|
286
|
+
"gl_ObjectToWorld3x4EXT" "gl_ObjectToWorldEXT" "gl_ObjectToWorldNV" "gl_out"
|
|
287
|
+
"gl_PatchVerticesIn" "gl_Point" "gl_PointCoord" "gl_PointSize" "gl_Position"
|
|
288
|
+
"gl_PositionPerViewNV" "gl_PrimitiveCountNV" "gl_PrimitiveID" "gl_PrimitiveIDIn"
|
|
289
|
+
"gl_PrimitiveIndicesNV" "gl_PrimitiveLineIndicesEXT" "gl_PrimitivePointIndicesEXT"
|
|
290
|
+
"gl_PrimitiveShadingRateEXT" "gl_PrimitiveTriangleIndicesEXT" "gl_ProjectionMatrix"
|
|
291
|
+
"gl_ProjectionMatrixInverse" "gl_ProjectionMatrixInverseTranspose"
|
|
292
|
+
"gl_ProjectionMatrixTranspose" "gl_RayFlagsEXT" "gl_RayTmaxEXT" "gl_RayTMaxEXT"
|
|
293
|
+
"gl_RayTmaxNV" "gl_RayTminEXT" "gl_RayTMinEXT" "gl_RayTminNV" "gl_SampleID"
|
|
294
|
+
"gl_SampleMask" "gl_SampleMaskIn" "gl_SamplePosition" "gl_SecondaryColor"
|
|
295
|
+
"gl_ShadingRateEXT" "gl_ShadingRateNV" "gl_ShadingRatePerViewNV" "gl_SMCountNV"
|
|
296
|
+
"gl_SMIDNV" "gl_SubgroupEqMask" "gl_SubgroupGeMask" "gl_SubgroupGtMask"
|
|
297
|
+
"gl_SubgroupID" "gl_SubgroupInvocationID" "gl_SubgroupLeMask" "gl_SubgroupLtMask"
|
|
298
|
+
"gl_SubgroupSize" "gl_TaskCountNV" "gl_TessCoord" "gl_TessLevelInner"
|
|
299
|
+
"gl_TessLevelOuter" "gl_TexCoord" "gl_TextureEnvColor" "gl_TextureMatrix"
|
|
300
|
+
"gl_TextureMatrixInverse" "gl_TextureMatrixInverseTranspose"
|
|
301
|
+
"gl_TextureMatrixTranspose" "gl_ThreadInWarpNV" "gl_TileApronSizeQCOM"
|
|
302
|
+
"gl_TileDimensionQCOM" "gl_TileOffsetQCOM" "gl_Vertex" "gl_VertexCountHUAWEI"
|
|
303
|
+
"gl_VertexID" "gl_VertexIndex" "gl_VertexOffsetHUAWEI" "gl_ViewIndex"
|
|
304
|
+
"gl_ViewportIndex" "gl_ViewportMaskPerViewNV" "gl_WarpIDARM" "gl_WarpIDNV"
|
|
305
|
+
"gl_WarpMaxIDARM" "gl_WarpSizeNV" "gl_WarpsPerSMNV" "gl_WorkGroupID"
|
|
306
|
+
"gl_WorldRayDirectionEXT" "gl_WorldRayDirectionNV" "gl_WorldRayOriginEXT"
|
|
307
|
+
"gl_WorldRayOriginNV" "gl_WorldToObject3x4EXT" "gl_WorldToObjectEXT"
|
|
308
|
+
"gl_WorldToObjectNV"))
|
|
309
|
+
|
|
310
|
+
; Built-in type-like names from builtins.adoc such as gl_PerVertex.
|
|
311
|
+
((type_specifier
|
|
312
|
+
(type_identifier) @type.builtin)
|
|
313
|
+
(#any-of? @type.builtin
|
|
314
|
+
"__explicitInterpAMD" "accelerationStructureEXT" "accelerationStructureNV"
|
|
315
|
+
"attachmentEXT" "callableDataEXT" "callableDataInEXT" "coopmatNV" "coopvecNV"
|
|
316
|
+
"derivative_group_linearNV" "derivative_group_quadsNV" "fcoopmatNV"
|
|
317
|
+
"gl_DepthRangeParameters" "gl_FogParameters" "gl_LightModelParameters"
|
|
318
|
+
"gl_LightModelProducts" "gl_LightProducts" "gl_LightSourceParameters"
|
|
319
|
+
"gl_MaterialParameters" "gl_MeshPerPrimitiveEXT" "gl_MeshPerPrimitiveNV"
|
|
320
|
+
"gl_MeshPerVertexEXT" "gl_MeshPerVertexNV" "gl_PerClusterHUAWEI" "gl_PerFragment"
|
|
321
|
+
"gl_PerVertex" "gl_PointParameters" "gl_TextureFootprint2DNV"
|
|
322
|
+
"gl_TextureFootprint3DNV" "hitAttributeEXT" "hitObjectEXT" "hitObjectNV"
|
|
323
|
+
"iattachmentEXT" "icoopmatNV" "non_coherent_attachment_readQCOM" "nonuniformEXT"
|
|
324
|
+
"perprimitiveEXT" "pervertexEXT" "pervertexNV" "rayPayloadEXT" "rayPayloadInEXT"
|
|
325
|
+
"rayQueryEXT" "shaderRecordEXT" "shaderRecordNV" "shading_rate_xQCOM"
|
|
326
|
+
"shading_rate_yQCOM" "shading_rate_zQCOM" "subgroupPartitionNV" "subgroupuniformEXT"
|
|
327
|
+
"taskPayloadSharedEXT" "tensorARM" "tensorLayoutNV" "tensorViewNV"
|
|
328
|
+
"tile_attachmentQCOM" "uattachmentEXT" "ucoopmatNV"))
|
|
329
|
+
|
|
330
|
+
; Built-in function names from builtinfunctions.adoc.
|
|
331
|
+
; Vulkan-only built-in function names from builtinfunctions.adoc.
|
|
332
|
+
((function_call
|
|
333
|
+
function: (identifier) @function.builtin.vk)
|
|
334
|
+
(#any-of? @function.builtin.vk
|
|
335
|
+
"subpassLoad"))
|
|
336
|
+
|
|
337
|
+
; Built-in function names from builtinfunctions.adoc.
|
|
338
|
+
((function_call
|
|
339
|
+
function: (identifier) @function.builtin)
|
|
340
|
+
(#any-of? @function.builtin
|
|
341
|
+
"abs" "acos" "acosh" "activeThreadsNV" "all" "allInvocations" "allInvocationsEqual"
|
|
342
|
+
"any" "anyInvocation" "asin" "asinh" "assumeEXT" "atan" "atanh" "atomicAdd"
|
|
343
|
+
"atomicAnd" "atomicCompSwap" "atomicCounter" "atomicCounterAdd" "atomicCounterAnd"
|
|
344
|
+
"atomicCounterCompSwap" "atomicCounterDecrement" "atomicCounterExchange"
|
|
345
|
+
"atomicCounterIncrement" "atomicCounterMax" "atomicCounterMin" "atomicCounterOr"
|
|
346
|
+
"atomicCounterSubtract" "atomicCounterXor" "atomicExchange" "atomicLoad" "atomicMax"
|
|
347
|
+
"atomicMin" "atomicOr" "atomicStore" "atomicXor" "ballotThreadNV" "barrier"
|
|
348
|
+
"bfloat16BitsToIntEXT" "bfloat16BitsToUintEXT" "bitcastQCOM" "bitCount"
|
|
349
|
+
"bitfieldExtract" "bitfieldInsert" "bitfieldReverse" "ceil" "clamp"
|
|
350
|
+
"clockRealtime2x32EXT" "clockRealtimeEXT" "colorAttachmentReadEXT"
|
|
351
|
+
"ComputeAccessedLod" "controlBarrier" "coopMatLoad" "coopMatLoadNV"
|
|
352
|
+
"coopMatLoadTensorNV" "coopMatMulAdd" "coopMatMulAddNV" "coopMatPerElementNV"
|
|
353
|
+
"coopMatReduceNV" "coopMatStore" "coopMatStoreNV" "coopMatStoreTensorNV"
|
|
354
|
+
"coopmatToVectorQCOM" "coopMatTransposeNV" "coopVecLoadNV" "coopVecMatMulAddNV"
|
|
355
|
+
"coopVecMatMulNV" "coopVecOuterProductAccumulateNV" "coopVecReduceSumAccumulateNV"
|
|
356
|
+
"coopVecStoreNV" "cos" "cosh" "createTensorLayoutNV" "createTensorViewNV" "cross"
|
|
357
|
+
"debugPrintfEXT" "degrees" "depthAttachmentReadEXT" "determinant" "dFdx" "dFdxCoarse"
|
|
358
|
+
"dFdxFine" "dFdy" "dFdyCoarse" "dFdyFine" "distance" "dot" "dotAccSatEXT" "dotEXT"
|
|
359
|
+
"dotPacked4x8AccSatEXT" "dotPacked4x8EXT" "doubleBitsToInt64" "doubleBitsToUint64"
|
|
360
|
+
"EmitMeshTasksEXT" "EmitStreamVertex" "EmitVertex" "EndPrimitive" "EndStreamPrimitive"
|
|
361
|
+
"equal" "executeCallableEXT" "executeCallableNV" "exp" "exp2" "expectEXT"
|
|
362
|
+
"extractSubArrayQCOM" "faceforward" "fetchMicroTriangleVertexBarycentricNV"
|
|
363
|
+
"fetchMicroTriangleVertexPositionNV" "findLSB" "findMSB" "float16BitsToInt16"
|
|
364
|
+
"float16BitsToUint16" "floatBitsToInt" "floatBitsToUint" "floate4m3BitsToIntEXT"
|
|
365
|
+
"floate4m3BitsToUintEXT" "floate5m2BitsToIntEXT" "floate5m2BitsToUintEXT" "floor"
|
|
366
|
+
"fma" "fract" "fragmentFetchAMD" "fragmentMaskFetchAMD" "frexp" "ftransform" "fwidth"
|
|
367
|
+
"fwidthCoarse" "fwidthFine" "greaterThan" "greaterThanEqual" "groupMemoryBarrier"
|
|
368
|
+
"halfBitsToInt16" "halfBitsToUint16" "helperInvocationEXT" "hitObjectExecuteShaderEXT"
|
|
369
|
+
"hitObjectExecuteShaderNV" "hitObjectGetAttributesEXT" "hitObjectGetAttributesNV"
|
|
370
|
+
"hitObjectGetClusterIdNV" "hitObjectGetCurrentTimeEXT" "hitObjectGetCurrentTimeNV"
|
|
371
|
+
"hitObjectGetGeometryIndexEXT" "hitObjectGetGeometryIndexNV" "hitObjectGetHitKindEXT"
|
|
372
|
+
"hitObjectGetHitKindNV" "hitObjectGetInstanceCustomIndexEXT"
|
|
373
|
+
"hitObjectGetInstanceCustomIndexNV" "hitObjectGetInstanceIdEXT"
|
|
374
|
+
"hitObjectGetInstanceIdNV" "hitObjectGetIntersectionTriangleVertexPositionsEXT"
|
|
375
|
+
"hitObjectGetLSSPositionsNV" "hitObjectGetLSSRadiiNV"
|
|
376
|
+
"hitObjectGetObjectRayDirectionEXT" "hitObjectGetObjectRayDirectionNV"
|
|
377
|
+
"hitObjectGetObjectRayOriginEXT" "hitObjectGetObjectRayOriginNV"
|
|
378
|
+
"hitObjectGetObjectToWorldEXT" "hitObjectGetObjectToWorldNV"
|
|
379
|
+
"hitObjectGetPrimitiveIndexEXT" "hitObjectGetPrimitiveIndexNV"
|
|
380
|
+
"hitObjectGetRayFlagsEXT" "hitObjectGetRayTMaxEXT" "hitObjectGetRayTMaxNV"
|
|
381
|
+
"hitObjectGetRayTMinEXT" "hitObjectGetRayTMinNV"
|
|
382
|
+
"hitObjectGetShaderBindingTableRecordIndexEXT"
|
|
383
|
+
"hitObjectGetShaderBindingTableRecordIndexNV"
|
|
384
|
+
"hitObjectGetShaderRecordBufferHandleEXT" "hitObjectGetShaderRecordBufferHandleNV"
|
|
385
|
+
"hitObjectGetSpherePositionNV" "hitObjectGetSphereRadiusNV"
|
|
386
|
+
"hitObjectGetWorldRayDirectionEXT" "hitObjectGetWorldRayDirectionNV"
|
|
387
|
+
"hitObjectGetWorldRayOriginEXT" "hitObjectGetWorldRayOriginNV"
|
|
388
|
+
"hitObjectGetWorldToObjectEXT" "hitObjectGetWorldToObjectNV" "hitObjectIsEmptyEXT"
|
|
389
|
+
"hitObjectIsEmptyNV" "hitObjectIsHitEXT" "hitObjectIsHitNV" "hitObjectIsMissEXT"
|
|
390
|
+
"hitObjectIsMissNV" "hitObjectRecordEmptyEXT" "hitObjectRecordEmptyNV"
|
|
391
|
+
"hitObjectRecordFromQueryEXT" "hitObjectRecordHitMotionNV" "hitObjectRecordHitNV"
|
|
392
|
+
"hitObjectRecordHitWithIndexMotionNV" "hitObjectRecordHitWithIndexNV"
|
|
393
|
+
"hitObjectRecordMissEXT" "hitObjectRecordMissMotionEXT" "hitObjectRecordMissMotionNV"
|
|
394
|
+
"hitObjectRecordMissNV" "hitObjectReorderExecuteEXT"
|
|
395
|
+
"hitObjectSetShaderBindingTableRecordIndexEXT" "hitObjectTraceMotionReorderExecuteEXT"
|
|
396
|
+
"hitObjectTraceRayEXT" "hitObjectTraceRayMotionEXT" "hitObjectTraceRayMotionNV"
|
|
397
|
+
"hitObjectTraceRayNV" "hitObjectTraceReorderExecuteEXT" "ignoreIntersectionEXT"
|
|
398
|
+
"ignoreIntersectionNV" "imageAtomicAdd" "imageAtomicAnd" "imageAtomicCompSwap"
|
|
399
|
+
"imageAtomicExchange" "imageAtomicLoad" "imageAtomicMax" "imageAtomicMin"
|
|
400
|
+
"imageAtomicOr" "imageAtomicStore" "imageAtomicXor" "imageLoad" "imageSamples"
|
|
401
|
+
"imageSize" "imageStore" "imulExtended" "int16BitsToFloat16" "int16BitsToHalf"
|
|
402
|
+
"int64BitsToDouble" "intBitsToBFloat16EXT" "intBitsToFloat" "intBitsToFloate4m3EXT"
|
|
403
|
+
"intBitsToFloate5m2EXT" "interpolateAtCentroid" "interpolateAtOffset"
|
|
404
|
+
"interpolateAtSample" "interpolateAtVertexAMD" "inverse" "inversesqrt" "isinf" "isnan"
|
|
405
|
+
"ldexp" "length" "length64" "lessThan" "lessThanEqual" "log" "log2" "matrixCompMult"
|
|
406
|
+
"max" "max3" "memoryBarrier" "memoryBarrierAtomicCounter" "memoryBarrierBuffer"
|
|
407
|
+
"memoryBarrierImage" "memoryBarrierShared" "mid3" "min" "min3" "mix" "mod" "modf"
|
|
408
|
+
"noise1" "noise2" "noise3" "noise4" "normalize" "not" "notEqual" "outerProduct"
|
|
409
|
+
"pack16" "pack32" "pack64" "packDouble2x32" "packFloat2x16" "packHalf2x16"
|
|
410
|
+
"packInt2x16" "packInt2x32" "packInt4x16" "packSnorm2x16" "packSnorm4x8"
|
|
411
|
+
"packUint2x16" "packUint2x32" "packUint4x16" "packUnorm2x16" "packUnorm4x8" "pow"
|
|
412
|
+
"quadSwizzle0NV" "quadSwizzle1NV" "quadSwizzle2NV" "quadSwizzle3NV" "quadSwizzleXNV"
|
|
413
|
+
"quadSwizzleYNV" "radians" "rayQueryConfirmIntersectionEXT"
|
|
414
|
+
"rayQueryGenerateIntersectionEXT" "rayQueryGetIntersectionBarycentricsEXT"
|
|
415
|
+
"rayQueryGetIntersectionCandidateAABBOpaqueEXT" "rayQueryGetIntersectionClusterIdNV"
|
|
416
|
+
"rayQueryGetIntersectionFrontFaceEXT" "rayQueryGetIntersectionGeometryIndexEXT"
|
|
417
|
+
"rayQueryGetIntersectionInstanceCustomIndexEXT" "rayQueryGetIntersectionInstanceIdEXT"
|
|
418
|
+
"rayQueryGetIntersectionInstanceShaderBindingTableRecordOffsetEXT"
|
|
419
|
+
"rayQueryGetIntersectionLSSHitValueNV" "rayQueryGetIntersectionLSSPositionsNV"
|
|
420
|
+
"rayQueryGetIntersectionLSSRadiiNV" "rayQueryGetIntersectionObjectRayDirectionEXT"
|
|
421
|
+
"rayQueryGetIntersectionObjectRayOriginEXT" "rayQueryGetIntersectionObjectToWorldEXT"
|
|
422
|
+
"rayQueryGetIntersectionPrimitiveIndexEXT" "rayQueryGetIntersectionSpherePositionNV"
|
|
423
|
+
"rayQueryGetIntersectionSphereRadiusNV" "rayQueryGetIntersectionTEXT"
|
|
424
|
+
"rayQueryGetIntersectionTriangleVertexPositionsEXT" "rayQueryGetIntersectionTypeEXT"
|
|
425
|
+
"rayQueryGetIntersectionWorldToObjectEXT" "rayQueryGetRayFlagsEXT"
|
|
426
|
+
"rayQueryGetRayTMinEXT" "rayQueryGetWorldRayDirectionEXT"
|
|
427
|
+
"rayQueryGetWorldRayOriginEXT" "rayQueryInitializeEXT" "rayQueryIsLSSHitNV"
|
|
428
|
+
"rayQueryIsSphereHitNV" "rayQueryProceedEXT" "rayQueryTerminateEXT" "reflect"
|
|
429
|
+
"refract" "reorderThreadEXT" "reorderThreadNV" "reportIntersectionEXT"
|
|
430
|
+
"reportIntersectionNV" "round" "roundEven" "saturatedConvertEXT" "SetMeshOutputsEXT"
|
|
431
|
+
"setTensorLayoutBlockSizeNV" "setTensorLayoutClampValueNV"
|
|
432
|
+
"setTensorLayoutDimensionNV" "setTensorLayoutStrideNV" "setTensorViewClipNV"
|
|
433
|
+
"setTensorViewDimensionsNV" "setTensorViewStrideNV" "shadow1D" "shadow1DLod"
|
|
434
|
+
"shadow1DProj" "shadow1DProjLod" "shadow2D" "shadow2DLod" "shadow2DProj"
|
|
435
|
+
"shadow2DProjLod" "sign" "sin" "sinh" "sliceTensorLayoutNV" "smoothstep" "sqrt"
|
|
436
|
+
"stencilAttachmentReadEXT" "step" "subgroupAdd" "subgroupAll" "subgroupAllEqual"
|
|
437
|
+
"subgroupAnd" "subgroupAny" "subgroupBallot" "subgroupBallotBitCount"
|
|
438
|
+
"subgroupBallotBitExtract" "subgroupBallotExclusiveBitCount" "subgroupBallotFindLSB"
|
|
439
|
+
"subgroupBallotFindMSB" "subgroupBallotInclusiveBitCount" "subgroupBarrier"
|
|
440
|
+
"subgroupBroadcast" "subgroupBroadcastFirst" "subgroupClusteredAdd"
|
|
441
|
+
"subgroupClusteredAnd" "subgroupClusteredMax" "subgroupClusteredMin"
|
|
442
|
+
"subgroupClusteredMul" "subgroupClusteredOr" "subgroupClusteredRotate"
|
|
443
|
+
"subgroupClusteredXor" "subgroupElect" "subgroupExclusiveAdd" "subgroupExclusiveAnd"
|
|
444
|
+
"subgroupExclusiveMax" "subgroupExclusiveMin" "subgroupExclusiveMul"
|
|
445
|
+
"subgroupExclusiveOr" "subgroupExclusiveXor" "subgroupInclusiveAdd"
|
|
446
|
+
"subgroupInclusiveAnd" "subgroupInclusiveMax" "subgroupInclusiveMin"
|
|
447
|
+
"subgroupInclusiveMul" "subgroupInclusiveOr" "subgroupInclusiveXor"
|
|
448
|
+
"subgroupInverseBallot" "subgroupMax" "subgroupMemoryBarrier"
|
|
449
|
+
"subgroupMemoryBarrierBuffer" "subgroupMemoryBarrierImage"
|
|
450
|
+
"subgroupMemoryBarrierShared" "subgroupMin" "subgroupMul" "subgroupOr"
|
|
451
|
+
"subgroupPartitionedAddNV" "subgroupPartitionedAndNV"
|
|
452
|
+
"subgroupPartitionedExclusiveAddNV" "subgroupPartitionedExclusiveAndNV"
|
|
453
|
+
"subgroupPartitionedExclusiveMaxNV" "subgroupPartitionedExclusiveMinNV"
|
|
454
|
+
"subgroupPartitionedExclusiveMulNV" "subgroupPartitionedExclusiveOrNV"
|
|
455
|
+
"subgroupPartitionedExclusiveXorNV" "subgroupPartitionedInclusiveAddNV"
|
|
456
|
+
"subgroupPartitionedInclusiveAndNV" "subgroupPartitionedInclusiveMaxNV"
|
|
457
|
+
"subgroupPartitionedInclusiveMinNV" "subgroupPartitionedInclusiveMulNV"
|
|
458
|
+
"subgroupPartitionedInclusiveOrNV" "subgroupPartitionedInclusiveXorNV"
|
|
459
|
+
"subgroupPartitionedMaxNV" "subgroupPartitionedMinNV" "subgroupPartitionedMulNV"
|
|
460
|
+
"subgroupPartitionedOrNV" "subgroupPartitionedXorNV" "subgroupPartitionNV"
|
|
461
|
+
"subgroupQuadBroadcast" "subgroupQuadSwapDiagonal" "subgroupQuadSwapHorizontal"
|
|
462
|
+
"subgroupQuadSwapVertical" "subgroupRotate" "subgroupShuffle" "subgroupShuffleDown"
|
|
463
|
+
"subgroupShuffleUp" "subgroupShuffleXor" "subgroupXor" "tan" "tanh" "tensorReadARM"
|
|
464
|
+
"tensorSizeARM" "tensorWriteARM" "terminateRayEXT" "terminateRayNV" "texelFetch"
|
|
465
|
+
"texelFetchOffset" "texture" "texture1D" "texture1DLod" "texture1DProj"
|
|
466
|
+
"texture1DProjLod" "texture2D" "texture2DLod" "texture2DProj" "texture2DProjLod"
|
|
467
|
+
"texture3D" "texture3DLod" "texture3DProj" "texture3DProjLod"
|
|
468
|
+
"textureBlockMatchGatherSADQCOM" "textureBlockMatchGatherSSDQCOM"
|
|
469
|
+
"textureBlockMatchSADQCOM" "textureBlockMatchSSDQCOM" "textureBlockMatchWindowSADQCOM"
|
|
470
|
+
"textureBlockMatchWindowSSDQCOM" "textureBoxFilterQCOM" "textureCube" "textureCubeLod"
|
|
471
|
+
"textureFootprintClampNV" "textureFootprintGradClampNV" "textureFootprintGradNV"
|
|
472
|
+
"textureFootprintLodNV" "textureFootprintNV" "textureGather" "textureGatherOffset"
|
|
473
|
+
"textureGatherOffsets" "textureGrad" "textureGradOffset" "textureLod"
|
|
474
|
+
"textureLodOffset" "textureOffset" "textureProj" "textureProjGrad"
|
|
475
|
+
"textureProjGradOffset" "textureProjLod" "textureProjLodOffset" "textureProjOffset"
|
|
476
|
+
"textureQueryLevels" "textureQueryLod" "textureSamples" "textureSize"
|
|
477
|
+
"textureWeightedQCOM" "traceNV" "traceRayEXT" "traceRayMotionNV" "transpose" "trunc"
|
|
478
|
+
"uaddCarry" "uint16BitsToFloat16" "uint16BitsToHalf" "uint64BitsToDouble"
|
|
479
|
+
"uintBitsToBFloat16EXT" "uintBitsToFloat" "uintBitsToFloate4m3EXT"
|
|
480
|
+
"uintBitsToFloate5m2EXT" "umulExtended" "unpack16" "unpack32" "unpack8"
|
|
481
|
+
"unpackDouble2x32" "unpackFloat2x16" "unpackHalf2x16" "unpackInt2x16" "unpackInt2x32"
|
|
482
|
+
"unpackInt4x16" "unpackSnorm2x16" "unpackSnorm4x8" "unpackUint2x16" "unpackUint2x32"
|
|
483
|
+
"unpackUint4x16" "unpackUnorm2x16" "unpackUnorm4x8" "usubBorrow" "vectorToCoopmatQCOM"
|
|
484
|
+
"writePackedPrimitiveIndices4x8NV"))
|
|
485
|
+
|
|
486
|
+
(identifier) @variable
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
; Scopes
|
|
2
|
+
|
|
3
|
+
(translation_unit) @local.scope
|
|
4
|
+
(function_definition) @local.scope
|
|
5
|
+
(compound_statement) @local.scope
|
|
6
|
+
(if_statement) @local.scope
|
|
7
|
+
(switch_statement) @local.scope
|
|
8
|
+
(while_statement) @local.scope
|
|
9
|
+
(do_statement) @local.scope
|
|
10
|
+
(for_statement) @local.scope
|
|
11
|
+
|
|
12
|
+
; Definitions
|
|
13
|
+
|
|
14
|
+
(function_declarator
|
|
15
|
+
name: (identifier) @local.definition)
|
|
16
|
+
|
|
17
|
+
(parameter_declaration
|
|
18
|
+
name: (identifier) @local.definition)
|
|
19
|
+
|
|
20
|
+
(declarator
|
|
21
|
+
name: (identifier) @local.definition)
|
|
22
|
+
|
|
23
|
+
(condition
|
|
24
|
+
name: (identifier) @local.definition)
|
|
25
|
+
|
|
26
|
+
(declaration
|
|
27
|
+
instance_name: (identifier) @local.definition)
|
|
28
|
+
|
|
29
|
+
; References
|
|
30
|
+
|
|
31
|
+
(identifier) @local.reference
|
|
32
|
+
|
|
33
|
+
(function_call
|
|
34
|
+
function: (identifier) @local.reference)
|
package/queries/tags.scm
ADDED
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
; Types
|
|
2
|
+
|
|
3
|
+
(struct_specifier
|
|
4
|
+
name: (identifier) @name) @definition.class
|
|
5
|
+
|
|
6
|
+
(declaration
|
|
7
|
+
name: (identifier) @name
|
|
8
|
+
(field_declaration_list)) @definition.class
|
|
9
|
+
|
|
10
|
+
; Functions
|
|
11
|
+
|
|
12
|
+
(function_declarator
|
|
13
|
+
name: (identifier) @name) @definition.function
|
|
14
|
+
|
|
15
|
+
(function_call
|
|
16
|
+
function: (identifier) @name) @reference.call
|
|
17
|
+
|
|
18
|
+
(function_call
|
|
19
|
+
function: (field_expression
|
|
20
|
+
field: (field_identifier) @name)) @reference.call
|
|
21
|
+
|
|
22
|
+
; Variables and constants
|
|
23
|
+
|
|
24
|
+
(declaration
|
|
25
|
+
(declarator_list
|
|
26
|
+
(declarator
|
|
27
|
+
name: (identifier) @name))) @definition.variable
|
|
28
|
+
|
|
29
|
+
(declaration
|
|
30
|
+
instance_name: (identifier) @name) @definition.variable
|
|
31
|
+
|
|
32
|
+
(declaration
|
|
33
|
+
(precision_qualifier)
|
|
34
|
+
(type_specifier
|
|
35
|
+
(type_identifier) @name)) @reference.type
|
|
36
|
+
|
|
37
|
+
; Type references
|
|
38
|
+
|
|
39
|
+
(type
|
|
40
|
+
(type_specifier
|
|
41
|
+
(type_identifier) @name)) @reference.type
|
|
42
|
+
|
|
43
|
+
(parameter_declaration
|
|
44
|
+
type: (type_specifier
|
|
45
|
+
(type_identifier) @name)) @reference.type
|
|
46
|
+
|
|
47
|
+
(declarator
|
|
48
|
+
(type
|
|
49
|
+
(type_specifier
|
|
50
|
+
(type_identifier) @name))) @reference.type
|