• Home
  • Raw
  • Download

Lines Matching refs:spv

43         case spv::DecorationLocation:  in add()
47 case spv::DecorationPatch: in add()
50 case spv::DecorationRelaxedPrecision: in add()
53 case spv::DecorationBlock: in add()
56 case spv::DecorationBufferBlock: in add()
59 case spv::DecorationComponent: in add()
63 case spv::DecorationInputAttachmentIndex: in add()
67 case spv::DecorationDescriptorSet: in add()
71 case spv::DecorationBinding: in add()
75 case spv::DecorationNonWritable: in add()
78 case spv::DecorationBuiltIn: in add()
115 case spv::OpTypeVoid: in BuildDefIndex()
116 case spv::OpTypeBool: in BuildDefIndex()
117 case spv::OpTypeInt: in BuildDefIndex()
118 case spv::OpTypeFloat: in BuildDefIndex()
119 case spv::OpTypeVector: in BuildDefIndex()
120 case spv::OpTypeMatrix: in BuildDefIndex()
121 case spv::OpTypeImage: in BuildDefIndex()
122 case spv::OpTypeSampler: in BuildDefIndex()
123 case spv::OpTypeSampledImage: in BuildDefIndex()
124 case spv::OpTypeArray: in BuildDefIndex()
125 case spv::OpTypeRuntimeArray: in BuildDefIndex()
126 case spv::OpTypeStruct: in BuildDefIndex()
127 case spv::OpTypeOpaque: in BuildDefIndex()
128 case spv::OpTypePointer: in BuildDefIndex()
129 case spv::OpTypeFunction: in BuildDefIndex()
130 case spv::OpTypeEvent: in BuildDefIndex()
131 case spv::OpTypeDeviceEvent: in BuildDefIndex()
132 case spv::OpTypeReserveId: in BuildDefIndex()
133 case spv::OpTypeQueue: in BuildDefIndex()
134 case spv::OpTypePipe: in BuildDefIndex()
135 case spv::OpTypeAccelerationStructureNV: in BuildDefIndex()
136 case spv::OpTypeCooperativeMatrixNV: in BuildDefIndex()
141 case spv::OpConstantTrue: in BuildDefIndex()
142 case spv::OpConstantFalse: in BuildDefIndex()
143 case spv::OpConstant: in BuildDefIndex()
144 case spv::OpConstantComposite: in BuildDefIndex()
145 case spv::OpConstantSampler: in BuildDefIndex()
146 case spv::OpConstantNull: in BuildDefIndex()
151 case spv::OpSpecConstantTrue: in BuildDefIndex()
152 case spv::OpSpecConstantFalse: in BuildDefIndex()
153 case spv::OpSpecConstant: in BuildDefIndex()
154 case spv::OpSpecConstantComposite: in BuildDefIndex()
155 case spv::OpSpecConstantOp: in BuildDefIndex()
160 case spv::OpVariable: in BuildDefIndex()
165 case spv::OpFunction: in BuildDefIndex()
170 case spv::OpDecorate: { in BuildDefIndex()
174 case spv::OpGroupDecorate: { in BuildDefIndex()
180 case spv::OpEntryPoint: { in BuildDefIndex()
198 case spv::ExecutionModelVertex: in ExecutionModelToShaderStageFlagBits()
200 case spv::ExecutionModelTessellationControl: in ExecutionModelToShaderStageFlagBits()
202 case spv::ExecutionModelTessellationEvaluation: in ExecutionModelToShaderStageFlagBits()
204 case spv::ExecutionModelGeometry: in ExecutionModelToShaderStageFlagBits()
206 case spv::ExecutionModelFragment: in ExecutionModelToShaderStageFlagBits()
208 case spv::ExecutionModelGLCompute: in ExecutionModelToShaderStageFlagBits()
210 case spv::ExecutionModelRayGenerationNV: in ExecutionModelToShaderStageFlagBits()
212 case spv::ExecutionModelAnyHitNV: in ExecutionModelToShaderStageFlagBits()
214 case spv::ExecutionModelClosestHitNV: in ExecutionModelToShaderStageFlagBits()
216 case spv::ExecutionModelMissNV: in ExecutionModelToShaderStageFlagBits()
218 case spv::ExecutionModelIntersectionNV: in ExecutionModelToShaderStageFlagBits()
220 case spv::ExecutionModelCallableNV: in ExecutionModelToShaderStageFlagBits()
222 case spv::ExecutionModelTaskNV: in ExecutionModelToShaderStageFlagBits()
224 case spv::ExecutionModelMeshNV: in ExecutionModelToShaderStageFlagBits()
243 case spv::StorageClassInput: in StorageClassName()
245 case spv::StorageClassOutput: in StorageClassName()
247 case spv::StorageClassUniformConstant: in StorageClassName()
249 case spv::StorageClassUniform: in StorageClassName()
251 case spv::StorageClassWorkgroup: in StorageClassName()
253 case spv::StorageClassCrossWorkgroup: in StorageClassName()
255 case spv::StorageClassPrivate: in StorageClassName()
257 case spv::StorageClassFunction: in StorageClassName()
259 case spv::StorageClassGeneric: in StorageClassName()
261 case spv::StorageClassAtomicCounter: in StorageClassName()
263 case spv::StorageClassImage: in StorageClassName()
265 case spv::StorageClassPushConstant: in StorageClassName()
267 case spv::StorageClassStorageBuffer: in StorageClassName()
279 if (value.opcode() != spv::OpConstant) { in GetConstantValue()
293 case spv::OpTypeBool: in DescribeTypeInner()
296 case spv::OpTypeInt: in DescribeTypeInner()
299 case spv::OpTypeFloat: in DescribeTypeInner()
302 case spv::OpTypeVector: in DescribeTypeInner()
306 case spv::OpTypeMatrix: in DescribeTypeInner()
310 case spv::OpTypeArray: in DescribeTypeInner()
314 case spv::OpTypeRuntimeArray: in DescribeTypeInner()
318 case spv::OpTypePointer: in DescribeTypeInner()
322 case spv::OpTypeStruct: { in DescribeTypeInner()
334 case spv::OpTypeSampler: in DescribeTypeInner()
337 case spv::OpTypeSampledImage: in DescribeTypeInner()
341 case spv::OpTypeImage: in DescribeTypeInner()
344 case spv::OpTypeAccelerationStructureNV: in DescribeTypeInner()
360 if (type.opcode() != spv::OpTypeInt && type.opcode() != spv::OpTypeFloat) return false; in IsNarrowNumericType()
374 if (a_arrayed && a_insn.opcode() == spv::OpTypeArray) { in TypesMatch()
378 if (b_arrayed && b_insn.opcode() == spv::OpTypeArray) { in TypesMatch()
383 if (a_insn.opcode() == spv::OpTypeVector && relaxed && IsNarrowNumericType(b_insn)) { in TypesMatch()
391 if (a_insn.opcode() == spv::OpTypePointer) { in TypesMatch()
402 case spv::OpTypeBool: in TypesMatch()
404 case spv::OpTypeInt: in TypesMatch()
407 case spv::OpTypeFloat: in TypesMatch()
410 case spv::OpTypeVector: in TypesMatch()
418 case spv::OpTypeMatrix: in TypesMatch()
422 case spv::OpTypeArray: in TypesMatch()
427 case spv::OpTypeStruct: in TypesMatch()
461 case spv::OpTypePointer: in GetLocationsConsumedByType()
465 case spv::OpTypeArray: in GetLocationsConsumedByType()
471 case spv::OpTypeMatrix: in GetLocationsConsumedByType()
474 case spv::OpTypeVector: { in GetLocationsConsumedByType()
477 …(scalar_type.opcode() == spv::OpTypeInt || scalar_type.opcode() == spv::OpTypeFloat) ? scalar_type… in GetLocationsConsumedByType()
495 case spv::OpTypePointer: in GetComponentsConsumedByType()
499 case spv::OpTypeStruct: { in GetComponentsConsumedByType()
506 case spv::OpTypeArray: in GetComponentsConsumedByType()
512 case spv::OpTypeMatrix: in GetComponentsConsumedByType()
515 case spv::OpTypeVector: { in GetComponentsConsumedByType()
518 …(scalar_type.opcode() == spv::OpTypeInt || scalar_type.opcode() == spv::OpTypeFloat) ? scalar_type… in GetComponentsConsumedByType()
522 case spv::OpTypeFloat: { in GetComponentsConsumedByType()
526 case spv::OpTypeInt: { in GetComponentsConsumedByType()
530 case spv::OpConstant: in GetComponentsConsumedByType()
567 case spv::OpTypeInt: in GetFundamentalType()
569 case spv::OpTypeFloat: in GetFundamentalType()
571 case spv::OpTypeVector: in GetFundamentalType()
572 case spv::OpTypeMatrix: in GetFundamentalType()
573 case spv::OpTypeArray: in GetFundamentalType()
574 case spv::OpTypeRuntimeArray: in GetFundamentalType()
575 case spv::OpTypeImage: in GetFundamentalType()
577 case spv::OpTypePointer: in GetFundamentalType()
592 if (def.opcode() == spv::OpTypePointer) { in GetStructType()
594 } else if (def.opcode() == spv::OpTypeArray && is_array_of_verts) { in GetStructType()
597 } else if (def.opcode() == spv::OpTypeStruct) { in GetStructType()
621 if (insn.opcode() == spv::OpMemberDecorate && insn.word(1) == type.word(1)) { in CollectInterfaceBlockMembers()
624 if (insn.word(3) == spv::DecorationComponent) { in CollectInterfaceBlockMembers()
629 if (insn.word(3) == spv::DecorationRelaxedPrecision) { in CollectInterfaceBlockMembers()
633 if (insn.word(3) == spv::DecorationPatch) { in CollectInterfaceBlockMembers()
643 if (insn.opcode() == spv::OpMemberDecorate && insn.word(1) == type.word(1)) { in CollectInterfaceBlockMembers()
647 if (insn.word(3) == spv::DecorationLocation) { in CollectInterfaceBlockMembers()
674 assert(entrypoint.opcode() == spv::OpEntryPoint); in FindEntrypointInterfaces()
691spv::StorageClass sinterface, bool is_array_of_verts) { in CollectInterfaceByLocation()
699 assert(insn.opcode() == spv::OpVariable); in CollectInterfaceByLocation()
743 case spv::OpMemberDecorate: in CollectBuiltinBlockMembers()
744 if (insn.word(3) == spv::DecorationBuiltIn) { in CollectBuiltinBlockMembers()
749 case spv::OpDecorate: in CollectBuiltinBlockMembers()
751 case spv::DecorationBlock: { in CollectBuiltinBlockMembers()
762 case spv::DecorationBuiltIn: in CollectBuiltinBlockMembers()
778 assert(def.opcode() == spv::OpVariable); in CollectBuiltinBlockMembers()
789 if (def.opcode() == spv::OpTypeArray) def = src->get_def(def.word(2)); in CollectBuiltinBlockMembers()
792 if (def.opcode() == spv::OpTypeStruct) { in CollectBuiltinBlockMembers()
796 …builtinBlockMembers.push_back(spv::BuiltInMax); // Start with undefined builtin for each struct m… in CollectBuiltinBlockMembers()
799 if (insn.opcode() == spv::OpMemberDecorate && insn.word(1) == builtInID && in CollectBuiltinBlockMembers()
800 insn.word(3) == spv::DecorationBuiltIn) { in CollectBuiltinBlockMembers()
819 if (insn.opcode() == spv::OpDecorate) { in CollectInterfaceByInputAttachmentIndex()
820 if (insn.word(2) == spv::DecorationInputAttachmentIndex) { in CollectInterfaceByInputAttachmentIndex()
828 … if (def.opcode() == spv::OpVariable && insn.word(3) == spv::StorageClassUniformConstant) { in CollectInterfaceByInputAttachmentIndex()
850 …while (type.opcode() == spv::OpTypeArray || type.opcode() == spv::OpTypePointer || type.opcode() =… in IsWritableDescriptorType()
851 if (type.opcode() == spv::OpTypeArray || type.opcode() == spv::OpTypeRuntimeArray) { in IsWritableDescriptorType()
859 case spv::OpTypeImage: { in IsWritableDescriptorType()
862 return sampled == 2 && dim != spv::DimSubpassData; in IsWritableDescriptorType()
865 case spv::OpTypeStruct: { in IsWritableDescriptorType()
869 if (insn.opcode() == spv::OpMemberDecorate && insn.word(1) == type.word(1) && in IsWritableDescriptorType()
870 insn.word(3) == spv::DecorationNonWritable) { in IsWritableDescriptorType()
893 if (insn.opcode() == spv::OpVariable && in CollectInterfaceByDescriptorSlot()
894 … (insn.word(3) == spv::StorageClassUniform || insn.word(3) == spv::StorageClassUniformConstant || in CollectInterfaceByDescriptorSlot()
895 insn.word(3) == spv::StorageClassStorageBuffer)) { in CollectInterfaceByDescriptorSlot()
906 … IsWritableDescriptorType(src, insn.word(1), insn.word(3) == spv::StorageClassStorageBuffer)) { in CollectInterfaceByDescriptorSlot()
941 auto inputs = CollectInterfaceByLocation(vs, entrypoint, spv::StorageClassInput, false); in ValidateViAgainstVsInputs()
1017 auto outputs = CollectInterfaceByLocation(fs, entrypoint, spv::StorageClassOutput, false); in ValidateFsOutputsAgainstRenderPass()
1091 if (type == spv::OpMemberDecorate) { in IsPointSizeWritten()
1094 while (!init_complete && (insn.opcode() != spv::OpFunction)) { in IsPointSizeWritten()
1096 case spv::OpTypePointer: in IsPointSizeWritten()
1097 if ((insn.word(3) == target_id) && (insn.word(2) == spv::StorageClassOutput)) { in IsPointSizeWritten()
1101 case spv::OpVariable: in IsPointSizeWritten()
1112 if (!init_complete && (type == spv::OpMemberDecorate)) return false; in IsPointSizeWritten()
1129 if (insn.opcode() == spv::OpFunction) { in IsPointSizeWritten()
1131 while (++insn, insn.opcode() != spv::OpFunctionEnd) { in IsPointSizeWritten()
1133 case spv::OpAccessChain: in IsPointSizeWritten()
1135 if (type == spv::OpMemberDecorate) { in IsPointSizeWritten()
1145 case spv::OpStore: in IsPointSizeWritten()
1150 case spv::OpFunctionCall: in IsPointSizeWritten()
1190 case spv::OpFunction: in MarkAccessibleIds()
1192 while (++insn, insn.opcode() != spv::OpFunctionEnd) { in MarkAccessibleIds()
1194 case spv::OpLoad: in MarkAccessibleIds()
1195 case spv::OpAtomicLoad: in MarkAccessibleIds()
1196 case spv::OpAtomicExchange: in MarkAccessibleIds()
1197 case spv::OpAtomicCompareExchange: in MarkAccessibleIds()
1198 case spv::OpAtomicCompareExchangeWeak: in MarkAccessibleIds()
1199 case spv::OpAtomicIIncrement: in MarkAccessibleIds()
1200 case spv::OpAtomicIDecrement: in MarkAccessibleIds()
1201 case spv::OpAtomicIAdd: in MarkAccessibleIds()
1202 case spv::OpAtomicISub: in MarkAccessibleIds()
1203 case spv::OpAtomicSMin: in MarkAccessibleIds()
1204 case spv::OpAtomicUMin: in MarkAccessibleIds()
1205 case spv::OpAtomicSMax: in MarkAccessibleIds()
1206 case spv::OpAtomicUMax: in MarkAccessibleIds()
1207 case spv::OpAtomicAnd: in MarkAccessibleIds()
1208 case spv::OpAtomicOr: in MarkAccessibleIds()
1209 case spv::OpAtomicXor: in MarkAccessibleIds()
1212 case spv::OpStore: in MarkAccessibleIds()
1213 case spv::OpAtomicStore: in MarkAccessibleIds()
1216 case spv::OpAccessChain: in MarkAccessibleIds()
1217 case spv::OpInBoundsAccessChain: in MarkAccessibleIds()
1220 case spv::OpSampledImage: in MarkAccessibleIds()
1221 case spv::OpImageSampleImplicitLod: in MarkAccessibleIds()
1222 case spv::OpImageSampleExplicitLod: in MarkAccessibleIds()
1223 case spv::OpImageSampleDrefImplicitLod: in MarkAccessibleIds()
1224 case spv::OpImageSampleDrefExplicitLod: in MarkAccessibleIds()
1225 case spv::OpImageSampleProjImplicitLod: in MarkAccessibleIds()
1226 case spv::OpImageSampleProjExplicitLod: in MarkAccessibleIds()
1227 case spv::OpImageSampleProjDrefImplicitLod: in MarkAccessibleIds()
1228 case spv::OpImageSampleProjDrefExplicitLod: in MarkAccessibleIds()
1229 case spv::OpImageFetch: in MarkAccessibleIds()
1230 case spv::OpImageGather: in MarkAccessibleIds()
1231 case spv::OpImageDrefGather: in MarkAccessibleIds()
1232 case spv::OpImageRead: in MarkAccessibleIds()
1233 case spv::OpImage: in MarkAccessibleIds()
1234 case spv::OpImageQueryFormat: in MarkAccessibleIds()
1235 case spv::OpImageQueryOrder: in MarkAccessibleIds()
1236 case spv::OpImageQuerySizeLod: in MarkAccessibleIds()
1237 case spv::OpImageQuerySize: in MarkAccessibleIds()
1238 case spv::OpImageQueryLod: in MarkAccessibleIds()
1239 case spv::OpImageQueryLevels: in MarkAccessibleIds()
1240 case spv::OpImageQuerySamples: in MarkAccessibleIds()
1241 case spv::OpImageSparseSampleImplicitLod: in MarkAccessibleIds()
1242 case spv::OpImageSparseSampleExplicitLod: in MarkAccessibleIds()
1243 case spv::OpImageSparseSampleDrefImplicitLod: in MarkAccessibleIds()
1244 case spv::OpImageSparseSampleDrefExplicitLod: in MarkAccessibleIds()
1245 case spv::OpImageSparseSampleProjImplicitLod: in MarkAccessibleIds()
1246 case spv::OpImageSparseSampleProjExplicitLod: in MarkAccessibleIds()
1247 case spv::OpImageSparseSampleProjDrefImplicitLod: in MarkAccessibleIds()
1248 case spv::OpImageSparseSampleProjDrefExplicitLod: in MarkAccessibleIds()
1249 case spv::OpImageSparseFetch: in MarkAccessibleIds()
1250 case spv::OpImageSparseGather: in MarkAccessibleIds()
1251 case spv::OpImageSparseDrefGather: in MarkAccessibleIds()
1252 case spv::OpImageTexelPointer: in MarkAccessibleIds()
1255 case spv::OpImageWrite: in MarkAccessibleIds()
1258 case spv::OpFunctionCall: in MarkAccessibleIds()
1264 case spv::OpExtInst: in MarkAccessibleIds()
1291 if (insn.opcode() == spv::OpMemberDecorate && insn.word(1) == type.word(1)) { in ValidatePushConstantBlockAgainstPipeline()
1292 if (insn.word(3) == spv::DecorationOffset) { in ValidatePushConstantBlockAgainstPipeline()
1332 … if (def_insn.opcode() == spv::OpVariable && def_insn.word(3) == spv::StorageClassPushConstant) { in ValidatePushConstantUsage()
1372 …while (type.opcode() == spv::OpTypeArray || type.opcode() == spv::OpTypePointer || type.opcode() =… in TypeToDescriptorTypeSet()
1373 if (type.opcode() == spv::OpTypeRuntimeArray) { in TypeToDescriptorTypeSet()
1376 } else if (type.opcode() == spv::OpTypeArray) { in TypeToDescriptorTypeSet()
1380 if (type.word(2) == spv::StorageClassStorageBuffer) { in TypeToDescriptorTypeSet()
1388 case spv::OpTypeStruct: { in TypeToDescriptorTypeSet()
1390 if (insn.opcode() == spv::OpDecorate && insn.word(1) == type.word(1)) { in TypeToDescriptorTypeSet()
1391 if (insn.word(2) == spv::DecorationBlock) { in TypeToDescriptorTypeSet()
1402 } else if (insn.word(2) == spv::DecorationBufferBlock) { in TypeToDescriptorTypeSet()
1414 case spv::OpTypeSampler: in TypeToDescriptorTypeSet()
1419 case spv::OpTypeSampledImage: { in TypeToDescriptorTypeSet()
1425 if (dim == spv::DimBuffer && sampled == 1) { in TypeToDescriptorTypeSet()
1433 case spv::OpTypeImage: { in TypeToDescriptorTypeSet()
1439 if (dim == spv::DimSubpassData) { in TypeToDescriptorTypeSet()
1442 } else if (dim == spv::DimBuffer) { in TypeToDescriptorTypeSet()
1459 case spv::OpTypeAccelerationStructureNV: in TypeToDescriptorTypeSet()
1568 {spv::CapabilityMatrix, {nullptr}}, in ValidateShaderCapabilities()
1569 {spv::CapabilityShader, {nullptr}}, in ValidateShaderCapabilities()
1570 {spv::CapabilityInputAttachment, {nullptr}}, in ValidateShaderCapabilities()
1571 {spv::CapabilitySampled1D, {nullptr}}, in ValidateShaderCapabilities()
1572 {spv::CapabilityImage1D, {nullptr}}, in ValidateShaderCapabilities()
1573 {spv::CapabilitySampledBuffer, {nullptr}}, in ValidateShaderCapabilities()
1574 {spv::CapabilityStorageImageExtendedFormats, {nullptr}}, in ValidateShaderCapabilities()
1575 {spv::CapabilityImageQuery, {nullptr}}, in ValidateShaderCapabilities()
1576 {spv::CapabilityDerivativeControl, {nullptr}}, in ValidateShaderCapabilities()
1580 …{spv::CapabilityGeometry, {"VkPhysicalDeviceFeatures::geometryShader", &VkPhysicalDeviceFeatures::… in ValidateShaderCapabilities()
1581 …{spv::CapabilityTessellation, {"VkPhysicalDeviceFeatures::tessellationShader", &VkPhysicalDeviceFe… in ValidateShaderCapabilities()
1582 …{spv::CapabilityFloat64, {"VkPhysicalDeviceFeatures::shaderFloat64", &VkPhysicalDeviceFeatures::sh… in ValidateShaderCapabilities()
1583 …{spv::CapabilityInt64, {"VkPhysicalDeviceFeatures::shaderInt64", &VkPhysicalDeviceFeatures::shader… in ValidateShaderCapabilities()
1584 …{spv::CapabilityTessellationPointSize, {"VkPhysicalDeviceFeatures::shaderTessellationAndGeometryPo… in ValidateShaderCapabilities()
1585 …{spv::CapabilityGeometryPointSize, {"VkPhysicalDeviceFeatures::shaderTessellationAndGeometryPointS… in ValidateShaderCapabilities()
1586 …{spv::CapabilityImageGatherExtended, {"VkPhysicalDeviceFeatures::shaderImageGatherExtended", &VkPh… in ValidateShaderCapabilities()
1587 …{spv::CapabilityStorageImageMultisample, {"VkPhysicalDeviceFeatures::shaderStorageImageMultisample… in ValidateShaderCapabilities()
1588 …{spv::CapabilityUniformBufferArrayDynamicIndexing, {"VkPhysicalDeviceFeatures::shaderUniformBuffer… in ValidateShaderCapabilities()
1589 …{spv::CapabilitySampledImageArrayDynamicIndexing, {"VkPhysicalDeviceFeatures::shaderSampledImageAr… in ValidateShaderCapabilities()
1590 …{spv::CapabilityStorageBufferArrayDynamicIndexing, {"VkPhysicalDeviceFeatures::shaderStorageBuffer… in ValidateShaderCapabilities()
1591 …{spv::CapabilityStorageImageArrayDynamicIndexing, {"VkPhysicalDeviceFeatures::shaderStorageImageAr… in ValidateShaderCapabilities()
1592 …{spv::CapabilityClipDistance, {"VkPhysicalDeviceFeatures::shaderClipDistance", &VkPhysicalDeviceFe… in ValidateShaderCapabilities()
1593 …{spv::CapabilityCullDistance, {"VkPhysicalDeviceFeatures::shaderCullDistance", &VkPhysicalDeviceFe… in ValidateShaderCapabilities()
1594 …{spv::CapabilityImageCubeArray, {"VkPhysicalDeviceFeatures::imageCubeArray", &VkPhysicalDeviceFeat… in ValidateShaderCapabilities()
1595 …{spv::CapabilitySampleRateShading, {"VkPhysicalDeviceFeatures::sampleRateShading", &VkPhysicalDevi… in ValidateShaderCapabilities()
1596 …{spv::CapabilitySparseResidency, {"VkPhysicalDeviceFeatures::shaderResourceResidency", &VkPhysical… in ValidateShaderCapabilities()
1597 …{spv::CapabilityMinLod, {"VkPhysicalDeviceFeatures::shaderResourceMinLod", &VkPhysicalDeviceFeatur… in ValidateShaderCapabilities()
1598 …{spv::CapabilitySampledCubeArray, {"VkPhysicalDeviceFeatures::imageCubeArray", &VkPhysicalDeviceFe… in ValidateShaderCapabilities()
1599 …{spv::CapabilityImageMSArray, {"VkPhysicalDeviceFeatures::shaderStorageImageMultisample", &VkPhysi… in ValidateShaderCapabilities()
1600 …{spv::CapabilityInterpolationFunction, {"VkPhysicalDeviceFeatures::sampleRateShading", &VkPhysical… in ValidateShaderCapabilities()
1601 …{spv::CapabilityStorageImageReadWithoutFormat, {"VkPhysicalDeviceFeatures::shaderStorageImageReadW… in ValidateShaderCapabilities()
1602 …{spv::CapabilityStorageImageWriteWithoutFormat, {"VkPhysicalDeviceFeatures::shaderStorageImageWrit… in ValidateShaderCapabilities()
1603 …{spv::CapabilityMultiViewport, {"VkPhysicalDeviceFeatures::multiViewport", &VkPhysicalDeviceFeatur… in ValidateShaderCapabilities()
1605 …{spv::CapabilityShaderNonUniformEXT, {VK_EXT_DESCRIPTOR_INDEXING_EXTENSION_NAME, nullptr, &DeviceE… in ValidateShaderCapabilities()
1606 …{spv::CapabilityRuntimeDescriptorArrayEXT, {"VkPhysicalDeviceDescriptorIndexingFeaturesEXT::runtim… in ValidateShaderCapabilities()
1607 …{spv::CapabilityInputAttachmentArrayDynamicIndexingEXT, {"VkPhysicalDeviceDescriptorIndexingFeatur… in ValidateShaderCapabilities()
1608 …{spv::CapabilityUniformTexelBufferArrayDynamicIndexingEXT, {"VkPhysicalDeviceDescriptorIndexingFea… in ValidateShaderCapabilities()
1609 …{spv::CapabilityStorageTexelBufferArrayDynamicIndexingEXT, {"VkPhysicalDeviceDescriptorIndexingFea… in ValidateShaderCapabilities()
1610 …{spv::CapabilityUniformBufferArrayNonUniformIndexingEXT, {"VkPhysicalDeviceDescriptorIndexingFeatu… in ValidateShaderCapabilities()
1611 …{spv::CapabilitySampledImageArrayNonUniformIndexingEXT, {"VkPhysicalDeviceDescriptorIndexingFeatur… in ValidateShaderCapabilities()
1612 …{spv::CapabilityStorageBufferArrayNonUniformIndexingEXT, {"VkPhysicalDeviceDescriptorIndexingFeatu… in ValidateShaderCapabilities()
1613 …{spv::CapabilityStorageImageArrayNonUniformIndexingEXT, {"VkPhysicalDeviceDescriptorIndexingFeatur… in ValidateShaderCapabilities()
1614 …{spv::CapabilityInputAttachmentArrayNonUniformIndexingEXT, {"VkPhysicalDeviceDescriptorIndexingFea… in ValidateShaderCapabilities()
1615 …{spv::CapabilityUniformTexelBufferArrayNonUniformIndexingEXT, {"VkPhysicalDeviceDescriptorIndexing… in ValidateShaderCapabilities()
1616 …{spv::CapabilityStorageTexelBufferArrayNonUniformIndexingEXT, {"VkPhysicalDeviceDescriptorIndexing… in ValidateShaderCapabilities()
1619 …{spv::CapabilityDrawParameters, {VK_KHR_SHADER_DRAW_PARAMETERS_EXTENSION_NAME, nullptr, &DeviceExt… in ValidateShaderCapabilities()
1620 …{spv::CapabilityGeometryShaderPassthroughNV, {VK_NV_GEOMETRY_SHADER_PASSTHROUGH_EXTENSION_NAME, nu… in ValidateShaderCapabilities()
1621 …{spv::CapabilitySampleMaskOverrideCoverageNV, {VK_NV_SAMPLE_MASK_OVERRIDE_COVERAGE_EXTENSION_NAME,… in ValidateShaderCapabilities()
1622 …{spv::CapabilityShaderViewportIndexLayerEXT, {VK_EXT_SHADER_VIEWPORT_INDEX_LAYER_EXTENSION_NAME, n… in ValidateShaderCapabilities()
1623 …{spv::CapabilityShaderViewportIndexLayerNV, {VK_NV_VIEWPORT_ARRAY2_EXTENSION_NAME, nullptr, &Devic… in ValidateShaderCapabilities()
1624 …{spv::CapabilityShaderViewportMaskNV, {VK_NV_VIEWPORT_ARRAY2_EXTENSION_NAME, nullptr, &DeviceExten… in ValidateShaderCapabilities()
1625 …{spv::CapabilitySubgroupBallotKHR, {VK_EXT_SHADER_SUBGROUP_BALLOT_EXTENSION_NAME, nullptr, &Device… in ValidateShaderCapabilities()
1626 …{spv::CapabilitySubgroupVoteKHR, {VK_EXT_SHADER_SUBGROUP_VOTE_EXTENSION_NAME, nullptr, &DeviceExte… in ValidateShaderCapabilities()
1627 …{spv::CapabilityGroupNonUniformPartitionedNV, {VK_NV_SHADER_SUBGROUP_PARTITIONED_EXTENSION_NAME, n… in ValidateShaderCapabilities()
1628 …{spv::CapabilityInt64Atomics, {VK_KHR_SHADER_ATOMIC_INT64_EXTENSION_NAME, nullptr, &DeviceExtensio… in ValidateShaderCapabilities()
1630 …{spv::CapabilityComputeDerivativeGroupQuadsNV, {"VkPhysicalDeviceComputeShaderDerivativesFeaturesN… in ValidateShaderCapabilities()
1631 …{spv::CapabilityComputeDerivativeGroupLinearNV, {"VkPhysicalDeviceComputeShaderDerivativesFeatures… in ValidateShaderCapabilities()
1632 …{spv::CapabilityFragmentBarycentricNV, {"VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV::frag… in ValidateShaderCapabilities()
1634 …{spv::CapabilityStorageBuffer8BitAccess, {"VkPhysicalDevice8BitStorageFeaturesKHR::storageBuffer8B… in ValidateShaderCapabilities()
1635 …{spv::CapabilityUniformAndStorageBuffer8BitAccess, {"VkPhysicalDevice8BitStorageFeaturesKHR::unifo… in ValidateShaderCapabilities()
1636 …{spv::CapabilityStoragePushConstant8, {"VkPhysicalDevice8BitStorageFeaturesKHR::storagePushConstan… in ValidateShaderCapabilities()
1638 …{spv::CapabilityTransformFeedback, { "VkPhysicalDeviceTransformFeedbackFeaturesEXT::transformFeedb… in ValidateShaderCapabilities()
1639 …{spv::CapabilityGeometryStreams, { "VkPhysicalDeviceTransformFeedbackFeaturesEXT::geometryStreams"… in ValidateShaderCapabilities()
1641 …{spv::CapabilityFloat16, {"VkPhysicalDeviceFloat16Int8FeaturesKHR::shaderFloat16", &VkPhysicalDevi… in ValidateShaderCapabilities()
1642 …{spv::CapabilityInt8, {"VkPhysicalDeviceFloat16Int8FeaturesKHR::shaderInt8", &VkPhysicalDeviceFloa… in ValidateShaderCapabilities()
1644 …{spv::CapabilityImageFootprintNV, {"VkPhysicalDeviceShaderImageFootprintFeaturesNV::imageFootprint… in ValidateShaderCapabilities()
1646 …{spv::CapabilityCooperativeMatrixNV, {"VkPhysicalDeviceCooperativeMatrixFeaturesNV::cooperativeMat… in ValidateShaderCapabilities()
1648 …{spv::CapabilitySignedZeroInfNanPreserve, {"VkPhysicalDeviceFloatControlsPropertiesKHR::shaderSign… in ValidateShaderCapabilities()
1649 …{spv::CapabilitySignedZeroInfNanPreserve, {"VkPhysicalDeviceFloatControlsPropertiesKHR::shaderSign… in ValidateShaderCapabilities()
1650 …{spv::CapabilitySignedZeroInfNanPreserve, {"VkPhysicalDeviceFloatControlsPropertiesKHR::shaderSign… in ValidateShaderCapabilities()
1651 …{spv::CapabilityDenormPreserve, {"VkPhysicalDeviceFloatControlsPropertiesKHR::shaderDenormPreserve… in ValidateShaderCapabilities()
1652 …{spv::CapabilityDenormPreserve, {"VkPhysicalDeviceFloatControlsPropertiesKHR::shaderDenormPreserve… in ValidateShaderCapabilities()
1653 …{spv::CapabilityDenormPreserve, {"VkPhysicalDeviceFloatControlsPropertiesKHR::shaderDenormPreserve… in ValidateShaderCapabilities()
1654 …{spv::CapabilityDenormFlushToZero, {"VkPhysicalDeviceFloatControlsPropertiesKHR::shaderDenormFlush… in ValidateShaderCapabilities()
1655 …{spv::CapabilityDenormFlushToZero, {"VkPhysicalDeviceFloatControlsPropertiesKHR::shaderDenormFlush… in ValidateShaderCapabilities()
1656 …{spv::CapabilityDenormFlushToZero, {"VkPhysicalDeviceFloatControlsPropertiesKHR::shaderDenormFlush… in ValidateShaderCapabilities()
1657 …{spv::CapabilityRoundingModeRTE, {"VkPhysicalDeviceFloatControlsPropertiesKHR::shaderRoundingModeR… in ValidateShaderCapabilities()
1658 …{spv::CapabilityRoundingModeRTE, {"VkPhysicalDeviceFloatControlsPropertiesKHR::shaderRoundingModeR… in ValidateShaderCapabilities()
1659 …{spv::CapabilityRoundingModeRTE, {"VkPhysicalDeviceFloatControlsPropertiesKHR::shaderRoundingModeR… in ValidateShaderCapabilities()
1660 …{spv::CapabilityRoundingModeRTZ, {"VkPhysicalDeviceFloatControlsPropertiesKHR::shaderRoundingModeR… in ValidateShaderCapabilities()
1661 …{spv::CapabilityRoundingModeRTZ, {"VkPhysicalDeviceFloatControlsPropertiesKHR::shaderRoundingModeR… in ValidateShaderCapabilities()
1662 …{spv::CapabilityRoundingModeRTZ, {"VkPhysicalDeviceFloatControlsPropertiesKHR::shaderRoundingModeR… in ValidateShaderCapabilities()
1664 …{spv::CapabilityFragmentShaderSampleInterlockEXT, {"VkPhysicalDeviceFragmentShaderInterlockF… in ValidateShaderCapabilities()
1665 …{spv::CapabilityFragmentShaderPixelInterlockEXT, {"VkPhysicalDeviceFragmentShaderInterlockF… in ValidateShaderCapabilities()
1666 …{spv::CapabilityFragmentShaderShadingRateInterlockEXT, {"VkPhysicalDeviceFragmentShaderInterlockF… in ValidateShaderCapabilities()
1667 …{spv::CapabilityDemoteToHelperInvocationEXT, {"VkPhysicalDeviceShaderDemoteToHelperInvocatio… in ValidateShaderCapabilities()
1672 if (insn.opcode() == spv::OpCapability) { in ValidateShaderCapabilities()
1719 case spv::CapabilityGroupNonUniform: in ValidateShaderCapabilities()
1720 case spv::CapabilityGroupNonUniformVote: in ValidateShaderCapabilities()
1721 case spv::CapabilityGroupNonUniformArithmetic: in ValidateShaderCapabilities()
1722 case spv::CapabilityGroupNonUniformBallot: in ValidateShaderCapabilities()
1723 case spv::CapabilityGroupNonUniformShuffle: in ValidateShaderCapabilities()
1724 case spv::CapabilityGroupNonUniformShuffleRelative: in ValidateShaderCapabilities()
1725 case spv::CapabilityGroupNonUniformClustered: in ValidateShaderCapabilities()
1726 case spv::CapabilityGroupNonUniformQuad: in ValidateShaderCapabilities()
1727 case spv::CapabilityGroupNonUniformPartitionedNV: in ValidateShaderCapabilities()
1736 case spv::CapabilityGroupNonUniform: in ValidateShaderCapabilities()
1741 case spv::CapabilityGroupNonUniformVote: in ValidateShaderCapabilities()
1746 case spv::CapabilityGroupNonUniformArithmetic: in ValidateShaderCapabilities()
1751 case spv::CapabilityGroupNonUniformBallot: in ValidateShaderCapabilities()
1756 case spv::CapabilityGroupNonUniformShuffle: in ValidateShaderCapabilities()
1761 case spv::CapabilityGroupNonUniformShuffleRelative: in ValidateShaderCapabilities()
1766 case spv::CapabilityGroupNonUniformClustered: in ValidateShaderCapabilities()
1771 case spv::CapabilityGroupNonUniformQuad: in ValidateShaderCapabilities()
1776 case spv::CapabilityGroupNonUniformPartitionedNV: in ValidateShaderCapabilities()
1832 case spv::OpGroupNonUniformQuadBroadcast: in ValidateShaderStageGroupNonUniform()
1833 case spv::OpGroupNonUniformQuadSwap: in ValidateShaderStageGroupNonUniform()
1868 case spv::OpDecorate: in ValidateShaderStageInputOutputLimits()
1870 case spv::DecorationPatch: { in ValidateShaderStageInputOutputLimits()
1879 case spv::OpVariable: { in ValidateShaderStageInputOutputLimits()
1882 … if (var.storageClass == spv::StorageClassInput || var.storageClass == spv::StorageClassOutput) { in ValidateShaderStageInputOutputLimits()
1889 case spv::OpExecutionMode: in ValidateShaderStageInputOutputLimits()
1894 case spv::ExecutionModeOutputVertices: in ValidateShaderStageInputOutputLimits()
1918 if (var.storageClass == spv::StorageClassInput) { in ValidateShaderStageInputOutputLimits()
2048 if (type_id.opcode() != spv::OpTypeInt || type_id.word(2) != 32) { in GetIntConstantValue()
2052 case spv::OpSpecConstant: in GetIntConstantValue()
2056 case spv::OpConstant: in GetIntConstantValue()
2067 case spv::OpTypeInt: in GetComponentType()
2080 case spv::OpTypeFloat: in GetComponentType()
2149 case spv::OpLoad: in ValidateCooperativeMatrix()
2150 case spv::OpCooperativeMatrixLoadNV: in ValidateCooperativeMatrix()
2151 case spv::OpCooperativeMatrixMulAddNV: in ValidateCooperativeMatrix()
2152 case spv::OpSNegate: in ValidateCooperativeMatrix()
2153 case spv::OpFNegate: in ValidateCooperativeMatrix()
2154 case spv::OpIAdd: in ValidateCooperativeMatrix()
2155 case spv::OpFAdd: in ValidateCooperativeMatrix()
2156 case spv::OpISub: in ValidateCooperativeMatrix()
2157 case spv::OpFSub: in ValidateCooperativeMatrix()
2158 case spv::OpFDiv: in ValidateCooperativeMatrix()
2159 case spv::OpSDiv: in ValidateCooperativeMatrix()
2160 case spv::OpUDiv: in ValidateCooperativeMatrix()
2161 case spv::OpMatrixTimesScalar: in ValidateCooperativeMatrix()
2162 case spv::OpConstantComposite: in ValidateCooperativeMatrix()
2163 case spv::OpCompositeConstruct: in ValidateCooperativeMatrix()
2164 case spv::OpConvertFToU: in ValidateCooperativeMatrix()
2165 case spv::OpConvertFToS: in ValidateCooperativeMatrix()
2166 case spv::OpConvertSToF: in ValidateCooperativeMatrix()
2167 case spv::OpConvertUToF: in ValidateCooperativeMatrix()
2168 case spv::OpUConvert: in ValidateCooperativeMatrix()
2169 case spv::OpSConvert: in ValidateCooperativeMatrix()
2170 case spv::OpFConvert: in ValidateCooperativeMatrix()
2178 case spv::OpDecorate: in ValidateCooperativeMatrix()
2179 if (insn.word(2) == spv::DecorationSpecId) { in ValidateCooperativeMatrix()
2183 case spv::OpCapability: in ValidateCooperativeMatrix()
2184 if (insn.word(1) == spv::CapabilityCooperativeMatrixNV) { in ValidateCooperativeMatrix()
2196 case spv::OpMemoryModel: in ValidateCooperativeMatrix()
2203 case spv::OpTypeCooperativeMatrixNV: { in ValidateCooperativeMatrix()
2246 case spv::OpCooperativeMatrixMulAddNV: { in ValidateCooperativeMatrix()
2308 …std::pair<spv::ExecutionMode, uint32_t> first_denorm_execution_mode = std::make_pair(spv::Executio… in ValidateExecutionModes()
2312 …std::pair<spv::ExecutionMode, uint32_t> first_rounding_mode = std::make_pair(spv::ExecutionModeMax… in ValidateExecutionModes()
2320 if (insn.opcode() == spv::OpExecutionMode && insn.word(1) == entrypoint_id) { in ValidateExecutionModes()
2323 case spv::ExecutionModeSignedZeroInfNanPreserve: { in ValidateExecutionModes()
2337 case spv::ExecutionModeDenormPreserve: { in ValidateExecutionModes()
2348 if (first_denorm_execution_mode.first == spv::ExecutionModeMax) { in ValidateExecutionModes()
2350 … first_denorm_execution_mode = std::make_pair(static_cast<spv::ExecutionMode>(mode), bit_width); in ValidateExecutionModes()
2381 case spv::ExecutionModeDenormFlushToZero: { in ValidateExecutionModes()
2392 if (first_denorm_execution_mode.first == spv::ExecutionModeMax) { in ValidateExecutionModes()
2394 … first_denorm_execution_mode = std::make_pair(static_cast<spv::ExecutionMode>(mode), bit_width); in ValidateExecutionModes()
2425 case spv::ExecutionModeRoundingModeRTE: { in ValidateExecutionModes()
2436 if (first_rounding_mode.first == spv::ExecutionModeMax) { in ValidateExecutionModes()
2438 … first_rounding_mode = std::make_pair(static_cast<spv::ExecutionMode>(mode), bit_width); in ValidateExecutionModes()
2469 case spv::ExecutionModeRoundingModeRTZ: { in ValidateExecutionModes()
2480 if (first_rounding_mode.first == spv::ExecutionModeMax) { in ValidateExecutionModes()
2482 … first_rounding_mode = std::make_pair(static_cast<spv::ExecutionMode>(mode), bit_width); in ValidateExecutionModes()
2513 case spv::ExecutionModeOutputVertices: { in ValidateExecutionModes()
2518 case spv::ExecutionModeInvocations: { in ValidateExecutionModes()
2526 if (entrypoint.word(1) == spv::ExecutionModelGeometry) { in ValidateExecutionModes()
2555 case spv::OpTypeArray: in DescriptorTypeToReqs()
2556 case spv::OpTypeRuntimeArray: in DescriptorTypeToReqs()
2557 case spv::OpTypeSampledImage: in DescriptorTypeToReqs()
2560 case spv::OpTypePointer: in DescriptorTypeToReqs()
2563 case spv::OpTypeImage: { in DescriptorTypeToReqs()
2584 case spv::Dim1D: in DescriptorTypeToReqs()
2587 case spv::Dim2D: in DescriptorTypeToReqs()
2591 case spv::Dim3D: in DescriptorTypeToReqs()
2594 case spv::DimCube: in DescriptorTypeToReqs()
2597 case spv::DimSubpassData: in DescriptorTypeToReqs()
2623 if (insn.opcode() == spv::OpEntryPoint) { in FindLocalSize()
2629 if (insn1.opcode() == spv::OpExecutionMode && insn1.word(1) == entrypoint_id && in FindLocalSize()
2630 insn1.word(2) == spv::ExecutionModeLocalSize) { in FindLocalSize()
2648 if (insn.opcode() == spv::OpExecutionMode && insn.word(1) == entrypoint_id) { in ProcessExecutionModes()
2650 case spv::ExecutionModePointMode: in ProcessExecutionModes()
2655 case spv::ExecutionModeOutputPoints: in ProcessExecutionModes()
2659 case spv::ExecutionModeIsolines: in ProcessExecutionModes()
2660 case spv::ExecutionModeOutputLineStrip: in ProcessExecutionModes()
2664 case spv::ExecutionModeTriangles: in ProcessExecutionModes()
2665 case spv::ExecutionModeQuads: in ProcessExecutionModes()
2666 case spv::ExecutionModeOutputTriangleStrip: in ProcessExecutionModes()
2695 while (!pointsize_written && (insn.opcode() != spv::OpFunction)) { in ValidatePointListShaderState()
2696 if (insn.opcode() == spv::OpMemberDecorate) { in ValidatePointListShaderState()
2697 if (insn.word(3) == spv::DecorationBuiltIn) { in ValidatePointListShaderState()
2698 if (insn.word(4) == spv::BuiltInPointSize) { in ValidatePointListShaderState()
2702 } else if (insn.opcode() == spv::OpDecorate) { in ValidatePointListShaderState()
2703 if (insn.word(2) == spv::DecorationBuiltIn) { in ValidatePointListShaderState()
2704 if (insn.word(3) == spv::BuiltInPointSize) { in ValidatePointListShaderState()
2865 …CollectInterfaceByLocation(producer, producer_entrypoint, spv::StorageClassOutput, producer_stage-… in ValidateInterfaceBetweenStages()
2866 …auto inputs = CollectInterfaceByLocation(consumer, consumer_entrypoint, spv::StorageClassInput, co… in ValidateInterfaceBetweenStages()
2923 …auto builtins_producer = CollectBuiltinBlockMembers(producer, producer_entrypoint, spv::StorageCla… in ValidateInterfaceBetweenStages()
2924 …auto builtins_consumer = CollectBuiltinBlockMembers(consumer, consumer_entrypoint, spv::StorageCla… in ValidateInterfaceBetweenStages()
3119 if (!have_glsl_shader || (pCreateInfo->pCode[0] == spv::MagicNumber)) { in PreCallValidateCreateShaderModule()
3157 bool is_spirv = (pCreateInfo->pCode[0] == spv::MagicNumber); in PostCallRecordCreateShaderModule()