packages feed

spirv-enum (empty) → 0.1.0.0

raw patch · 52 files changed

+7833/−0 lines, 52 filesdep +base

Dependencies added: base

Files

+ spirv-enum.cabal view
@@ -0,0 +1,82 @@+cabal-version: 2.2++-- This file has been generated from package.yaml by hpack version 0.36.0.+--+-- see: https://github.com/sol/hpack++name:           spirv-enum+version:        0.1.0.0+synopsis:       SPIR-V enumerations generated from Khronos JSON.+category:       Graphics+author:         IC Rainbow+maintainer:     aenor.realm@gmail.com+copyright:      2024 IC Rainbow+license:        BSD-3-Clause+build-type:     Simple++source-repository head+  type: git+  location: https://gitlab.com/dpwiz/spirv-headers++library+  exposed-modules:+      Data.SpirV.Enum+      Data.SpirV.Enum.AccessQualifier+      Data.SpirV.Enum.AddressingModel+      Data.SpirV.Enum.BuiltIn+      Data.SpirV.Enum.Capability+      Data.SpirV.Enum.CooperativeMatrixLayout+      Data.SpirV.Enum.CooperativeMatrixOperands+      Data.SpirV.Enum.CooperativeMatrixUse+      Data.SpirV.Enum.Decoration+      Data.SpirV.Enum.Dim+      Data.SpirV.Enum.ExecutionMode+      Data.SpirV.Enum.ExecutionModel+      Data.SpirV.Enum.FPDenormMode+      Data.SpirV.Enum.FPFastMathMode+      Data.SpirV.Enum.FPOperationMode+      Data.SpirV.Enum.FPRoundingMode+      Data.SpirV.Enum.FragmentShadingRate+      Data.SpirV.Enum.FunctionControl+      Data.SpirV.Enum.FunctionParameterAttribute+      Data.SpirV.Enum.GroupOperation+      Data.SpirV.Enum.HostAccessQualifier+      Data.SpirV.Enum.ImageChannelDataType+      Data.SpirV.Enum.ImageChannelOrder+      Data.SpirV.Enum.ImageFormat+      Data.SpirV.Enum.ImageOperands+      Data.SpirV.Enum.InitializationModeQualifier+      Data.SpirV.Enum.KernelEnqueueFlags+      Data.SpirV.Enum.KernelProfilingInfo+      Data.SpirV.Enum.LinkageType+      Data.SpirV.Enum.LoadCacheControl+      Data.SpirV.Enum.LoopControl+      Data.SpirV.Enum.MemoryAccess+      Data.SpirV.Enum.MemoryModel+      Data.SpirV.Enum.MemorySemantics+      Data.SpirV.Enum.NamedMaximumNumberOfRegisters+      Data.SpirV.Enum.Op+      Data.SpirV.Enum.OverflowModes+      Data.SpirV.Enum.PackedVectorFormat+      Data.SpirV.Enum.QuantizationModes+      Data.SpirV.Enum.RawAccessChainOperands+      Data.SpirV.Enum.RayFlags+      Data.SpirV.Enum.RayQueryCandidateIntersectionType+      Data.SpirV.Enum.RayQueryCommittedIntersectionType+      Data.SpirV.Enum.RayQueryIntersection+      Data.SpirV.Enum.SamplerAddressingMode+      Data.SpirV.Enum.SamplerFilterMode+      Data.SpirV.Enum.Scope+      Data.SpirV.Enum.SelectionControl+      Data.SpirV.Enum.SourceLanguage+      Data.SpirV.Enum.StorageClass+      Data.SpirV.Enum.StoreCacheControl+  other-modules:+      Paths_spirv_enum+  autogen-modules:+      Paths_spirv_enum+  hs-source-dirs:+      src+  build-depends:+      base >=4.7 && <5+  default-language: Haskell2010
+ src/Data/SpirV/Enum.hs view
@@ -0,0 +1,103 @@+module Data.SpirV.Enum+  ( module Data.SpirV.Enum.AccessQualifier+  , module Data.SpirV.Enum.AddressingModel+  , module Data.SpirV.Enum.BuiltIn+  , module Data.SpirV.Enum.Capability+  , module Data.SpirV.Enum.CooperativeMatrixLayout+  , module Data.SpirV.Enum.CooperativeMatrixOperands+  , module Data.SpirV.Enum.CooperativeMatrixUse+  , module Data.SpirV.Enum.Decoration+  , module Data.SpirV.Enum.Dim+  , module Data.SpirV.Enum.ExecutionMode+  , module Data.SpirV.Enum.ExecutionModel+  , module Data.SpirV.Enum.FPDenormMode+  , module Data.SpirV.Enum.FPFastMathMode+  , module Data.SpirV.Enum.FPOperationMode+  , module Data.SpirV.Enum.FPRoundingMode+  , module Data.SpirV.Enum.FragmentShadingRate+  , module Data.SpirV.Enum.FunctionControl+  , module Data.SpirV.Enum.FunctionParameterAttribute+  , module Data.SpirV.Enum.GroupOperation+  , module Data.SpirV.Enum.HostAccessQualifier+  , module Data.SpirV.Enum.ImageChannelDataType+  , module Data.SpirV.Enum.ImageChannelOrder+  , module Data.SpirV.Enum.ImageFormat+  , module Data.SpirV.Enum.ImageOperands+  , module Data.SpirV.Enum.InitializationModeQualifier+  , module Data.SpirV.Enum.KernelEnqueueFlags+  , module Data.SpirV.Enum.KernelProfilingInfo+  , module Data.SpirV.Enum.LinkageType+  , module Data.SpirV.Enum.LoadCacheControl+  , module Data.SpirV.Enum.LoopControl+  , module Data.SpirV.Enum.MemoryAccess+  , module Data.SpirV.Enum.MemoryModel+  , module Data.SpirV.Enum.MemorySemantics+  , module Data.SpirV.Enum.NamedMaximumNumberOfRegisters+  , module Data.SpirV.Enum.Op+  , module Data.SpirV.Enum.OverflowModes+  , module Data.SpirV.Enum.PackedVectorFormat+  , module Data.SpirV.Enum.QuantizationModes+  , module Data.SpirV.Enum.RawAccessChainOperands+  , module Data.SpirV.Enum.RayFlags+  , module Data.SpirV.Enum.RayQueryCandidateIntersectionType+  , module Data.SpirV.Enum.RayQueryCommittedIntersectionType+  , module Data.SpirV.Enum.RayQueryIntersection+  , module Data.SpirV.Enum.SamplerAddressingMode+  , module Data.SpirV.Enum.SamplerFilterMode+  , module Data.SpirV.Enum.Scope+  , module Data.SpirV.Enum.SelectionControl+  , module Data.SpirV.Enum.SourceLanguage+  , module Data.SpirV.Enum.StorageClass+  , module Data.SpirV.Enum.StoreCacheControl+  ) where++import Data.SpirV.Enum.AccessQualifier (AccessQualifier(..))+import Data.SpirV.Enum.AddressingModel (AddressingModel(..))+import Data.SpirV.Enum.BuiltIn (BuiltIn(..))+import Data.SpirV.Enum.Capability (Capability(..))+import Data.SpirV.Enum.CooperativeMatrixLayout (CooperativeMatrixLayout(..))+import Data.SpirV.Enum.CooperativeMatrixOperands (CooperativeMatrixOperands, CooperativeMatrixOperandsBits(..))+import Data.SpirV.Enum.CooperativeMatrixUse (CooperativeMatrixUse(..))+import Data.SpirV.Enum.Decoration (Decoration(..))+import Data.SpirV.Enum.Dim (Dim(..))+import Data.SpirV.Enum.ExecutionMode (ExecutionMode(..))+import Data.SpirV.Enum.ExecutionModel (ExecutionModel(..))+import Data.SpirV.Enum.FPDenormMode (FPDenormMode(..))+import Data.SpirV.Enum.FPFastMathMode (FPFastMathMode, FPFastMathModeBits(..))+import Data.SpirV.Enum.FPOperationMode (FPOperationMode(..))+import Data.SpirV.Enum.FPRoundingMode (FPRoundingMode(..))+import Data.SpirV.Enum.FragmentShadingRate (FragmentShadingRate, FragmentShadingRateBits(..))+import Data.SpirV.Enum.FunctionControl (FunctionControl, FunctionControlBits(..))+import Data.SpirV.Enum.FunctionParameterAttribute (FunctionParameterAttribute(..))+import Data.SpirV.Enum.GroupOperation (GroupOperation(..))+import Data.SpirV.Enum.HostAccessQualifier (HostAccessQualifier(..))+import Data.SpirV.Enum.ImageChannelDataType (ImageChannelDataType(..))+import Data.SpirV.Enum.ImageChannelOrder (ImageChannelOrder(..))+import Data.SpirV.Enum.ImageFormat (ImageFormat(..))+import Data.SpirV.Enum.ImageOperands (ImageOperands, ImageOperandsBits(..))+import Data.SpirV.Enum.InitializationModeQualifier (InitializationModeQualifier(..))+import Data.SpirV.Enum.KernelEnqueueFlags (KernelEnqueueFlags(..))+import Data.SpirV.Enum.KernelProfilingInfo (KernelProfilingInfo, KernelProfilingInfoBits(..))+import Data.SpirV.Enum.LinkageType (LinkageType(..))+import Data.SpirV.Enum.LoadCacheControl (LoadCacheControl(..))+import Data.SpirV.Enum.LoopControl (LoopControl, LoopControlBits(..))+import Data.SpirV.Enum.MemoryAccess (MemoryAccess, MemoryAccessBits(..))+import Data.SpirV.Enum.MemoryModel (MemoryModel(..))+import Data.SpirV.Enum.MemorySemantics (MemorySemantics, MemorySemanticsBits(..))+import Data.SpirV.Enum.NamedMaximumNumberOfRegisters (NamedMaximumNumberOfRegisters(..))+import Data.SpirV.Enum.Op (Op(..))+import Data.SpirV.Enum.OverflowModes (OverflowModes(..))+import Data.SpirV.Enum.PackedVectorFormat (PackedVectorFormat(..))+import Data.SpirV.Enum.QuantizationModes (QuantizationModes(..))+import Data.SpirV.Enum.RawAccessChainOperands (RawAccessChainOperands, RawAccessChainOperandsBits(..))+import Data.SpirV.Enum.RayFlags (RayFlags, RayFlagsBits(..))+import Data.SpirV.Enum.RayQueryCandidateIntersectionType (RayQueryCandidateIntersectionType(..))+import Data.SpirV.Enum.RayQueryCommittedIntersectionType (RayQueryCommittedIntersectionType(..))+import Data.SpirV.Enum.RayQueryIntersection (RayQueryIntersection(..))+import Data.SpirV.Enum.SamplerAddressingMode (SamplerAddressingMode(..))+import Data.SpirV.Enum.SamplerFilterMode (SamplerFilterMode(..))+import Data.SpirV.Enum.Scope (Scope(..))+import Data.SpirV.Enum.SelectionControl (SelectionControl, SelectionControlBits(..))+import Data.SpirV.Enum.SourceLanguage (SourceLanguage(..))+import Data.SpirV.Enum.StorageClass (StorageClass(..))+import Data.SpirV.Enum.StoreCacheControl (StoreCacheControl(..))
+ src/Data/SpirV/Enum/AccessQualifier.hs view
@@ -0,0 +1,28 @@+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE TypeSynonymInstances #-}++module Data.SpirV.Enum.AccessQualifier where++import Data.Int (Int32)+import Foreign.Storable (Storable)++newtype AccessQualifier = AccessQualifier Int32+  deriving newtype (Eq, Ord, Storable)++instance Show AccessQualifier where+  showsPrec p (AccessQualifier v) = case v of+    0 -> showString "ReadOnly"+    1 -> showString "WriteOnly"+    2 -> showString "ReadWrite"+    x -> showParen (p > 10) $ showString "AccessQualifier " . showsPrec (p + 1) x++pattern ReadOnly :: AccessQualifier+pattern ReadOnly = AccessQualifier 0++pattern WriteOnly :: AccessQualifier+pattern WriteOnly = AccessQualifier 1++pattern ReadWrite :: AccessQualifier+pattern ReadWrite = AccessQualifier 2
+ src/Data/SpirV/Enum/AddressingModel.hs view
@@ -0,0 +1,35 @@+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE TypeSynonymInstances #-}++module Data.SpirV.Enum.AddressingModel where++import Data.Int (Int32)+import Foreign.Storable (Storable)++newtype AddressingModel = AddressingModel Int32+  deriving newtype (Eq, Ord, Storable)++instance Show AddressingModel where+  showsPrec p (AddressingModel v) = case v of+    0 -> showString "Logical"+    1 -> showString "Physical32"+    2 -> showString "Physical64"+    5348 -> showString "PhysicalStorageBuffer64"+    x -> showParen (p > 10) $ showString "AddressingModel " . showsPrec (p + 1) x++pattern Logical :: AddressingModel+pattern Logical = AddressingModel 0++pattern Physical32 :: AddressingModel+pattern Physical32 = AddressingModel 1++pattern Physical64 :: AddressingModel+pattern Physical64 = AddressingModel 2++pattern PhysicalStorageBuffer64 :: AddressingModel+pattern PhysicalStorageBuffer64 = AddressingModel 5348++pattern PhysicalStorageBuffer64EXT :: AddressingModel+pattern PhysicalStorageBuffer64EXT = AddressingModel 5348
+ src/Data/SpirV/Enum/BuiltIn.hs view
@@ -0,0 +1,546 @@+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE TypeSynonymInstances #-}++module Data.SpirV.Enum.BuiltIn where++import Data.Int (Int32)+import Foreign.Storable (Storable)++newtype BuiltIn = BuiltIn Int32+  deriving newtype (Eq, Ord, Storable)++instance Show BuiltIn where+  showsPrec p (BuiltIn v) = case v of+    0 -> showString "Position"+    1 -> showString "PointSize"+    3 -> showString "ClipDistance"+    4 -> showString "CullDistance"+    5 -> showString "VertexId"+    6 -> showString "InstanceId"+    7 -> showString "PrimitiveId"+    8 -> showString "InvocationId"+    9 -> showString "Layer"+    10 -> showString "ViewportIndex"+    11 -> showString "TessLevelOuter"+    12 -> showString "TessLevelInner"+    13 -> showString "TessCoord"+    14 -> showString "PatchVertices"+    15 -> showString "FragCoord"+    16 -> showString "PointCoord"+    17 -> showString "FrontFacing"+    18 -> showString "SampleId"+    19 -> showString "SamplePosition"+    20 -> showString "SampleMask"+    22 -> showString "FragDepth"+    23 -> showString "HelperInvocation"+    24 -> showString "NumWorkgroups"+    25 -> showString "WorkgroupSize"+    26 -> showString "WorkgroupId"+    27 -> showString "LocalInvocationId"+    28 -> showString "GlobalInvocationId"+    29 -> showString "LocalInvocationIndex"+    30 -> showString "WorkDim"+    31 -> showString "GlobalSize"+    32 -> showString "EnqueuedWorkgroupSize"+    33 -> showString "GlobalOffset"+    34 -> showString "GlobalLinearId"+    36 -> showString "SubgroupSize"+    37 -> showString "SubgroupMaxSize"+    38 -> showString "NumSubgroups"+    39 -> showString "NumEnqueuedSubgroups"+    40 -> showString "SubgroupId"+    41 -> showString "SubgroupLocalInvocationId"+    42 -> showString "VertexIndex"+    43 -> showString "InstanceIndex"+    4160 -> showString "CoreIDARM"+    4161 -> showString "CoreCountARM"+    4162 -> showString "CoreMaxIDARM"+    4163 -> showString "WarpIDARM"+    4164 -> showString "WarpMaxIDARM"+    4416 -> showString "SubgroupEqMask"+    4417 -> showString "SubgroupGeMask"+    4418 -> showString "SubgroupGtMask"+    4419 -> showString "SubgroupLeMask"+    4420 -> showString "SubgroupLtMask"+    4424 -> showString "BaseVertex"+    4425 -> showString "BaseInstance"+    4426 -> showString "DrawIndex"+    4432 -> showString "PrimitiveShadingRateKHR"+    4438 -> showString "DeviceIndex"+    4440 -> showString "ViewIndex"+    4444 -> showString "ShadingRateKHR"+    4992 -> showString "BaryCoordNoPerspAMD"+    4993 -> showString "BaryCoordNoPerspCentroidAMD"+    4994 -> showString "BaryCoordNoPerspSampleAMD"+    4995 -> showString "BaryCoordSmoothAMD"+    4996 -> showString "BaryCoordSmoothCentroidAMD"+    4997 -> showString "BaryCoordSmoothSampleAMD"+    4998 -> showString "BaryCoordPullModelAMD"+    5014 -> showString "FragStencilRefEXT"+    5021 -> showString "CoalescedInputCountAMDX"+    5073 -> showString "ShaderIndexAMDX"+    5253 -> showString "ViewportMaskNV"+    5257 -> showString "SecondaryPositionNV"+    5258 -> showString "SecondaryViewportMaskNV"+    5261 -> showString "PositionPerViewNV"+    5262 -> showString "ViewportMaskPerViewNV"+    5264 -> showString "FullyCoveredEXT"+    5274 -> showString "TaskCountNV"+    5275 -> showString "PrimitiveCountNV"+    5276 -> showString "PrimitiveIndicesNV"+    5277 -> showString "ClipDistancePerViewNV"+    5278 -> showString "CullDistancePerViewNV"+    5279 -> showString "LayerPerViewNV"+    5280 -> showString "MeshViewCountNV"+    5281 -> showString "MeshViewIndicesNV"+    5286 -> showString "BaryCoordKHR"+    5287 -> showString "BaryCoordNoPerspKHR"+    5292 -> showString "FragSizeEXT"+    5293 -> showString "FragInvocationCountEXT"+    5294 -> showString "PrimitivePointIndicesEXT"+    5295 -> showString "PrimitiveLineIndicesEXT"+    5296 -> showString "PrimitiveTriangleIndicesEXT"+    5299 -> showString "CullPrimitiveEXT"+    5319 -> showString "LaunchIdKHR"+    5320 -> showString "LaunchSizeKHR"+    5321 -> showString "WorldRayOriginKHR"+    5322 -> showString "WorldRayDirectionKHR"+    5323 -> showString "ObjectRayOriginKHR"+    5324 -> showString "ObjectRayDirectionKHR"+    5325 -> showString "RayTminKHR"+    5326 -> showString "RayTmaxKHR"+    5327 -> showString "InstanceCustomIndexKHR"+    5330 -> showString "ObjectToWorldKHR"+    5331 -> showString "WorldToObjectKHR"+    5332 -> showString "HitTNV"+    5333 -> showString "HitKindKHR"+    5334 -> showString "CurrentRayTimeNV"+    5335 -> showString "HitTriangleVertexPositionsKHR"+    5337 -> showString "HitMicroTriangleVertexPositionsNV"+    5344 -> showString "HitMicroTriangleVertexBarycentricsNV"+    5351 -> showString "IncomingRayFlagsKHR"+    5352 -> showString "RayGeometryIndexKHR"+    5374 -> showString "WarpsPerSMNV"+    5375 -> showString "SMCountNV"+    5376 -> showString "WarpIDNV"+    5377 -> showString "SMIDNV"+    5405 -> showString "HitKindFrontFacingMicroTriangleNV"+    5406 -> showString "HitKindBackFacingMicroTriangleNV"+    6021 -> showString "CullMaskKHR"+    x -> showParen (p > 10) $ showString "BuiltIn " . showsPrec (p + 1) x++pattern Position :: BuiltIn+pattern Position = BuiltIn 0++pattern PointSize :: BuiltIn+pattern PointSize = BuiltIn 1++pattern ClipDistance :: BuiltIn+pattern ClipDistance = BuiltIn 3++pattern CullDistance :: BuiltIn+pattern CullDistance = BuiltIn 4++pattern VertexId :: BuiltIn+pattern VertexId = BuiltIn 5++pattern InstanceId :: BuiltIn+pattern InstanceId = BuiltIn 6++pattern PrimitiveId :: BuiltIn+pattern PrimitiveId = BuiltIn 7++pattern InvocationId :: BuiltIn+pattern InvocationId = BuiltIn 8++pattern Layer :: BuiltIn+pattern Layer = BuiltIn 9++pattern ViewportIndex :: BuiltIn+pattern ViewportIndex = BuiltIn 10++pattern TessLevelOuter :: BuiltIn+pattern TessLevelOuter = BuiltIn 11++pattern TessLevelInner :: BuiltIn+pattern TessLevelInner = BuiltIn 12++pattern TessCoord :: BuiltIn+pattern TessCoord = BuiltIn 13++pattern PatchVertices :: BuiltIn+pattern PatchVertices = BuiltIn 14++pattern FragCoord :: BuiltIn+pattern FragCoord = BuiltIn 15++pattern PointCoord :: BuiltIn+pattern PointCoord = BuiltIn 16++pattern FrontFacing :: BuiltIn+pattern FrontFacing = BuiltIn 17++pattern SampleId :: BuiltIn+pattern SampleId = BuiltIn 18++pattern SamplePosition :: BuiltIn+pattern SamplePosition = BuiltIn 19++pattern SampleMask :: BuiltIn+pattern SampleMask = BuiltIn 20++pattern FragDepth :: BuiltIn+pattern FragDepth = BuiltIn 22++pattern HelperInvocation :: BuiltIn+pattern HelperInvocation = BuiltIn 23++pattern NumWorkgroups :: BuiltIn+pattern NumWorkgroups = BuiltIn 24++pattern WorkgroupSize :: BuiltIn+pattern WorkgroupSize = BuiltIn 25++pattern WorkgroupId :: BuiltIn+pattern WorkgroupId = BuiltIn 26++pattern LocalInvocationId :: BuiltIn+pattern LocalInvocationId = BuiltIn 27++pattern GlobalInvocationId :: BuiltIn+pattern GlobalInvocationId = BuiltIn 28++pattern LocalInvocationIndex :: BuiltIn+pattern LocalInvocationIndex = BuiltIn 29++pattern WorkDim :: BuiltIn+pattern WorkDim = BuiltIn 30++pattern GlobalSize :: BuiltIn+pattern GlobalSize = BuiltIn 31++pattern EnqueuedWorkgroupSize :: BuiltIn+pattern EnqueuedWorkgroupSize = BuiltIn 32++pattern GlobalOffset :: BuiltIn+pattern GlobalOffset = BuiltIn 33++pattern GlobalLinearId :: BuiltIn+pattern GlobalLinearId = BuiltIn 34++pattern SubgroupSize :: BuiltIn+pattern SubgroupSize = BuiltIn 36++pattern SubgroupMaxSize :: BuiltIn+pattern SubgroupMaxSize = BuiltIn 37++pattern NumSubgroups :: BuiltIn+pattern NumSubgroups = BuiltIn 38++pattern NumEnqueuedSubgroups :: BuiltIn+pattern NumEnqueuedSubgroups = BuiltIn 39++pattern SubgroupId :: BuiltIn+pattern SubgroupId = BuiltIn 40++pattern SubgroupLocalInvocationId :: BuiltIn+pattern SubgroupLocalInvocationId = BuiltIn 41++pattern VertexIndex :: BuiltIn+pattern VertexIndex = BuiltIn 42++pattern InstanceIndex :: BuiltIn+pattern InstanceIndex = BuiltIn 43++pattern CoreIDARM :: BuiltIn+pattern CoreIDARM = BuiltIn 4160++pattern CoreCountARM :: BuiltIn+pattern CoreCountARM = BuiltIn 4161++pattern CoreMaxIDARM :: BuiltIn+pattern CoreMaxIDARM = BuiltIn 4162++pattern WarpIDARM :: BuiltIn+pattern WarpIDARM = BuiltIn 4163++pattern WarpMaxIDARM :: BuiltIn+pattern WarpMaxIDARM = BuiltIn 4164++pattern SubgroupEqMask :: BuiltIn+pattern SubgroupEqMask = BuiltIn 4416++pattern SubgroupEqMaskKHR :: BuiltIn+pattern SubgroupEqMaskKHR = BuiltIn 4416++pattern SubgroupGeMask :: BuiltIn+pattern SubgroupGeMask = BuiltIn 4417++pattern SubgroupGeMaskKHR :: BuiltIn+pattern SubgroupGeMaskKHR = BuiltIn 4417++pattern SubgroupGtMask :: BuiltIn+pattern SubgroupGtMask = BuiltIn 4418++pattern SubgroupGtMaskKHR :: BuiltIn+pattern SubgroupGtMaskKHR = BuiltIn 4418++pattern SubgroupLeMask :: BuiltIn+pattern SubgroupLeMask = BuiltIn 4419++pattern SubgroupLeMaskKHR :: BuiltIn+pattern SubgroupLeMaskKHR = BuiltIn 4419++pattern SubgroupLtMask :: BuiltIn+pattern SubgroupLtMask = BuiltIn 4420++pattern SubgroupLtMaskKHR :: BuiltIn+pattern SubgroupLtMaskKHR = BuiltIn 4420++pattern BaseVertex :: BuiltIn+pattern BaseVertex = BuiltIn 4424++pattern BaseInstance :: BuiltIn+pattern BaseInstance = BuiltIn 4425++pattern DrawIndex :: BuiltIn+pattern DrawIndex = BuiltIn 4426++pattern PrimitiveShadingRateKHR :: BuiltIn+pattern PrimitiveShadingRateKHR = BuiltIn 4432++pattern DeviceIndex :: BuiltIn+pattern DeviceIndex = BuiltIn 4438++pattern ViewIndex :: BuiltIn+pattern ViewIndex = BuiltIn 4440++pattern ShadingRateKHR :: BuiltIn+pattern ShadingRateKHR = BuiltIn 4444++pattern BaryCoordNoPerspAMD :: BuiltIn+pattern BaryCoordNoPerspAMD = BuiltIn 4992++pattern BaryCoordNoPerspCentroidAMD :: BuiltIn+pattern BaryCoordNoPerspCentroidAMD = BuiltIn 4993++pattern BaryCoordNoPerspSampleAMD :: BuiltIn+pattern BaryCoordNoPerspSampleAMD = BuiltIn 4994++pattern BaryCoordSmoothAMD :: BuiltIn+pattern BaryCoordSmoothAMD = BuiltIn 4995++pattern BaryCoordSmoothCentroidAMD :: BuiltIn+pattern BaryCoordSmoothCentroidAMD = BuiltIn 4996++pattern BaryCoordSmoothSampleAMD :: BuiltIn+pattern BaryCoordSmoothSampleAMD = BuiltIn 4997++pattern BaryCoordPullModelAMD :: BuiltIn+pattern BaryCoordPullModelAMD = BuiltIn 4998++pattern FragStencilRefEXT :: BuiltIn+pattern FragStencilRefEXT = BuiltIn 5014++pattern CoalescedInputCountAMDX :: BuiltIn+pattern CoalescedInputCountAMDX = BuiltIn 5021++pattern ShaderIndexAMDX :: BuiltIn+pattern ShaderIndexAMDX = BuiltIn 5073++pattern ViewportMaskNV :: BuiltIn+pattern ViewportMaskNV = BuiltIn 5253++pattern SecondaryPositionNV :: BuiltIn+pattern SecondaryPositionNV = BuiltIn 5257++pattern SecondaryViewportMaskNV :: BuiltIn+pattern SecondaryViewportMaskNV = BuiltIn 5258++pattern PositionPerViewNV :: BuiltIn+pattern PositionPerViewNV = BuiltIn 5261++pattern ViewportMaskPerViewNV :: BuiltIn+pattern ViewportMaskPerViewNV = BuiltIn 5262++pattern FullyCoveredEXT :: BuiltIn+pattern FullyCoveredEXT = BuiltIn 5264++pattern TaskCountNV :: BuiltIn+pattern TaskCountNV = BuiltIn 5274++pattern PrimitiveCountNV :: BuiltIn+pattern PrimitiveCountNV = BuiltIn 5275++pattern PrimitiveIndicesNV :: BuiltIn+pattern PrimitiveIndicesNV = BuiltIn 5276++pattern ClipDistancePerViewNV :: BuiltIn+pattern ClipDistancePerViewNV = BuiltIn 5277++pattern CullDistancePerViewNV :: BuiltIn+pattern CullDistancePerViewNV = BuiltIn 5278++pattern LayerPerViewNV :: BuiltIn+pattern LayerPerViewNV = BuiltIn 5279++pattern MeshViewCountNV :: BuiltIn+pattern MeshViewCountNV = BuiltIn 5280++pattern MeshViewIndicesNV :: BuiltIn+pattern MeshViewIndicesNV = BuiltIn 5281++pattern BaryCoordKHR :: BuiltIn+pattern BaryCoordKHR = BuiltIn 5286++pattern BaryCoordNV :: BuiltIn+pattern BaryCoordNV = BuiltIn 5286++pattern BaryCoordNoPerspKHR :: BuiltIn+pattern BaryCoordNoPerspKHR = BuiltIn 5287++pattern BaryCoordNoPerspNV :: BuiltIn+pattern BaryCoordNoPerspNV = BuiltIn 5287++pattern FragSizeEXT :: BuiltIn+pattern FragSizeEXT = BuiltIn 5292++pattern FragmentSizeNV :: BuiltIn+pattern FragmentSizeNV = BuiltIn 5292++pattern FragInvocationCountEXT :: BuiltIn+pattern FragInvocationCountEXT = BuiltIn 5293++pattern InvocationsPerPixelNV :: BuiltIn+pattern InvocationsPerPixelNV = BuiltIn 5293++pattern PrimitivePointIndicesEXT :: BuiltIn+pattern PrimitivePointIndicesEXT = BuiltIn 5294++pattern PrimitiveLineIndicesEXT :: BuiltIn+pattern PrimitiveLineIndicesEXT = BuiltIn 5295++pattern PrimitiveTriangleIndicesEXT :: BuiltIn+pattern PrimitiveTriangleIndicesEXT = BuiltIn 5296++pattern CullPrimitiveEXT :: BuiltIn+pattern CullPrimitiveEXT = BuiltIn 5299++pattern LaunchIdKHR :: BuiltIn+pattern LaunchIdKHR = BuiltIn 5319++pattern LaunchIdNV :: BuiltIn+pattern LaunchIdNV = BuiltIn 5319++pattern LaunchSizeKHR :: BuiltIn+pattern LaunchSizeKHR = BuiltIn 5320++pattern LaunchSizeNV :: BuiltIn+pattern LaunchSizeNV = BuiltIn 5320++pattern WorldRayOriginKHR :: BuiltIn+pattern WorldRayOriginKHR = BuiltIn 5321++pattern WorldRayOriginNV :: BuiltIn+pattern WorldRayOriginNV = BuiltIn 5321++pattern WorldRayDirectionKHR :: BuiltIn+pattern WorldRayDirectionKHR = BuiltIn 5322++pattern WorldRayDirectionNV :: BuiltIn+pattern WorldRayDirectionNV = BuiltIn 5322++pattern ObjectRayOriginKHR :: BuiltIn+pattern ObjectRayOriginKHR = BuiltIn 5323++pattern ObjectRayOriginNV :: BuiltIn+pattern ObjectRayOriginNV = BuiltIn 5323++pattern ObjectRayDirectionKHR :: BuiltIn+pattern ObjectRayDirectionKHR = BuiltIn 5324++pattern ObjectRayDirectionNV :: BuiltIn+pattern ObjectRayDirectionNV = BuiltIn 5324++pattern RayTminKHR :: BuiltIn+pattern RayTminKHR = BuiltIn 5325++pattern RayTminNV :: BuiltIn+pattern RayTminNV = BuiltIn 5325++pattern RayTmaxKHR :: BuiltIn+pattern RayTmaxKHR = BuiltIn 5326++pattern RayTmaxNV :: BuiltIn+pattern RayTmaxNV = BuiltIn 5326++pattern InstanceCustomIndexKHR :: BuiltIn+pattern InstanceCustomIndexKHR = BuiltIn 5327++pattern InstanceCustomIndexNV :: BuiltIn+pattern InstanceCustomIndexNV = BuiltIn 5327++pattern ObjectToWorldKHR :: BuiltIn+pattern ObjectToWorldKHR = BuiltIn 5330++pattern ObjectToWorldNV :: BuiltIn+pattern ObjectToWorldNV = BuiltIn 5330++pattern WorldToObjectKHR :: BuiltIn+pattern WorldToObjectKHR = BuiltIn 5331++pattern WorldToObjectNV :: BuiltIn+pattern WorldToObjectNV = BuiltIn 5331++pattern HitTNV :: BuiltIn+pattern HitTNV = BuiltIn 5332++pattern HitKindKHR :: BuiltIn+pattern HitKindKHR = BuiltIn 5333++pattern HitKindNV :: BuiltIn+pattern HitKindNV = BuiltIn 5333++pattern CurrentRayTimeNV :: BuiltIn+pattern CurrentRayTimeNV = BuiltIn 5334++pattern HitTriangleVertexPositionsKHR :: BuiltIn+pattern HitTriangleVertexPositionsKHR = BuiltIn 5335++pattern HitMicroTriangleVertexPositionsNV :: BuiltIn+pattern HitMicroTriangleVertexPositionsNV = BuiltIn 5337++pattern HitMicroTriangleVertexBarycentricsNV :: BuiltIn+pattern HitMicroTriangleVertexBarycentricsNV = BuiltIn 5344++pattern IncomingRayFlagsKHR :: BuiltIn+pattern IncomingRayFlagsKHR = BuiltIn 5351++pattern IncomingRayFlagsNV :: BuiltIn+pattern IncomingRayFlagsNV = BuiltIn 5351++pattern RayGeometryIndexKHR :: BuiltIn+pattern RayGeometryIndexKHR = BuiltIn 5352++pattern WarpsPerSMNV :: BuiltIn+pattern WarpsPerSMNV = BuiltIn 5374++pattern SMCountNV :: BuiltIn+pattern SMCountNV = BuiltIn 5375++pattern WarpIDNV :: BuiltIn+pattern WarpIDNV = BuiltIn 5376++pattern SMIDNV :: BuiltIn+pattern SMIDNV = BuiltIn 5377++pattern HitKindFrontFacingMicroTriangleNV :: BuiltIn+pattern HitKindFrontFacingMicroTriangleNV = BuiltIn 5405++pattern HitKindBackFacingMicroTriangleNV :: BuiltIn+pattern HitKindBackFacingMicroTriangleNV = BuiltIn 5406++pattern CullMaskKHR :: BuiltIn+pattern CullMaskKHR = BuiltIn 6021
+ src/Data/SpirV/Enum/Capability.hs view
@@ -0,0 +1,1035 @@+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE TypeSynonymInstances #-}++module Data.SpirV.Enum.Capability where++import Data.Int (Int32)+import Foreign.Storable (Storable)++newtype Capability = Capability Int32+  deriving newtype (Eq, Ord, Storable)++instance Show Capability where+  showsPrec p (Capability v) = case v of+    0 -> showString "Matrix"+    1 -> showString "Shader"+    2 -> showString "Geometry"+    3 -> showString "Tessellation"+    4 -> showString "Addresses"+    5 -> showString "Linkage"+    6 -> showString "Kernel"+    7 -> showString "Vector16"+    8 -> showString "Float16Buffer"+    9 -> showString "Float16"+    10 -> showString "Float64"+    11 -> showString "Int64"+    12 -> showString "Int64Atomics"+    13 -> showString "ImageBasic"+    14 -> showString "ImageReadWrite"+    15 -> showString "ImageMipmap"+    17 -> showString "Pipes"+    18 -> showString "Groups"+    19 -> showString "DeviceEnqueue"+    20 -> showString "LiteralSampler"+    21 -> showString "AtomicStorage"+    22 -> showString "Int16"+    23 -> showString "TessellationPointSize"+    24 -> showString "GeometryPointSize"+    25 -> showString "ImageGatherExtended"+    27 -> showString "StorageImageMultisample"+    28 -> showString "UniformBufferArrayDynamicIndexing"+    29 -> showString "SampledImageArrayDynamicIndexing"+    30 -> showString "StorageBufferArrayDynamicIndexing"+    31 -> showString "StorageImageArrayDynamicIndexing"+    32 -> showString "ClipDistance"+    33 -> showString "CullDistance"+    34 -> showString "ImageCubeArray"+    35 -> showString "SampleRateShading"+    36 -> showString "ImageRect"+    37 -> showString "SampledRect"+    38 -> showString "GenericPointer"+    39 -> showString "Int8"+    40 -> showString "InputAttachment"+    41 -> showString "SparseResidency"+    42 -> showString "MinLod"+    43 -> showString "Sampled1D"+    44 -> showString "Image1D"+    45 -> showString "SampledCubeArray"+    46 -> showString "SampledBuffer"+    47 -> showString "ImageBuffer"+    48 -> showString "ImageMSArray"+    49 -> showString "StorageImageExtendedFormats"+    50 -> showString "ImageQuery"+    51 -> showString "DerivativeControl"+    52 -> showString "InterpolationFunction"+    53 -> showString "TransformFeedback"+    54 -> showString "GeometryStreams"+    55 -> showString "StorageImageReadWithoutFormat"+    56 -> showString "StorageImageWriteWithoutFormat"+    57 -> showString "MultiViewport"+    58 -> showString "SubgroupDispatch"+    59 -> showString "NamedBarrier"+    60 -> showString "PipeStorage"+    61 -> showString "GroupNonUniform"+    62 -> showString "GroupNonUniformVote"+    63 -> showString "GroupNonUniformArithmetic"+    64 -> showString "GroupNonUniformBallot"+    65 -> showString "GroupNonUniformShuffle"+    66 -> showString "GroupNonUniformShuffleRelative"+    67 -> showString "GroupNonUniformClustered"+    68 -> showString "GroupNonUniformQuad"+    69 -> showString "ShaderLayer"+    70 -> showString "ShaderViewportIndex"+    71 -> showString "UniformDecoration"+    4165 -> showString "CoreBuiltinsARM"+    4166 -> showString "TileImageColorReadAccessEXT"+    4167 -> showString "TileImageDepthReadAccessEXT"+    4168 -> showString "TileImageStencilReadAccessEXT"+    4201 -> showString "CooperativeMatrixLayoutsARM"+    4422 -> showString "FragmentShadingRateKHR"+    4423 -> showString "SubgroupBallotKHR"+    4427 -> showString "DrawParameters"+    4428 -> showString "WorkgroupMemoryExplicitLayoutKHR"+    4429 -> showString "WorkgroupMemoryExplicitLayout8BitAccessKHR"+    4430 -> showString "WorkgroupMemoryExplicitLayout16BitAccessKHR"+    4431 -> showString "SubgroupVoteKHR"+    4433 -> showString "StorageBuffer16BitAccess"+    4434 -> showString "StorageUniform16"+    4435 -> showString "StoragePushConstant16"+    4436 -> showString "StorageInputOutput16"+    4437 -> showString "DeviceGroup"+    4439 -> showString "MultiView"+    4441 -> showString "VariablePointersStorageBuffer"+    4442 -> showString "VariablePointers"+    4445 -> showString "AtomicStorageOps"+    4447 -> showString "SampleMaskPostDepthCoverage"+    4448 -> showString "StorageBuffer8BitAccess"+    4449 -> showString "UniformAndStorageBuffer8BitAccess"+    4450 -> showString "StoragePushConstant8"+    4464 -> showString "DenormPreserve"+    4465 -> showString "DenormFlushToZero"+    4466 -> showString "SignedZeroInfNanPreserve"+    4467 -> showString "RoundingModeRTE"+    4468 -> showString "RoundingModeRTZ"+    4471 -> showString "RayQueryProvisionalKHR"+    4472 -> showString "RayQueryKHR"+    4478 -> showString "RayTraversalPrimitiveCullingKHR"+    4479 -> showString "RayTracingKHR"+    4484 -> showString "TextureSampleWeightedQCOM"+    4485 -> showString "TextureBoxFilterQCOM"+    4486 -> showString "TextureBlockMatchQCOM"+    4498 -> showString "TextureBlockMatch2QCOM"+    5008 -> showString "Float16ImageAMD"+    5009 -> showString "ImageGatherBiasLodAMD"+    5010 -> showString "FragmentMaskAMD"+    5013 -> showString "StencilExportEXT"+    5015 -> showString "ImageReadWriteLodAMD"+    5016 -> showString "Int64ImageEXT"+    5055 -> showString "ShaderClockKHR"+    5067 -> showString "ShaderEnqueueAMDX"+    5087 -> showString "QuadControlKHR"+    5249 -> showString "SampleMaskOverrideCoverageNV"+    5251 -> showString "GeometryShaderPassthroughNV"+    5254 -> showString "ShaderViewportIndexLayerEXT"+    5255 -> showString "ShaderViewportMaskNV"+    5259 -> showString "ShaderStereoViewNV"+    5260 -> showString "PerViewAttributesNV"+    5265 -> showString "FragmentFullyCoveredEXT"+    5266 -> showString "MeshShadingNV"+    5282 -> showString "ImageFootprintNV"+    5283 -> showString "MeshShadingEXT"+    5284 -> showString "FragmentBarycentricKHR"+    5288 -> showString "ComputeDerivativeGroupQuadsNV"+    5291 -> showString "FragmentDensityEXT"+    5297 -> showString "GroupNonUniformPartitionedNV"+    5301 -> showString "ShaderNonUniform"+    5302 -> showString "RuntimeDescriptorArray"+    5303 -> showString "InputAttachmentArrayDynamicIndexing"+    5304 -> showString "UniformTexelBufferArrayDynamicIndexing"+    5305 -> showString "StorageTexelBufferArrayDynamicIndexing"+    5306 -> showString "UniformBufferArrayNonUniformIndexing"+    5307 -> showString "SampledImageArrayNonUniformIndexing"+    5308 -> showString "StorageBufferArrayNonUniformIndexing"+    5309 -> showString "StorageImageArrayNonUniformIndexing"+    5310 -> showString "InputAttachmentArrayNonUniformIndexing"+    5311 -> showString "UniformTexelBufferArrayNonUniformIndexing"+    5312 -> showString "StorageTexelBufferArrayNonUniformIndexing"+    5336 -> showString "RayTracingPositionFetchKHR"+    5340 -> showString "RayTracingNV"+    5341 -> showString "RayTracingMotionBlurNV"+    5345 -> showString "VulkanMemoryModel"+    5346 -> showString "VulkanMemoryModelDeviceScope"+    5347 -> showString "PhysicalStorageBufferAddresses"+    5350 -> showString "ComputeDerivativeGroupLinearNV"+    5353 -> showString "RayTracingProvisionalKHR"+    5357 -> showString "CooperativeMatrixNV"+    5363 -> showString "FragmentShaderSampleInterlockEXT"+    5372 -> showString "FragmentShaderShadingRateInterlockEXT"+    5373 -> showString "ShaderSMBuiltinsNV"+    5378 -> showString "FragmentShaderPixelInterlockEXT"+    5379 -> showString "DemoteToHelperInvocation"+    5380 -> showString "DisplacementMicromapNV"+    5381 -> showString "RayTracingOpacityMicromapEXT"+    5383 -> showString "ShaderInvocationReorderNV"+    5390 -> showString "BindlessTextureNV"+    5391 -> showString "RayQueryPositionFetchKHR"+    5404 -> showString "AtomicFloat16VectorNV"+    5409 -> showString "RayTracingDisplacementMicromapNV"+    5414 -> showString "RawAccessChainsNV"+    5568 -> showString "SubgroupShuffleINTEL"+    5569 -> showString "SubgroupBufferBlockIOINTEL"+    5570 -> showString "SubgroupImageBlockIOINTEL"+    5579 -> showString "SubgroupImageMediaBlockIOINTEL"+    5582 -> showString "RoundToInfinityINTEL"+    5583 -> showString "FloatingPointModeINTEL"+    5584 -> showString "IntegerFunctions2INTEL"+    5603 -> showString "FunctionPointersINTEL"+    5604 -> showString "IndirectReferencesINTEL"+    5606 -> showString "AsmINTEL"+    5612 -> showString "AtomicFloat32MinMaxEXT"+    5613 -> showString "AtomicFloat64MinMaxEXT"+    5616 -> showString "AtomicFloat16MinMaxEXT"+    5617 -> showString "VectorComputeINTEL"+    5619 -> showString "VectorAnyINTEL"+    5629 -> showString "ExpectAssumeKHR"+    5696 -> showString "SubgroupAvcMotionEstimationINTEL"+    5697 -> showString "SubgroupAvcMotionEstimationIntraINTEL"+    5698 -> showString "SubgroupAvcMotionEstimationChromaINTEL"+    5817 -> showString "VariableLengthArrayINTEL"+    5821 -> showString "FunctionFloatControlINTEL"+    5824 -> showString "FPGAMemoryAttributesINTEL"+    5837 -> showString "FPFastMathModeINTEL"+    5844 -> showString "ArbitraryPrecisionIntegersINTEL"+    5845 -> showString "ArbitraryPrecisionFloatingPointINTEL"+    5886 -> showString "UnstructuredLoopControlsINTEL"+    5888 -> showString "FPGALoopControlsINTEL"+    5892 -> showString "KernelAttributesINTEL"+    5897 -> showString "FPGAKernelAttributesINTEL"+    5898 -> showString "FPGAMemoryAccessesINTEL"+    5904 -> showString "FPGAClusterAttributesINTEL"+    5906 -> showString "LoopFuseINTEL"+    5908 -> showString "FPGADSPControlINTEL"+    5910 -> showString "MemoryAccessAliasingINTEL"+    5916 -> showString "FPGAInvocationPipeliningAttributesINTEL"+    5920 -> showString "FPGABufferLocationINTEL"+    5922 -> showString "ArbitraryPrecisionFixedPointINTEL"+    5935 -> showString "USMStorageClassesINTEL"+    5939 -> showString "RuntimeAlignedAttributeINTEL"+    5943 -> showString "IOPipesINTEL"+    5945 -> showString "BlockingPipesINTEL"+    5948 -> showString "FPGARegINTEL"+    6016 -> showString "DotProductInputAll"+    6017 -> showString "DotProductInput4x8Bit"+    6018 -> showString "DotProductInput4x8BitPacked"+    6019 -> showString "DotProduct"+    6020 -> showString "RayCullMaskKHR"+    6022 -> showString "CooperativeMatrixKHR"+    6024 -> showString "ReplicatedCompositesEXT"+    6025 -> showString "BitInstructions"+    6026 -> showString "GroupNonUniformRotateKHR"+    6029 -> showString "FloatControls2"+    6033 -> showString "AtomicFloat32AddEXT"+    6034 -> showString "AtomicFloat64AddEXT"+    6089 -> showString "LongCompositesINTEL"+    6094 -> showString "OptNoneINTEL"+    6095 -> showString "AtomicFloat16AddEXT"+    6114 -> showString "DebugInfoModuleINTEL"+    6115 -> showString "BFloat16ConversionINTEL"+    6141 -> showString "SplitBarrierINTEL"+    6150 -> showString "FPGAClusterAttributesV2INTEL"+    6161 -> showString "FPGAKernelAttributesv2INTEL"+    6169 -> showString "FPMaxErrorINTEL"+    6171 -> showString "FPGALatencyControlINTEL"+    6174 -> showString "FPGAArgumentInterfacesINTEL"+    6187 -> showString "GlobalVariableHostAccessINTEL"+    6189 -> showString "GlobalVariableFPGADecorationsINTEL"+    6400 -> showString "GroupUniformArithmeticKHR"+    6427 -> showString "MaskedGatherScatterINTEL"+    6441 -> showString "CacheControlsINTEL"+    6460 -> showString "RegisterLimitsINTEL"+    x -> showParen (p > 10) $ showString "Capability " . showsPrec (p + 1) x++pattern Matrix :: Capability+pattern Matrix = Capability 0++pattern Shader :: Capability+pattern Shader = Capability 1++pattern Geometry :: Capability+pattern Geometry = Capability 2++pattern Tessellation :: Capability+pattern Tessellation = Capability 3++pattern Addresses :: Capability+pattern Addresses = Capability 4++pattern Linkage :: Capability+pattern Linkage = Capability 5++pattern Kernel :: Capability+pattern Kernel = Capability 6++pattern Vector16 :: Capability+pattern Vector16 = Capability 7++pattern Float16Buffer :: Capability+pattern Float16Buffer = Capability 8++pattern Float16 :: Capability+pattern Float16 = Capability 9++pattern Float64 :: Capability+pattern Float64 = Capability 10++pattern Int64 :: Capability+pattern Int64 = Capability 11++pattern Int64Atomics :: Capability+pattern Int64Atomics = Capability 12++pattern ImageBasic :: Capability+pattern ImageBasic = Capability 13++pattern ImageReadWrite :: Capability+pattern ImageReadWrite = Capability 14++pattern ImageMipmap :: Capability+pattern ImageMipmap = Capability 15++pattern Pipes :: Capability+pattern Pipes = Capability 17++pattern Groups :: Capability+pattern Groups = Capability 18++pattern DeviceEnqueue :: Capability+pattern DeviceEnqueue = Capability 19++pattern LiteralSampler :: Capability+pattern LiteralSampler = Capability 20++pattern AtomicStorage :: Capability+pattern AtomicStorage = Capability 21++pattern Int16 :: Capability+pattern Int16 = Capability 22++pattern TessellationPointSize :: Capability+pattern TessellationPointSize = Capability 23++pattern GeometryPointSize :: Capability+pattern GeometryPointSize = Capability 24++pattern ImageGatherExtended :: Capability+pattern ImageGatherExtended = Capability 25++pattern StorageImageMultisample :: Capability+pattern StorageImageMultisample = Capability 27++pattern UniformBufferArrayDynamicIndexing :: Capability+pattern UniformBufferArrayDynamicIndexing = Capability 28++pattern SampledImageArrayDynamicIndexing :: Capability+pattern SampledImageArrayDynamicIndexing = Capability 29++pattern StorageBufferArrayDynamicIndexing :: Capability+pattern StorageBufferArrayDynamicIndexing = Capability 30++pattern StorageImageArrayDynamicIndexing :: Capability+pattern StorageImageArrayDynamicIndexing = Capability 31++pattern ClipDistance :: Capability+pattern ClipDistance = Capability 32++pattern CullDistance :: Capability+pattern CullDistance = Capability 33++pattern ImageCubeArray :: Capability+pattern ImageCubeArray = Capability 34++pattern SampleRateShading :: Capability+pattern SampleRateShading = Capability 35++pattern ImageRect :: Capability+pattern ImageRect = Capability 36++pattern SampledRect :: Capability+pattern SampledRect = Capability 37++pattern GenericPointer :: Capability+pattern GenericPointer = Capability 38++pattern Int8 :: Capability+pattern Int8 = Capability 39++pattern InputAttachment :: Capability+pattern InputAttachment = Capability 40++pattern SparseResidency :: Capability+pattern SparseResidency = Capability 41++pattern MinLod :: Capability+pattern MinLod = Capability 42++pattern Sampled1D :: Capability+pattern Sampled1D = Capability 43++pattern Image1D :: Capability+pattern Image1D = Capability 44++pattern SampledCubeArray :: Capability+pattern SampledCubeArray = Capability 45++pattern SampledBuffer :: Capability+pattern SampledBuffer = Capability 46++pattern ImageBuffer :: Capability+pattern ImageBuffer = Capability 47++pattern ImageMSArray :: Capability+pattern ImageMSArray = Capability 48++pattern StorageImageExtendedFormats :: Capability+pattern StorageImageExtendedFormats = Capability 49++pattern ImageQuery :: Capability+pattern ImageQuery = Capability 50++pattern DerivativeControl :: Capability+pattern DerivativeControl = Capability 51++pattern InterpolationFunction :: Capability+pattern InterpolationFunction = Capability 52++pattern TransformFeedback :: Capability+pattern TransformFeedback = Capability 53++pattern GeometryStreams :: Capability+pattern GeometryStreams = Capability 54++pattern StorageImageReadWithoutFormat :: Capability+pattern StorageImageReadWithoutFormat = Capability 55++pattern StorageImageWriteWithoutFormat :: Capability+pattern StorageImageWriteWithoutFormat = Capability 56++pattern MultiViewport :: Capability+pattern MultiViewport = Capability 57++pattern SubgroupDispatch :: Capability+pattern SubgroupDispatch = Capability 58++pattern NamedBarrier :: Capability+pattern NamedBarrier = Capability 59++pattern PipeStorage :: Capability+pattern PipeStorage = Capability 60++pattern GroupNonUniform :: Capability+pattern GroupNonUniform = Capability 61++pattern GroupNonUniformVote :: Capability+pattern GroupNonUniformVote = Capability 62++pattern GroupNonUniformArithmetic :: Capability+pattern GroupNonUniformArithmetic = Capability 63++pattern GroupNonUniformBallot :: Capability+pattern GroupNonUniformBallot = Capability 64++pattern GroupNonUniformShuffle :: Capability+pattern GroupNonUniformShuffle = Capability 65++pattern GroupNonUniformShuffleRelative :: Capability+pattern GroupNonUniformShuffleRelative = Capability 66++pattern GroupNonUniformClustered :: Capability+pattern GroupNonUniformClustered = Capability 67++pattern GroupNonUniformQuad :: Capability+pattern GroupNonUniformQuad = Capability 68++pattern ShaderLayer :: Capability+pattern ShaderLayer = Capability 69++pattern ShaderViewportIndex :: Capability+pattern ShaderViewportIndex = Capability 70++pattern UniformDecoration :: Capability+pattern UniformDecoration = Capability 71++pattern CoreBuiltinsARM :: Capability+pattern CoreBuiltinsARM = Capability 4165++pattern TileImageColorReadAccessEXT :: Capability+pattern TileImageColorReadAccessEXT = Capability 4166++pattern TileImageDepthReadAccessEXT :: Capability+pattern TileImageDepthReadAccessEXT = Capability 4167++pattern TileImageStencilReadAccessEXT :: Capability+pattern TileImageStencilReadAccessEXT = Capability 4168++pattern CooperativeMatrixLayoutsARM :: Capability+pattern CooperativeMatrixLayoutsARM = Capability 4201++pattern FragmentShadingRateKHR :: Capability+pattern FragmentShadingRateKHR = Capability 4422++pattern SubgroupBallotKHR :: Capability+pattern SubgroupBallotKHR = Capability 4423++pattern DrawParameters :: Capability+pattern DrawParameters = Capability 4427++pattern WorkgroupMemoryExplicitLayoutKHR :: Capability+pattern WorkgroupMemoryExplicitLayoutKHR = Capability 4428++pattern WorkgroupMemoryExplicitLayout8BitAccessKHR :: Capability+pattern WorkgroupMemoryExplicitLayout8BitAccessKHR = Capability 4429++pattern WorkgroupMemoryExplicitLayout16BitAccessKHR :: Capability+pattern WorkgroupMemoryExplicitLayout16BitAccessKHR = Capability 4430++pattern SubgroupVoteKHR :: Capability+pattern SubgroupVoteKHR = Capability 4431++pattern StorageBuffer16BitAccess :: Capability+pattern StorageBuffer16BitAccess = Capability 4433++pattern StorageUniformBufferBlock16 :: Capability+pattern StorageUniformBufferBlock16 = Capability 4433++pattern StorageUniform16 :: Capability+pattern StorageUniform16 = Capability 4434++pattern UniformAndStorageBuffer16BitAccess :: Capability+pattern UniformAndStorageBuffer16BitAccess = Capability 4434++pattern StoragePushConstant16 :: Capability+pattern StoragePushConstant16 = Capability 4435++pattern StorageInputOutput16 :: Capability+pattern StorageInputOutput16 = Capability 4436++pattern DeviceGroup :: Capability+pattern DeviceGroup = Capability 4437++pattern MultiView :: Capability+pattern MultiView = Capability 4439++pattern VariablePointersStorageBuffer :: Capability+pattern VariablePointersStorageBuffer = Capability 4441++pattern VariablePointers :: Capability+pattern VariablePointers = Capability 4442++pattern AtomicStorageOps :: Capability+pattern AtomicStorageOps = Capability 4445++pattern SampleMaskPostDepthCoverage :: Capability+pattern SampleMaskPostDepthCoverage = Capability 4447++pattern StorageBuffer8BitAccess :: Capability+pattern StorageBuffer8BitAccess = Capability 4448++pattern UniformAndStorageBuffer8BitAccess :: Capability+pattern UniformAndStorageBuffer8BitAccess = Capability 4449++pattern StoragePushConstant8 :: Capability+pattern StoragePushConstant8 = Capability 4450++pattern DenormPreserve :: Capability+pattern DenormPreserve = Capability 4464++pattern DenormFlushToZero :: Capability+pattern DenormFlushToZero = Capability 4465++pattern SignedZeroInfNanPreserve :: Capability+pattern SignedZeroInfNanPreserve = Capability 4466++pattern RoundingModeRTE :: Capability+pattern RoundingModeRTE = Capability 4467++pattern RoundingModeRTZ :: Capability+pattern RoundingModeRTZ = Capability 4468++pattern RayQueryProvisionalKHR :: Capability+pattern RayQueryProvisionalKHR = Capability 4471++pattern RayQueryKHR :: Capability+pattern RayQueryKHR = Capability 4472++pattern RayTraversalPrimitiveCullingKHR :: Capability+pattern RayTraversalPrimitiveCullingKHR = Capability 4478++pattern RayTracingKHR :: Capability+pattern RayTracingKHR = Capability 4479++pattern TextureSampleWeightedQCOM :: Capability+pattern TextureSampleWeightedQCOM = Capability 4484++pattern TextureBoxFilterQCOM :: Capability+pattern TextureBoxFilterQCOM = Capability 4485++pattern TextureBlockMatchQCOM :: Capability+pattern TextureBlockMatchQCOM = Capability 4486++pattern TextureBlockMatch2QCOM :: Capability+pattern TextureBlockMatch2QCOM = Capability 4498++pattern Float16ImageAMD :: Capability+pattern Float16ImageAMD = Capability 5008++pattern ImageGatherBiasLodAMD :: Capability+pattern ImageGatherBiasLodAMD = Capability 5009++pattern FragmentMaskAMD :: Capability+pattern FragmentMaskAMD = Capability 5010++pattern StencilExportEXT :: Capability+pattern StencilExportEXT = Capability 5013++pattern ImageReadWriteLodAMD :: Capability+pattern ImageReadWriteLodAMD = Capability 5015++pattern Int64ImageEXT :: Capability+pattern Int64ImageEXT = Capability 5016++pattern ShaderClockKHR :: Capability+pattern ShaderClockKHR = Capability 5055++pattern ShaderEnqueueAMDX :: Capability+pattern ShaderEnqueueAMDX = Capability 5067++pattern QuadControlKHR :: Capability+pattern QuadControlKHR = Capability 5087++pattern SampleMaskOverrideCoverageNV :: Capability+pattern SampleMaskOverrideCoverageNV = Capability 5249++pattern GeometryShaderPassthroughNV :: Capability+pattern GeometryShaderPassthroughNV = Capability 5251++pattern ShaderViewportIndexLayerEXT :: Capability+pattern ShaderViewportIndexLayerEXT = Capability 5254++pattern ShaderViewportIndexLayerNV :: Capability+pattern ShaderViewportIndexLayerNV = Capability 5254++pattern ShaderViewportMaskNV :: Capability+pattern ShaderViewportMaskNV = Capability 5255++pattern ShaderStereoViewNV :: Capability+pattern ShaderStereoViewNV = Capability 5259++pattern PerViewAttributesNV :: Capability+pattern PerViewAttributesNV = Capability 5260++pattern FragmentFullyCoveredEXT :: Capability+pattern FragmentFullyCoveredEXT = Capability 5265++pattern MeshShadingNV :: Capability+pattern MeshShadingNV = Capability 5266++pattern ImageFootprintNV :: Capability+pattern ImageFootprintNV = Capability 5282++pattern MeshShadingEXT :: Capability+pattern MeshShadingEXT = Capability 5283++pattern FragmentBarycentricKHR :: Capability+pattern FragmentBarycentricKHR = Capability 5284++pattern FragmentBarycentricNV :: Capability+pattern FragmentBarycentricNV = Capability 5284++pattern ComputeDerivativeGroupQuadsNV :: Capability+pattern ComputeDerivativeGroupQuadsNV = Capability 5288++pattern FragmentDensityEXT :: Capability+pattern FragmentDensityEXT = Capability 5291++pattern ShadingRateNV :: Capability+pattern ShadingRateNV = Capability 5291++pattern GroupNonUniformPartitionedNV :: Capability+pattern GroupNonUniformPartitionedNV = Capability 5297++pattern ShaderNonUniform :: Capability+pattern ShaderNonUniform = Capability 5301++pattern ShaderNonUniformEXT :: Capability+pattern ShaderNonUniformEXT = Capability 5301++pattern RuntimeDescriptorArray :: Capability+pattern RuntimeDescriptorArray = Capability 5302++pattern RuntimeDescriptorArrayEXT :: Capability+pattern RuntimeDescriptorArrayEXT = Capability 5302++pattern InputAttachmentArrayDynamicIndexing :: Capability+pattern InputAttachmentArrayDynamicIndexing = Capability 5303++pattern InputAttachmentArrayDynamicIndexingEXT :: Capability+pattern InputAttachmentArrayDynamicIndexingEXT = Capability 5303++pattern UniformTexelBufferArrayDynamicIndexing :: Capability+pattern UniformTexelBufferArrayDynamicIndexing = Capability 5304++pattern UniformTexelBufferArrayDynamicIndexingEXT :: Capability+pattern UniformTexelBufferArrayDynamicIndexingEXT = Capability 5304++pattern StorageTexelBufferArrayDynamicIndexing :: Capability+pattern StorageTexelBufferArrayDynamicIndexing = Capability 5305++pattern StorageTexelBufferArrayDynamicIndexingEXT :: Capability+pattern StorageTexelBufferArrayDynamicIndexingEXT = Capability 5305++pattern UniformBufferArrayNonUniformIndexing :: Capability+pattern UniformBufferArrayNonUniformIndexing = Capability 5306++pattern UniformBufferArrayNonUniformIndexingEXT :: Capability+pattern UniformBufferArrayNonUniformIndexingEXT = Capability 5306++pattern SampledImageArrayNonUniformIndexing :: Capability+pattern SampledImageArrayNonUniformIndexing = Capability 5307++pattern SampledImageArrayNonUniformIndexingEXT :: Capability+pattern SampledImageArrayNonUniformIndexingEXT = Capability 5307++pattern StorageBufferArrayNonUniformIndexing :: Capability+pattern StorageBufferArrayNonUniformIndexing = Capability 5308++pattern StorageBufferArrayNonUniformIndexingEXT :: Capability+pattern StorageBufferArrayNonUniformIndexingEXT = Capability 5308++pattern StorageImageArrayNonUniformIndexing :: Capability+pattern StorageImageArrayNonUniformIndexing = Capability 5309++pattern StorageImageArrayNonUniformIndexingEXT :: Capability+pattern StorageImageArrayNonUniformIndexingEXT = Capability 5309++pattern InputAttachmentArrayNonUniformIndexing :: Capability+pattern InputAttachmentArrayNonUniformIndexing = Capability 5310++pattern InputAttachmentArrayNonUniformIndexingEXT :: Capability+pattern InputAttachmentArrayNonUniformIndexingEXT = Capability 5310++pattern UniformTexelBufferArrayNonUniformIndexing :: Capability+pattern UniformTexelBufferArrayNonUniformIndexing = Capability 5311++pattern UniformTexelBufferArrayNonUniformIndexingEXT :: Capability+pattern UniformTexelBufferArrayNonUniformIndexingEXT = Capability 5311++pattern StorageTexelBufferArrayNonUniformIndexing :: Capability+pattern StorageTexelBufferArrayNonUniformIndexing = Capability 5312++pattern StorageTexelBufferArrayNonUniformIndexingEXT :: Capability+pattern StorageTexelBufferArrayNonUniformIndexingEXT = Capability 5312++pattern RayTracingPositionFetchKHR :: Capability+pattern RayTracingPositionFetchKHR = Capability 5336++pattern RayTracingNV :: Capability+pattern RayTracingNV = Capability 5340++pattern RayTracingMotionBlurNV :: Capability+pattern RayTracingMotionBlurNV = Capability 5341++pattern VulkanMemoryModel :: Capability+pattern VulkanMemoryModel = Capability 5345++pattern VulkanMemoryModelKHR :: Capability+pattern VulkanMemoryModelKHR = Capability 5345++pattern VulkanMemoryModelDeviceScope :: Capability+pattern VulkanMemoryModelDeviceScope = Capability 5346++pattern VulkanMemoryModelDeviceScopeKHR :: Capability+pattern VulkanMemoryModelDeviceScopeKHR = Capability 5346++pattern PhysicalStorageBufferAddresses :: Capability+pattern PhysicalStorageBufferAddresses = Capability 5347++pattern PhysicalStorageBufferAddressesEXT :: Capability+pattern PhysicalStorageBufferAddressesEXT = Capability 5347++pattern ComputeDerivativeGroupLinearNV :: Capability+pattern ComputeDerivativeGroupLinearNV = Capability 5350++pattern RayTracingProvisionalKHR :: Capability+pattern RayTracingProvisionalKHR = Capability 5353++pattern CooperativeMatrixNV :: Capability+pattern CooperativeMatrixNV = Capability 5357++pattern FragmentShaderSampleInterlockEXT :: Capability+pattern FragmentShaderSampleInterlockEXT = Capability 5363++pattern FragmentShaderShadingRateInterlockEXT :: Capability+pattern FragmentShaderShadingRateInterlockEXT = Capability 5372++pattern ShaderSMBuiltinsNV :: Capability+pattern ShaderSMBuiltinsNV = Capability 5373++pattern FragmentShaderPixelInterlockEXT :: Capability+pattern FragmentShaderPixelInterlockEXT = Capability 5378++pattern DemoteToHelperInvocation :: Capability+pattern DemoteToHelperInvocation = Capability 5379++pattern DemoteToHelperInvocationEXT :: Capability+pattern DemoteToHelperInvocationEXT = Capability 5379++pattern DisplacementMicromapNV :: Capability+pattern DisplacementMicromapNV = Capability 5380++pattern RayTracingOpacityMicromapEXT :: Capability+pattern RayTracingOpacityMicromapEXT = Capability 5381++pattern ShaderInvocationReorderNV :: Capability+pattern ShaderInvocationReorderNV = Capability 5383++pattern BindlessTextureNV :: Capability+pattern BindlessTextureNV = Capability 5390++pattern RayQueryPositionFetchKHR :: Capability+pattern RayQueryPositionFetchKHR = Capability 5391++pattern AtomicFloat16VectorNV :: Capability+pattern AtomicFloat16VectorNV = Capability 5404++pattern RayTracingDisplacementMicromapNV :: Capability+pattern RayTracingDisplacementMicromapNV = Capability 5409++pattern RawAccessChainsNV :: Capability+pattern RawAccessChainsNV = Capability 5414++pattern SubgroupShuffleINTEL :: Capability+pattern SubgroupShuffleINTEL = Capability 5568++pattern SubgroupBufferBlockIOINTEL :: Capability+pattern SubgroupBufferBlockIOINTEL = Capability 5569++pattern SubgroupImageBlockIOINTEL :: Capability+pattern SubgroupImageBlockIOINTEL = Capability 5570++pattern SubgroupImageMediaBlockIOINTEL :: Capability+pattern SubgroupImageMediaBlockIOINTEL = Capability 5579++pattern RoundToInfinityINTEL :: Capability+pattern RoundToInfinityINTEL = Capability 5582++pattern FloatingPointModeINTEL :: Capability+pattern FloatingPointModeINTEL = Capability 5583++pattern IntegerFunctions2INTEL :: Capability+pattern IntegerFunctions2INTEL = Capability 5584++pattern FunctionPointersINTEL :: Capability+pattern FunctionPointersINTEL = Capability 5603++pattern IndirectReferencesINTEL :: Capability+pattern IndirectReferencesINTEL = Capability 5604++pattern AsmINTEL :: Capability+pattern AsmINTEL = Capability 5606++pattern AtomicFloat32MinMaxEXT :: Capability+pattern AtomicFloat32MinMaxEXT = Capability 5612++pattern AtomicFloat64MinMaxEXT :: Capability+pattern AtomicFloat64MinMaxEXT = Capability 5613++pattern AtomicFloat16MinMaxEXT :: Capability+pattern AtomicFloat16MinMaxEXT = Capability 5616++pattern VectorComputeINTEL :: Capability+pattern VectorComputeINTEL = Capability 5617++pattern VectorAnyINTEL :: Capability+pattern VectorAnyINTEL = Capability 5619++pattern ExpectAssumeKHR :: Capability+pattern ExpectAssumeKHR = Capability 5629++pattern SubgroupAvcMotionEstimationINTEL :: Capability+pattern SubgroupAvcMotionEstimationINTEL = Capability 5696++pattern SubgroupAvcMotionEstimationIntraINTEL :: Capability+pattern SubgroupAvcMotionEstimationIntraINTEL = Capability 5697++pattern SubgroupAvcMotionEstimationChromaINTEL :: Capability+pattern SubgroupAvcMotionEstimationChromaINTEL = Capability 5698++pattern VariableLengthArrayINTEL :: Capability+pattern VariableLengthArrayINTEL = Capability 5817++pattern FunctionFloatControlINTEL :: Capability+pattern FunctionFloatControlINTEL = Capability 5821++pattern FPGAMemoryAttributesINTEL :: Capability+pattern FPGAMemoryAttributesINTEL = Capability 5824++pattern FPFastMathModeINTEL :: Capability+pattern FPFastMathModeINTEL = Capability 5837++pattern ArbitraryPrecisionIntegersINTEL :: Capability+pattern ArbitraryPrecisionIntegersINTEL = Capability 5844++pattern ArbitraryPrecisionFloatingPointINTEL :: Capability+pattern ArbitraryPrecisionFloatingPointINTEL = Capability 5845++pattern UnstructuredLoopControlsINTEL :: Capability+pattern UnstructuredLoopControlsINTEL = Capability 5886++pattern FPGALoopControlsINTEL :: Capability+pattern FPGALoopControlsINTEL = Capability 5888++pattern KernelAttributesINTEL :: Capability+pattern KernelAttributesINTEL = Capability 5892++pattern FPGAKernelAttributesINTEL :: Capability+pattern FPGAKernelAttributesINTEL = Capability 5897++pattern FPGAMemoryAccessesINTEL :: Capability+pattern FPGAMemoryAccessesINTEL = Capability 5898++pattern FPGAClusterAttributesINTEL :: Capability+pattern FPGAClusterAttributesINTEL = Capability 5904++pattern LoopFuseINTEL :: Capability+pattern LoopFuseINTEL = Capability 5906++pattern FPGADSPControlINTEL :: Capability+pattern FPGADSPControlINTEL = Capability 5908++pattern MemoryAccessAliasingINTEL :: Capability+pattern MemoryAccessAliasingINTEL = Capability 5910++pattern FPGAInvocationPipeliningAttributesINTEL :: Capability+pattern FPGAInvocationPipeliningAttributesINTEL = Capability 5916++pattern FPGABufferLocationINTEL :: Capability+pattern FPGABufferLocationINTEL = Capability 5920++pattern ArbitraryPrecisionFixedPointINTEL :: Capability+pattern ArbitraryPrecisionFixedPointINTEL = Capability 5922++pattern USMStorageClassesINTEL :: Capability+pattern USMStorageClassesINTEL = Capability 5935++pattern RuntimeAlignedAttributeINTEL :: Capability+pattern RuntimeAlignedAttributeINTEL = Capability 5939++pattern IOPipesINTEL :: Capability+pattern IOPipesINTEL = Capability 5943++pattern BlockingPipesINTEL :: Capability+pattern BlockingPipesINTEL = Capability 5945++pattern FPGARegINTEL :: Capability+pattern FPGARegINTEL = Capability 5948++pattern DotProductInputAll :: Capability+pattern DotProductInputAll = Capability 6016++pattern DotProductInputAllKHR :: Capability+pattern DotProductInputAllKHR = Capability 6016++pattern DotProductInput4x8Bit :: Capability+pattern DotProductInput4x8Bit = Capability 6017++pattern DotProductInput4x8BitKHR :: Capability+pattern DotProductInput4x8BitKHR = Capability 6017++pattern DotProductInput4x8BitPacked :: Capability+pattern DotProductInput4x8BitPacked = Capability 6018++pattern DotProductInput4x8BitPackedKHR :: Capability+pattern DotProductInput4x8BitPackedKHR = Capability 6018++pattern DotProduct :: Capability+pattern DotProduct = Capability 6019++pattern DotProductKHR :: Capability+pattern DotProductKHR = Capability 6019++pattern RayCullMaskKHR :: Capability+pattern RayCullMaskKHR = Capability 6020++pattern CooperativeMatrixKHR :: Capability+pattern CooperativeMatrixKHR = Capability 6022++pattern ReplicatedCompositesEXT :: Capability+pattern ReplicatedCompositesEXT = Capability 6024++pattern BitInstructions :: Capability+pattern BitInstructions = Capability 6025++pattern GroupNonUniformRotateKHR :: Capability+pattern GroupNonUniformRotateKHR = Capability 6026++pattern FloatControls2 :: Capability+pattern FloatControls2 = Capability 6029++pattern AtomicFloat32AddEXT :: Capability+pattern AtomicFloat32AddEXT = Capability 6033++pattern AtomicFloat64AddEXT :: Capability+pattern AtomicFloat64AddEXT = Capability 6034++pattern LongCompositesINTEL :: Capability+pattern LongCompositesINTEL = Capability 6089++pattern OptNoneINTEL :: Capability+pattern OptNoneINTEL = Capability 6094++pattern AtomicFloat16AddEXT :: Capability+pattern AtomicFloat16AddEXT = Capability 6095++pattern DebugInfoModuleINTEL :: Capability+pattern DebugInfoModuleINTEL = Capability 6114++pattern BFloat16ConversionINTEL :: Capability+pattern BFloat16ConversionINTEL = Capability 6115++pattern SplitBarrierINTEL :: Capability+pattern SplitBarrierINTEL = Capability 6141++pattern FPGAClusterAttributesV2INTEL :: Capability+pattern FPGAClusterAttributesV2INTEL = Capability 6150++pattern FPGAKernelAttributesv2INTEL :: Capability+pattern FPGAKernelAttributesv2INTEL = Capability 6161++pattern FPMaxErrorINTEL :: Capability+pattern FPMaxErrorINTEL = Capability 6169++pattern FPGALatencyControlINTEL :: Capability+pattern FPGALatencyControlINTEL = Capability 6171++pattern FPGAArgumentInterfacesINTEL :: Capability+pattern FPGAArgumentInterfacesINTEL = Capability 6174++pattern GlobalVariableHostAccessINTEL :: Capability+pattern GlobalVariableHostAccessINTEL = Capability 6187++pattern GlobalVariableFPGADecorationsINTEL :: Capability+pattern GlobalVariableFPGADecorationsINTEL = Capability 6189++pattern GroupUniformArithmeticKHR :: Capability+pattern GroupUniformArithmeticKHR = Capability 6400++pattern MaskedGatherScatterINTEL :: Capability+pattern MaskedGatherScatterINTEL = Capability 6427++pattern CacheControlsINTEL :: Capability+pattern CacheControlsINTEL = Capability 6441++pattern RegisterLimitsINTEL :: Capability+pattern RegisterLimitsINTEL = Capability 6460
+ src/Data/SpirV/Enum/CooperativeMatrixLayout.hs view
@@ -0,0 +1,32 @@+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE TypeSynonymInstances #-}++module Data.SpirV.Enum.CooperativeMatrixLayout where++import Data.Int (Int32)+import Foreign.Storable (Storable)++newtype CooperativeMatrixLayout = CooperativeMatrixLayout Int32+  deriving newtype (Eq, Ord, Storable)++instance Show CooperativeMatrixLayout where+  showsPrec p (CooperativeMatrixLayout v) = case v of+    0 -> showString "RowMajorKHR"+    1 -> showString "ColumnMajorKHR"+    4202 -> showString "RowBlockedInterleavedARM"+    4203 -> showString "ColumnBlockedInterleavedARM"+    x -> showParen (p > 10) $ showString "CooperativeMatrixLayout " . showsPrec (p + 1) x++pattern RowMajorKHR :: CooperativeMatrixLayout+pattern RowMajorKHR = CooperativeMatrixLayout 0++pattern ColumnMajorKHR :: CooperativeMatrixLayout+pattern ColumnMajorKHR = CooperativeMatrixLayout 1++pattern RowBlockedInterleavedARM :: CooperativeMatrixLayout+pattern RowBlockedInterleavedARM = CooperativeMatrixLayout 4202++pattern ColumnBlockedInterleavedARM :: CooperativeMatrixLayout+pattern ColumnBlockedInterleavedARM = CooperativeMatrixLayout 4203
+ src/Data/SpirV/Enum/CooperativeMatrixOperands.hs view
@@ -0,0 +1,36 @@+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE TypeSynonymInstances #-}++module Data.SpirV.Enum.CooperativeMatrixOperands where++import Data.Bits (Bits, FiniteBits, (.|.))+import Data.Word (Word32)+import Foreign.Storable (Storable)++type CooperativeMatrixOperands = CooperativeMatrixOperandsBits++newtype CooperativeMatrixOperandsBits = CooperativeMatrixOperandsBits Word32+  deriving newtype (Eq, Ord, Storable, Bits, FiniteBits)++instance Semigroup CooperativeMatrixOperands where+  (CooperativeMatrixOperandsBits a) <> (CooperativeMatrixOperandsBits b) = CooperativeMatrixOperandsBits (a .|. b)++instance Monoid CooperativeMatrixOperands where+  mempty = CooperativeMatrixOperandsBits 0++pattern MatrixASignedComponentsKHR :: CooperativeMatrixOperandsBits+pattern MatrixASignedComponentsKHR = CooperativeMatrixOperandsBits 0x00000001++pattern MatrixBSignedComponentsKHR :: CooperativeMatrixOperandsBits+pattern MatrixBSignedComponentsKHR = CooperativeMatrixOperandsBits 0x00000002++pattern MatrixCSignedComponentsKHR :: CooperativeMatrixOperandsBits+pattern MatrixCSignedComponentsKHR = CooperativeMatrixOperandsBits 0x00000004++pattern MatrixResultSignedComponentsKHR :: CooperativeMatrixOperandsBits+pattern MatrixResultSignedComponentsKHR = CooperativeMatrixOperandsBits 0x00000008++pattern SaturatingAccumulationKHR :: CooperativeMatrixOperandsBits+pattern SaturatingAccumulationKHR = CooperativeMatrixOperandsBits 0x00000010
+ src/Data/SpirV/Enum/CooperativeMatrixUse.hs view
@@ -0,0 +1,28 @@+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE TypeSynonymInstances #-}++module Data.SpirV.Enum.CooperativeMatrixUse where++import Data.Int (Int32)+import Foreign.Storable (Storable)++newtype CooperativeMatrixUse = CooperativeMatrixUse Int32+  deriving newtype (Eq, Ord, Storable)++instance Show CooperativeMatrixUse where+  showsPrec p (CooperativeMatrixUse v) = case v of+    0 -> showString "MatrixAKHR"+    1 -> showString "MatrixBKHR"+    2 -> showString "MatrixAccumulatorKHR"+    x -> showParen (p > 10) $ showString "CooperativeMatrixUse " . showsPrec (p + 1) x++pattern MatrixAKHR :: CooperativeMatrixUse+pattern MatrixAKHR = CooperativeMatrixUse 0++pattern MatrixBKHR :: CooperativeMatrixUse+pattern MatrixBKHR = CooperativeMatrixUse 1++pattern MatrixAccumulatorKHR :: CooperativeMatrixUse+pattern MatrixAccumulatorKHR = CooperativeMatrixUse 2
+ src/Data/SpirV/Enum/Decoration.hs view
@@ -0,0 +1,589 @@+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE TypeSynonymInstances #-}++module Data.SpirV.Enum.Decoration where++import Data.Int (Int32)+import Foreign.Storable (Storable)++newtype Decoration = Decoration Int32+  deriving newtype (Eq, Ord, Storable)++instance Show Decoration where+  showsPrec p (Decoration v) = case v of+    0 -> showString "RelaxedPrecision"+    1 -> showString "SpecId"+    2 -> showString "Block"+    3 -> showString "BufferBlock"+    4 -> showString "RowMajor"+    5 -> showString "ColMajor"+    6 -> showString "ArrayStride"+    7 -> showString "MatrixStride"+    8 -> showString "GLSLShared"+    9 -> showString "GLSLPacked"+    10 -> showString "CPacked"+    11 -> showString "BuiltIn"+    13 -> showString "NoPerspective"+    14 -> showString "Flat"+    15 -> showString "Patch"+    16 -> showString "Centroid"+    17 -> showString "Sample"+    18 -> showString "Invariant"+    19 -> showString "Restrict"+    20 -> showString "Aliased"+    21 -> showString "Volatile"+    22 -> showString "Constant"+    23 -> showString "Coherent"+    24 -> showString "NonWritable"+    25 -> showString "NonReadable"+    26 -> showString "Uniform"+    27 -> showString "UniformId"+    28 -> showString "SaturatedConversion"+    29 -> showString "Stream"+    30 -> showString "Location"+    31 -> showString "Component"+    32 -> showString "Index"+    33 -> showString "Binding"+    34 -> showString "DescriptorSet"+    35 -> showString "Offset"+    36 -> showString "XfbBuffer"+    37 -> showString "XfbStride"+    38 -> showString "FuncParamAttr"+    39 -> showString "FPRoundingMode"+    40 -> showString "FPFastMathMode"+    41 -> showString "LinkageAttributes"+    42 -> showString "NoContraction"+    43 -> showString "InputAttachmentIndex"+    44 -> showString "Alignment"+    45 -> showString "MaxByteOffset"+    46 -> showString "AlignmentId"+    47 -> showString "MaxByteOffsetId"+    4469 -> showString "NoSignedWrap"+    4470 -> showString "NoUnsignedWrap"+    4487 -> showString "WeightTextureQCOM"+    4488 -> showString "BlockMatchTextureQCOM"+    4499 -> showString "BlockMatchSamplerQCOM"+    4999 -> showString "ExplicitInterpAMD"+    5019 -> showString "NodeSharesPayloadLimitsWithAMDX"+    5020 -> showString "NodeMaxPayloadsAMDX"+    5078 -> showString "TrackFinishWritingAMDX"+    5091 -> showString "PayloadNodeNameAMDX"+    5248 -> showString "OverrideCoverageNV"+    5250 -> showString "PassthroughNV"+    5252 -> showString "ViewportRelativeNV"+    5256 -> showString "SecondaryViewportRelativeNV"+    5271 -> showString "PerPrimitiveEXT"+    5272 -> showString "PerViewNV"+    5273 -> showString "PerTaskNV"+    5285 -> showString "PerVertexKHR"+    5300 -> showString "NonUniform"+    5355 -> showString "RestrictPointer"+    5356 -> showString "AliasedPointer"+    5386 -> showString "HitObjectShaderRecordBufferNV"+    5398 -> showString "BindlessSamplerNV"+    5399 -> showString "BindlessImageNV"+    5400 -> showString "BoundSamplerNV"+    5401 -> showString "BoundImageNV"+    5599 -> showString "SIMTCallINTEL"+    5602 -> showString "ReferencedIndirectlyINTEL"+    5607 -> showString "ClobberINTEL"+    5608 -> showString "SideEffectsINTEL"+    5624 -> showString "VectorComputeVariableINTEL"+    5625 -> showString "FuncParamIOKindINTEL"+    5626 -> showString "VectorComputeFunctionINTEL"+    5627 -> showString "StackCallINTEL"+    5628 -> showString "GlobalVariableOffsetINTEL"+    5634 -> showString "CounterBuffer"+    5635 -> showString "HlslSemanticGOOGLE"+    5636 -> showString "UserTypeGOOGLE"+    5822 -> showString "FunctionRoundingModeINTEL"+    5823 -> showString "FunctionDenormModeINTEL"+    5825 -> showString "RegisterINTEL"+    5826 -> showString "MemoryINTEL"+    5827 -> showString "NumbanksINTEL"+    5828 -> showString "BankwidthINTEL"+    5829 -> showString "MaxPrivateCopiesINTEL"+    5830 -> showString "SinglepumpINTEL"+    5831 -> showString "DoublepumpINTEL"+    5832 -> showString "MaxReplicatesINTEL"+    5833 -> showString "SimpleDualPortINTEL"+    5834 -> showString "MergeINTEL"+    5835 -> showString "BankBitsINTEL"+    5836 -> showString "ForcePow2DepthINTEL"+    5883 -> showString "StridesizeINTEL"+    5884 -> showString "WordsizeINTEL"+    5885 -> showString "TrueDualPortINTEL"+    5899 -> showString "BurstCoalesceINTEL"+    5900 -> showString "CacheSizeINTEL"+    5901 -> showString "DontStaticallyCoalesceINTEL"+    5902 -> showString "PrefetchINTEL"+    5905 -> showString "StallEnableINTEL"+    5907 -> showString "FuseLoopsInFunctionINTEL"+    5909 -> showString "MathOpDSPModeINTEL"+    5914 -> showString "AliasScopeINTEL"+    5915 -> showString "NoAliasINTEL"+    5917 -> showString "InitiationIntervalINTEL"+    5918 -> showString "MaxConcurrencyINTEL"+    5919 -> showString "PipelineEnableINTEL"+    5921 -> showString "BufferLocationINTEL"+    5944 -> showString "IOPipeStorageINTEL"+    6080 -> showString "FunctionFloatingPointModeINTEL"+    6085 -> showString "SingleElementVectorINTEL"+    6087 -> showString "VectorComputeCallableFunctionINTEL"+    6140 -> showString "MediaBlockIOINTEL"+    6151 -> showString "StallFreeINTEL"+    6170 -> showString "FPMaxErrorDecorationINTEL"+    6172 -> showString "LatencyControlLabelINTEL"+    6173 -> showString "LatencyControlConstraintINTEL"+    6175 -> showString "ConduitKernelArgumentINTEL"+    6176 -> showString "RegisterMapKernelArgumentINTEL"+    6177 -> showString "MMHostInterfaceAddressWidthINTEL"+    6178 -> showString "MMHostInterfaceDataWidthINTEL"+    6179 -> showString "MMHostInterfaceLatencyINTEL"+    6180 -> showString "MMHostInterfaceReadWriteModeINTEL"+    6181 -> showString "MMHostInterfaceMaxBurstINTEL"+    6182 -> showString "MMHostInterfaceWaitRequestINTEL"+    6183 -> showString "StableKernelArgumentINTEL"+    6188 -> showString "HostAccessINTEL"+    6190 -> showString "InitModeINTEL"+    6191 -> showString "ImplementInRegisterMapINTEL"+    6442 -> showString "CacheControlLoadINTEL"+    6443 -> showString "CacheControlStoreINTEL"+    x -> showParen (p > 10) $ showString "Decoration " . showsPrec (p + 1) x++pattern RelaxedPrecision :: Decoration+pattern RelaxedPrecision = Decoration 0++pattern SpecId :: Decoration+pattern SpecId = Decoration 1++pattern Block :: Decoration+pattern Block = Decoration 2++pattern BufferBlock :: Decoration+pattern BufferBlock = Decoration 3++pattern RowMajor :: Decoration+pattern RowMajor = Decoration 4++pattern ColMajor :: Decoration+pattern ColMajor = Decoration 5++pattern ArrayStride :: Decoration+pattern ArrayStride = Decoration 6++pattern MatrixStride :: Decoration+pattern MatrixStride = Decoration 7++pattern GLSLShared :: Decoration+pattern GLSLShared = Decoration 8++pattern GLSLPacked :: Decoration+pattern GLSLPacked = Decoration 9++pattern CPacked :: Decoration+pattern CPacked = Decoration 10++pattern BuiltIn :: Decoration+pattern BuiltIn = Decoration 11++pattern NoPerspective :: Decoration+pattern NoPerspective = Decoration 13++pattern Flat :: Decoration+pattern Flat = Decoration 14++pattern Patch :: Decoration+pattern Patch = Decoration 15++pattern Centroid :: Decoration+pattern Centroid = Decoration 16++pattern Sample :: Decoration+pattern Sample = Decoration 17++pattern Invariant :: Decoration+pattern Invariant = Decoration 18++pattern Restrict :: Decoration+pattern Restrict = Decoration 19++pattern Aliased :: Decoration+pattern Aliased = Decoration 20++pattern Volatile :: Decoration+pattern Volatile = Decoration 21++pattern Constant :: Decoration+pattern Constant = Decoration 22++pattern Coherent :: Decoration+pattern Coherent = Decoration 23++pattern NonWritable :: Decoration+pattern NonWritable = Decoration 24++pattern NonReadable :: Decoration+pattern NonReadable = Decoration 25++pattern Uniform :: Decoration+pattern Uniform = Decoration 26++pattern UniformId :: Decoration+pattern UniformId = Decoration 27++pattern SaturatedConversion :: Decoration+pattern SaturatedConversion = Decoration 28++pattern Stream :: Decoration+pattern Stream = Decoration 29++pattern Location :: Decoration+pattern Location = Decoration 30++pattern Component :: Decoration+pattern Component = Decoration 31++pattern Index :: Decoration+pattern Index = Decoration 32++pattern Binding :: Decoration+pattern Binding = Decoration 33++pattern DescriptorSet :: Decoration+pattern DescriptorSet = Decoration 34++pattern Offset :: Decoration+pattern Offset = Decoration 35++pattern XfbBuffer :: Decoration+pattern XfbBuffer = Decoration 36++pattern XfbStride :: Decoration+pattern XfbStride = Decoration 37++pattern FuncParamAttr :: Decoration+pattern FuncParamAttr = Decoration 38++pattern FPRoundingMode :: Decoration+pattern FPRoundingMode = Decoration 39++pattern FPFastMathMode :: Decoration+pattern FPFastMathMode = Decoration 40++pattern LinkageAttributes :: Decoration+pattern LinkageAttributes = Decoration 41++pattern NoContraction :: Decoration+pattern NoContraction = Decoration 42++pattern InputAttachmentIndex :: Decoration+pattern InputAttachmentIndex = Decoration 43++pattern Alignment :: Decoration+pattern Alignment = Decoration 44++pattern MaxByteOffset :: Decoration+pattern MaxByteOffset = Decoration 45++pattern AlignmentId :: Decoration+pattern AlignmentId = Decoration 46++pattern MaxByteOffsetId :: Decoration+pattern MaxByteOffsetId = Decoration 47++pattern NoSignedWrap :: Decoration+pattern NoSignedWrap = Decoration 4469++pattern NoUnsignedWrap :: Decoration+pattern NoUnsignedWrap = Decoration 4470++pattern WeightTextureQCOM :: Decoration+pattern WeightTextureQCOM = Decoration 4487++pattern BlockMatchTextureQCOM :: Decoration+pattern BlockMatchTextureQCOM = Decoration 4488++pattern BlockMatchSamplerQCOM :: Decoration+pattern BlockMatchSamplerQCOM = Decoration 4499++pattern ExplicitInterpAMD :: Decoration+pattern ExplicitInterpAMD = Decoration 4999++pattern NodeSharesPayloadLimitsWithAMDX :: Decoration+pattern NodeSharesPayloadLimitsWithAMDX = Decoration 5019++pattern NodeMaxPayloadsAMDX :: Decoration+pattern NodeMaxPayloadsAMDX = Decoration 5020++pattern TrackFinishWritingAMDX :: Decoration+pattern TrackFinishWritingAMDX = Decoration 5078++pattern PayloadNodeNameAMDX :: Decoration+pattern PayloadNodeNameAMDX = Decoration 5091++pattern OverrideCoverageNV :: Decoration+pattern OverrideCoverageNV = Decoration 5248++pattern PassthroughNV :: Decoration+pattern PassthroughNV = Decoration 5250++pattern ViewportRelativeNV :: Decoration+pattern ViewportRelativeNV = Decoration 5252++pattern SecondaryViewportRelativeNV :: Decoration+pattern SecondaryViewportRelativeNV = Decoration 5256++pattern PerPrimitiveEXT :: Decoration+pattern PerPrimitiveEXT = Decoration 5271++pattern PerPrimitiveNV :: Decoration+pattern PerPrimitiveNV = Decoration 5271++pattern PerViewNV :: Decoration+pattern PerViewNV = Decoration 5272++pattern PerTaskNV :: Decoration+pattern PerTaskNV = Decoration 5273++pattern PerVertexKHR :: Decoration+pattern PerVertexKHR = Decoration 5285++pattern PerVertexNV :: Decoration+pattern PerVertexNV = Decoration 5285++pattern NonUniform :: Decoration+pattern NonUniform = Decoration 5300++pattern NonUniformEXT :: Decoration+pattern NonUniformEXT = Decoration 5300++pattern RestrictPointer :: Decoration+pattern RestrictPointer = Decoration 5355++pattern RestrictPointerEXT :: Decoration+pattern RestrictPointerEXT = Decoration 5355++pattern AliasedPointer :: Decoration+pattern AliasedPointer = Decoration 5356++pattern AliasedPointerEXT :: Decoration+pattern AliasedPointerEXT = Decoration 5356++pattern HitObjectShaderRecordBufferNV :: Decoration+pattern HitObjectShaderRecordBufferNV = Decoration 5386++pattern BindlessSamplerNV :: Decoration+pattern BindlessSamplerNV = Decoration 5398++pattern BindlessImageNV :: Decoration+pattern BindlessImageNV = Decoration 5399++pattern BoundSamplerNV :: Decoration+pattern BoundSamplerNV = Decoration 5400++pattern BoundImageNV :: Decoration+pattern BoundImageNV = Decoration 5401++pattern SIMTCallINTEL :: Decoration+pattern SIMTCallINTEL = Decoration 5599++pattern ReferencedIndirectlyINTEL :: Decoration+pattern ReferencedIndirectlyINTEL = Decoration 5602++pattern ClobberINTEL :: Decoration+pattern ClobberINTEL = Decoration 5607++pattern SideEffectsINTEL :: Decoration+pattern SideEffectsINTEL = Decoration 5608++pattern VectorComputeVariableINTEL :: Decoration+pattern VectorComputeVariableINTEL = Decoration 5624++pattern FuncParamIOKindINTEL :: Decoration+pattern FuncParamIOKindINTEL = Decoration 5625++pattern VectorComputeFunctionINTEL :: Decoration+pattern VectorComputeFunctionINTEL = Decoration 5626++pattern StackCallINTEL :: Decoration+pattern StackCallINTEL = Decoration 5627++pattern GlobalVariableOffsetINTEL :: Decoration+pattern GlobalVariableOffsetINTEL = Decoration 5628++pattern CounterBuffer :: Decoration+pattern CounterBuffer = Decoration 5634++pattern HlslCounterBufferGOOGLE :: Decoration+pattern HlslCounterBufferGOOGLE = Decoration 5634++pattern HlslSemanticGOOGLE :: Decoration+pattern HlslSemanticGOOGLE = Decoration 5635++pattern UserSemantic :: Decoration+pattern UserSemantic = Decoration 5635++pattern UserTypeGOOGLE :: Decoration+pattern UserTypeGOOGLE = Decoration 5636++pattern FunctionRoundingModeINTEL :: Decoration+pattern FunctionRoundingModeINTEL = Decoration 5822++pattern FunctionDenormModeINTEL :: Decoration+pattern FunctionDenormModeINTEL = Decoration 5823++pattern RegisterINTEL :: Decoration+pattern RegisterINTEL = Decoration 5825++pattern MemoryINTEL :: Decoration+pattern MemoryINTEL = Decoration 5826++pattern NumbanksINTEL :: Decoration+pattern NumbanksINTEL = Decoration 5827++pattern BankwidthINTEL :: Decoration+pattern BankwidthINTEL = Decoration 5828++pattern MaxPrivateCopiesINTEL :: Decoration+pattern MaxPrivateCopiesINTEL = Decoration 5829++pattern SinglepumpINTEL :: Decoration+pattern SinglepumpINTEL = Decoration 5830++pattern DoublepumpINTEL :: Decoration+pattern DoublepumpINTEL = Decoration 5831++pattern MaxReplicatesINTEL :: Decoration+pattern MaxReplicatesINTEL = Decoration 5832++pattern SimpleDualPortINTEL :: Decoration+pattern SimpleDualPortINTEL = Decoration 5833++pattern MergeINTEL :: Decoration+pattern MergeINTEL = Decoration 5834++pattern BankBitsINTEL :: Decoration+pattern BankBitsINTEL = Decoration 5835++pattern ForcePow2DepthINTEL :: Decoration+pattern ForcePow2DepthINTEL = Decoration 5836++pattern StridesizeINTEL :: Decoration+pattern StridesizeINTEL = Decoration 5883++pattern WordsizeINTEL :: Decoration+pattern WordsizeINTEL = Decoration 5884++pattern TrueDualPortINTEL :: Decoration+pattern TrueDualPortINTEL = Decoration 5885++pattern BurstCoalesceINTEL :: Decoration+pattern BurstCoalesceINTEL = Decoration 5899++pattern CacheSizeINTEL :: Decoration+pattern CacheSizeINTEL = Decoration 5900++pattern DontStaticallyCoalesceINTEL :: Decoration+pattern DontStaticallyCoalesceINTEL = Decoration 5901++pattern PrefetchINTEL :: Decoration+pattern PrefetchINTEL = Decoration 5902++pattern StallEnableINTEL :: Decoration+pattern StallEnableINTEL = Decoration 5905++pattern FuseLoopsInFunctionINTEL :: Decoration+pattern FuseLoopsInFunctionINTEL = Decoration 5907++pattern MathOpDSPModeINTEL :: Decoration+pattern MathOpDSPModeINTEL = Decoration 5909++pattern AliasScopeINTEL :: Decoration+pattern AliasScopeINTEL = Decoration 5914++pattern NoAliasINTEL :: Decoration+pattern NoAliasINTEL = Decoration 5915++pattern InitiationIntervalINTEL :: Decoration+pattern InitiationIntervalINTEL = Decoration 5917++pattern MaxConcurrencyINTEL :: Decoration+pattern MaxConcurrencyINTEL = Decoration 5918++pattern PipelineEnableINTEL :: Decoration+pattern PipelineEnableINTEL = Decoration 5919++pattern BufferLocationINTEL :: Decoration+pattern BufferLocationINTEL = Decoration 5921++pattern IOPipeStorageINTEL :: Decoration+pattern IOPipeStorageINTEL = Decoration 5944++pattern FunctionFloatingPointModeINTEL :: Decoration+pattern FunctionFloatingPointModeINTEL = Decoration 6080++pattern SingleElementVectorINTEL :: Decoration+pattern SingleElementVectorINTEL = Decoration 6085++pattern VectorComputeCallableFunctionINTEL :: Decoration+pattern VectorComputeCallableFunctionINTEL = Decoration 6087++pattern MediaBlockIOINTEL :: Decoration+pattern MediaBlockIOINTEL = Decoration 6140++pattern StallFreeINTEL :: Decoration+pattern StallFreeINTEL = Decoration 6151++pattern FPMaxErrorDecorationINTEL :: Decoration+pattern FPMaxErrorDecorationINTEL = Decoration 6170++pattern LatencyControlLabelINTEL :: Decoration+pattern LatencyControlLabelINTEL = Decoration 6172++pattern LatencyControlConstraintINTEL :: Decoration+pattern LatencyControlConstraintINTEL = Decoration 6173++pattern ConduitKernelArgumentINTEL :: Decoration+pattern ConduitKernelArgumentINTEL = Decoration 6175++pattern RegisterMapKernelArgumentINTEL :: Decoration+pattern RegisterMapKernelArgumentINTEL = Decoration 6176++pattern MMHostInterfaceAddressWidthINTEL :: Decoration+pattern MMHostInterfaceAddressWidthINTEL = Decoration 6177++pattern MMHostInterfaceDataWidthINTEL :: Decoration+pattern MMHostInterfaceDataWidthINTEL = Decoration 6178++pattern MMHostInterfaceLatencyINTEL :: Decoration+pattern MMHostInterfaceLatencyINTEL = Decoration 6179++pattern MMHostInterfaceReadWriteModeINTEL :: Decoration+pattern MMHostInterfaceReadWriteModeINTEL = Decoration 6180++pattern MMHostInterfaceMaxBurstINTEL :: Decoration+pattern MMHostInterfaceMaxBurstINTEL = Decoration 6181++pattern MMHostInterfaceWaitRequestINTEL :: Decoration+pattern MMHostInterfaceWaitRequestINTEL = Decoration 6182++pattern StableKernelArgumentINTEL :: Decoration+pattern StableKernelArgumentINTEL = Decoration 6183++pattern HostAccessINTEL :: Decoration+pattern HostAccessINTEL = Decoration 6188++pattern InitModeINTEL :: Decoration+pattern InitModeINTEL = Decoration 6190++pattern ImplementInRegisterMapINTEL :: Decoration+pattern ImplementInRegisterMapINTEL = Decoration 6191++pattern CacheControlLoadINTEL :: Decoration+pattern CacheControlLoadINTEL = Decoration 6442++pattern CacheControlStoreINTEL :: Decoration+pattern CacheControlStoreINTEL = Decoration 6443
+ src/Data/SpirV/Enum/Dim.hs view
@@ -0,0 +1,48 @@+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE TypeSynonymInstances #-}++module Data.SpirV.Enum.Dim where++import Data.Int (Int32)+import Foreign.Storable (Storable)++newtype Dim = Dim Int32+  deriving newtype (Eq, Ord, Storable)++instance Show Dim where+  showsPrec p (Dim v) = case v of+    0 -> showString "Dim1D"+    1 -> showString "Dim2D"+    2 -> showString "Dim3D"+    3 -> showString "Cube"+    4 -> showString "Rect"+    5 -> showString "Buffer"+    6 -> showString "SubpassData"+    4173 -> showString "TileImageDataEXT"+    x -> showParen (p > 10) $ showString "Dim " . showsPrec (p + 1) x++pattern Dim1D :: Dim+pattern Dim1D = Dim 0++pattern Dim2D :: Dim+pattern Dim2D = Dim 1++pattern Dim3D :: Dim+pattern Dim3D = Dim 2++pattern Cube :: Dim+pattern Cube = Dim 3++pattern Rect :: Dim+pattern Rect = Dim 4++pattern Buffer :: Dim+pattern Buffer = Dim 5++pattern SubpassData :: Dim+pattern SubpassData = Dim 6++pattern TileImageDataEXT :: Dim+pattern TileImageDataEXT = Dim 4173
+ src/Data/SpirV/Enum/ExecutionMode.hs view
@@ -0,0 +1,393 @@+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE TypeSynonymInstances #-}++module Data.SpirV.Enum.ExecutionMode where++import Data.Int (Int32)+import Foreign.Storable (Storable)++newtype ExecutionMode = ExecutionMode Int32+  deriving newtype (Eq, Ord, Storable)++instance Show ExecutionMode where+  showsPrec p (ExecutionMode v) = case v of+    0 -> showString "Invocations"+    1 -> showString "SpacingEqual"+    2 -> showString "SpacingFractionalEven"+    3 -> showString "SpacingFractionalOdd"+    4 -> showString "VertexOrderCw"+    5 -> showString "VertexOrderCcw"+    6 -> showString "PixelCenterInteger"+    7 -> showString "OriginUpperLeft"+    8 -> showString "OriginLowerLeft"+    9 -> showString "EarlyFragmentTests"+    10 -> showString "PointMode"+    11 -> showString "Xfb"+    12 -> showString "DepthReplacing"+    14 -> showString "DepthGreater"+    15 -> showString "DepthLess"+    16 -> showString "DepthUnchanged"+    17 -> showString "LocalSize"+    18 -> showString "LocalSizeHint"+    19 -> showString "InputPoints"+    20 -> showString "InputLines"+    21 -> showString "InputLinesAdjacency"+    22 -> showString "Triangles"+    23 -> showString "InputTrianglesAdjacency"+    24 -> showString "Quads"+    25 -> showString "Isolines"+    26 -> showString "OutputVertices"+    27 -> showString "OutputPoints"+    28 -> showString "OutputLineStrip"+    29 -> showString "OutputTriangleStrip"+    30 -> showString "VecTypeHint"+    31 -> showString "ContractionOff"+    33 -> showString "Initializer"+    34 -> showString "Finalizer"+    35 -> showString "SubgroupSize"+    36 -> showString "SubgroupsPerWorkgroup"+    37 -> showString "SubgroupsPerWorkgroupId"+    38 -> showString "LocalSizeId"+    39 -> showString "LocalSizeHintId"+    4169 -> showString "NonCoherentColorAttachmentReadEXT"+    4170 -> showString "NonCoherentDepthAttachmentReadEXT"+    4171 -> showString "NonCoherentStencilAttachmentReadEXT"+    4421 -> showString "SubgroupUniformControlFlowKHR"+    4446 -> showString "PostDepthCoverage"+    4459 -> showString "DenormPreserve"+    4460 -> showString "DenormFlushToZero"+    4461 -> showString "SignedZeroInfNanPreserve"+    4462 -> showString "RoundingModeRTE"+    4463 -> showString "RoundingModeRTZ"+    5017 -> showString "EarlyAndLateFragmentTestsAMD"+    5027 -> showString "StencilRefReplacingEXT"+    5069 -> showString "CoalescingAMDX"+    5071 -> showString "MaxNodeRecursionAMDX"+    5072 -> showString "StaticNumWorkgroupsAMDX"+    5073 -> showString "ShaderIndexAMDX"+    5077 -> showString "MaxNumWorkgroupsAMDX"+    5079 -> showString "StencilRefUnchangedFrontAMD"+    5080 -> showString "StencilRefGreaterFrontAMD"+    5081 -> showString "StencilRefLessFrontAMD"+    5082 -> showString "StencilRefUnchangedBackAMD"+    5083 -> showString "StencilRefGreaterBackAMD"+    5084 -> showString "StencilRefLessBackAMD"+    5088 -> showString "QuadDerivativesKHR"+    5089 -> showString "RequireFullQuadsKHR"+    5269 -> showString "OutputLinesEXT"+    5270 -> showString "OutputPrimitivesEXT"+    5289 -> showString "DerivativeGroupQuadsNV"+    5290 -> showString "DerivativeGroupLinearNV"+    5298 -> showString "OutputTrianglesEXT"+    5366 -> showString "PixelInterlockOrderedEXT"+    5367 -> showString "PixelInterlockUnorderedEXT"+    5368 -> showString "SampleInterlockOrderedEXT"+    5369 -> showString "SampleInterlockUnorderedEXT"+    5370 -> showString "ShadingRateInterlockOrderedEXT"+    5371 -> showString "ShadingRateInterlockUnorderedEXT"+    5618 -> showString "SharedLocalMemorySizeINTEL"+    5620 -> showString "RoundingModeRTPINTEL"+    5621 -> showString "RoundingModeRTNINTEL"+    5622 -> showString "FloatingPointModeALTINTEL"+    5623 -> showString "FloatingPointModeIEEEINTEL"+    5893 -> showString "MaxWorkgroupSizeINTEL"+    5894 -> showString "MaxWorkDimINTEL"+    5895 -> showString "NoGlobalOffsetINTEL"+    5896 -> showString "NumSIMDWorkitemsINTEL"+    5903 -> showString "SchedulerTargetFmaxMhzINTEL"+    6023 -> showString "MaximallyReconvergesKHR"+    6028 -> showString "FPFastMathDefault"+    6154 -> showString "StreamingInterfaceINTEL"+    6160 -> showString "RegisterMapInterfaceINTEL"+    6417 -> showString "NamedBarrierCountINTEL"+    6461 -> showString "MaximumRegistersINTEL"+    6462 -> showString "MaximumRegistersIdINTEL"+    6463 -> showString "NamedMaximumRegistersINTEL"+    x -> showParen (p > 10) $ showString "ExecutionMode " . showsPrec (p + 1) x++pattern Invocations :: ExecutionMode+pattern Invocations = ExecutionMode 0++pattern SpacingEqual :: ExecutionMode+pattern SpacingEqual = ExecutionMode 1++pattern SpacingFractionalEven :: ExecutionMode+pattern SpacingFractionalEven = ExecutionMode 2++pattern SpacingFractionalOdd :: ExecutionMode+pattern SpacingFractionalOdd = ExecutionMode 3++pattern VertexOrderCw :: ExecutionMode+pattern VertexOrderCw = ExecutionMode 4++pattern VertexOrderCcw :: ExecutionMode+pattern VertexOrderCcw = ExecutionMode 5++pattern PixelCenterInteger :: ExecutionMode+pattern PixelCenterInteger = ExecutionMode 6++pattern OriginUpperLeft :: ExecutionMode+pattern OriginUpperLeft = ExecutionMode 7++pattern OriginLowerLeft :: ExecutionMode+pattern OriginLowerLeft = ExecutionMode 8++pattern EarlyFragmentTests :: ExecutionMode+pattern EarlyFragmentTests = ExecutionMode 9++pattern PointMode :: ExecutionMode+pattern PointMode = ExecutionMode 10++pattern Xfb :: ExecutionMode+pattern Xfb = ExecutionMode 11++pattern DepthReplacing :: ExecutionMode+pattern DepthReplacing = ExecutionMode 12++pattern DepthGreater :: ExecutionMode+pattern DepthGreater = ExecutionMode 14++pattern DepthLess :: ExecutionMode+pattern DepthLess = ExecutionMode 15++pattern DepthUnchanged :: ExecutionMode+pattern DepthUnchanged = ExecutionMode 16++pattern LocalSize :: ExecutionMode+pattern LocalSize = ExecutionMode 17++pattern LocalSizeHint :: ExecutionMode+pattern LocalSizeHint = ExecutionMode 18++pattern InputPoints :: ExecutionMode+pattern InputPoints = ExecutionMode 19++pattern InputLines :: ExecutionMode+pattern InputLines = ExecutionMode 20++pattern InputLinesAdjacency :: ExecutionMode+pattern InputLinesAdjacency = ExecutionMode 21++pattern Triangles :: ExecutionMode+pattern Triangles = ExecutionMode 22++pattern InputTrianglesAdjacency :: ExecutionMode+pattern InputTrianglesAdjacency = ExecutionMode 23++pattern Quads :: ExecutionMode+pattern Quads = ExecutionMode 24++pattern Isolines :: ExecutionMode+pattern Isolines = ExecutionMode 25++pattern OutputVertices :: ExecutionMode+pattern OutputVertices = ExecutionMode 26++pattern OutputPoints :: ExecutionMode+pattern OutputPoints = ExecutionMode 27++pattern OutputLineStrip :: ExecutionMode+pattern OutputLineStrip = ExecutionMode 28++pattern OutputTriangleStrip :: ExecutionMode+pattern OutputTriangleStrip = ExecutionMode 29++pattern VecTypeHint :: ExecutionMode+pattern VecTypeHint = ExecutionMode 30++pattern ContractionOff :: ExecutionMode+pattern ContractionOff = ExecutionMode 31++pattern Initializer :: ExecutionMode+pattern Initializer = ExecutionMode 33++pattern Finalizer :: ExecutionMode+pattern Finalizer = ExecutionMode 34++pattern SubgroupSize :: ExecutionMode+pattern SubgroupSize = ExecutionMode 35++pattern SubgroupsPerWorkgroup :: ExecutionMode+pattern SubgroupsPerWorkgroup = ExecutionMode 36++pattern SubgroupsPerWorkgroupId :: ExecutionMode+pattern SubgroupsPerWorkgroupId = ExecutionMode 37++pattern LocalSizeId :: ExecutionMode+pattern LocalSizeId = ExecutionMode 38++pattern LocalSizeHintId :: ExecutionMode+pattern LocalSizeHintId = ExecutionMode 39++pattern NonCoherentColorAttachmentReadEXT :: ExecutionMode+pattern NonCoherentColorAttachmentReadEXT = ExecutionMode 4169++pattern NonCoherentDepthAttachmentReadEXT :: ExecutionMode+pattern NonCoherentDepthAttachmentReadEXT = ExecutionMode 4170++pattern NonCoherentStencilAttachmentReadEXT :: ExecutionMode+pattern NonCoherentStencilAttachmentReadEXT = ExecutionMode 4171++pattern SubgroupUniformControlFlowKHR :: ExecutionMode+pattern SubgroupUniformControlFlowKHR = ExecutionMode 4421++pattern PostDepthCoverage :: ExecutionMode+pattern PostDepthCoverage = ExecutionMode 4446++pattern DenormPreserve :: ExecutionMode+pattern DenormPreserve = ExecutionMode 4459++pattern DenormFlushToZero :: ExecutionMode+pattern DenormFlushToZero = ExecutionMode 4460++pattern SignedZeroInfNanPreserve :: ExecutionMode+pattern SignedZeroInfNanPreserve = ExecutionMode 4461++pattern RoundingModeRTE :: ExecutionMode+pattern RoundingModeRTE = ExecutionMode 4462++pattern RoundingModeRTZ :: ExecutionMode+pattern RoundingModeRTZ = ExecutionMode 4463++pattern EarlyAndLateFragmentTestsAMD :: ExecutionMode+pattern EarlyAndLateFragmentTestsAMD = ExecutionMode 5017++pattern StencilRefReplacingEXT :: ExecutionMode+pattern StencilRefReplacingEXT = ExecutionMode 5027++pattern CoalescingAMDX :: ExecutionMode+pattern CoalescingAMDX = ExecutionMode 5069++pattern MaxNodeRecursionAMDX :: ExecutionMode+pattern MaxNodeRecursionAMDX = ExecutionMode 5071++pattern StaticNumWorkgroupsAMDX :: ExecutionMode+pattern StaticNumWorkgroupsAMDX = ExecutionMode 5072++pattern ShaderIndexAMDX :: ExecutionMode+pattern ShaderIndexAMDX = ExecutionMode 5073++pattern MaxNumWorkgroupsAMDX :: ExecutionMode+pattern MaxNumWorkgroupsAMDX = ExecutionMode 5077++pattern StencilRefUnchangedFrontAMD :: ExecutionMode+pattern StencilRefUnchangedFrontAMD = ExecutionMode 5079++pattern StencilRefGreaterFrontAMD :: ExecutionMode+pattern StencilRefGreaterFrontAMD = ExecutionMode 5080++pattern StencilRefLessFrontAMD :: ExecutionMode+pattern StencilRefLessFrontAMD = ExecutionMode 5081++pattern StencilRefUnchangedBackAMD :: ExecutionMode+pattern StencilRefUnchangedBackAMD = ExecutionMode 5082++pattern StencilRefGreaterBackAMD :: ExecutionMode+pattern StencilRefGreaterBackAMD = ExecutionMode 5083++pattern StencilRefLessBackAMD :: ExecutionMode+pattern StencilRefLessBackAMD = ExecutionMode 5084++pattern QuadDerivativesKHR :: ExecutionMode+pattern QuadDerivativesKHR = ExecutionMode 5088++pattern RequireFullQuadsKHR :: ExecutionMode+pattern RequireFullQuadsKHR = ExecutionMode 5089++pattern OutputLinesEXT :: ExecutionMode+pattern OutputLinesEXT = ExecutionMode 5269++pattern OutputLinesNV :: ExecutionMode+pattern OutputLinesNV = ExecutionMode 5269++pattern OutputPrimitivesEXT :: ExecutionMode+pattern OutputPrimitivesEXT = ExecutionMode 5270++pattern OutputPrimitivesNV :: ExecutionMode+pattern OutputPrimitivesNV = ExecutionMode 5270++pattern DerivativeGroupQuadsNV :: ExecutionMode+pattern DerivativeGroupQuadsNV = ExecutionMode 5289++pattern DerivativeGroupLinearNV :: ExecutionMode+pattern DerivativeGroupLinearNV = ExecutionMode 5290++pattern OutputTrianglesEXT :: ExecutionMode+pattern OutputTrianglesEXT = ExecutionMode 5298++pattern OutputTrianglesNV :: ExecutionMode+pattern OutputTrianglesNV = ExecutionMode 5298++pattern PixelInterlockOrderedEXT :: ExecutionMode+pattern PixelInterlockOrderedEXT = ExecutionMode 5366++pattern PixelInterlockUnorderedEXT :: ExecutionMode+pattern PixelInterlockUnorderedEXT = ExecutionMode 5367++pattern SampleInterlockOrderedEXT :: ExecutionMode+pattern SampleInterlockOrderedEXT = ExecutionMode 5368++pattern SampleInterlockUnorderedEXT :: ExecutionMode+pattern SampleInterlockUnorderedEXT = ExecutionMode 5369++pattern ShadingRateInterlockOrderedEXT :: ExecutionMode+pattern ShadingRateInterlockOrderedEXT = ExecutionMode 5370++pattern ShadingRateInterlockUnorderedEXT :: ExecutionMode+pattern ShadingRateInterlockUnorderedEXT = ExecutionMode 5371++pattern SharedLocalMemorySizeINTEL :: ExecutionMode+pattern SharedLocalMemorySizeINTEL = ExecutionMode 5618++pattern RoundingModeRTPINTEL :: ExecutionMode+pattern RoundingModeRTPINTEL = ExecutionMode 5620++pattern RoundingModeRTNINTEL :: ExecutionMode+pattern RoundingModeRTNINTEL = ExecutionMode 5621++pattern FloatingPointModeALTINTEL :: ExecutionMode+pattern FloatingPointModeALTINTEL = ExecutionMode 5622++pattern FloatingPointModeIEEEINTEL :: ExecutionMode+pattern FloatingPointModeIEEEINTEL = ExecutionMode 5623++pattern MaxWorkgroupSizeINTEL :: ExecutionMode+pattern MaxWorkgroupSizeINTEL = ExecutionMode 5893++pattern MaxWorkDimINTEL :: ExecutionMode+pattern MaxWorkDimINTEL = ExecutionMode 5894++pattern NoGlobalOffsetINTEL :: ExecutionMode+pattern NoGlobalOffsetINTEL = ExecutionMode 5895++pattern NumSIMDWorkitemsINTEL :: ExecutionMode+pattern NumSIMDWorkitemsINTEL = ExecutionMode 5896++pattern SchedulerTargetFmaxMhzINTEL :: ExecutionMode+pattern SchedulerTargetFmaxMhzINTEL = ExecutionMode 5903++pattern MaximallyReconvergesKHR :: ExecutionMode+pattern MaximallyReconvergesKHR = ExecutionMode 6023++pattern FPFastMathDefault :: ExecutionMode+pattern FPFastMathDefault = ExecutionMode 6028++pattern StreamingInterfaceINTEL :: ExecutionMode+pattern StreamingInterfaceINTEL = ExecutionMode 6154++pattern RegisterMapInterfaceINTEL :: ExecutionMode+pattern RegisterMapInterfaceINTEL = ExecutionMode 6160++pattern NamedBarrierCountINTEL :: ExecutionMode+pattern NamedBarrierCountINTEL = ExecutionMode 6417++pattern MaximumRegistersINTEL :: ExecutionMode+pattern MaximumRegistersINTEL = ExecutionMode 6461++pattern MaximumRegistersIdINTEL :: ExecutionMode+pattern MaximumRegistersIdINTEL = ExecutionMode 6462++pattern NamedMaximumRegistersINTEL :: ExecutionMode+pattern NamedMaximumRegistersINTEL = ExecutionMode 6463
+ src/Data/SpirV/Enum/ExecutionModel.hs view
@@ -0,0 +1,102 @@+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE TypeSynonymInstances #-}++module Data.SpirV.Enum.ExecutionModel where++import Data.Int (Int32)+import Foreign.Storable (Storable)++newtype ExecutionModel = ExecutionModel Int32+  deriving newtype (Eq, Ord, Storable)++instance Show ExecutionModel where+  showsPrec p (ExecutionModel v) = case v of+    0 -> showString "Vertex"+    1 -> showString "TessellationControl"+    2 -> showString "TessellationEvaluation"+    3 -> showString "Geometry"+    4 -> showString "Fragment"+    5 -> showString "GLCompute"+    6 -> showString "Kernel"+    5267 -> showString "TaskNV"+    5268 -> showString "MeshNV"+    5313 -> showString "RayGenerationKHR"+    5314 -> showString "IntersectionKHR"+    5315 -> showString "AnyHitKHR"+    5316 -> showString "ClosestHitKHR"+    5317 -> showString "MissKHR"+    5318 -> showString "CallableKHR"+    5364 -> showString "TaskEXT"+    5365 -> showString "MeshEXT"+    x -> showParen (p > 10) $ showString "ExecutionModel " . showsPrec (p + 1) x++pattern Vertex :: ExecutionModel+pattern Vertex = ExecutionModel 0++pattern TessellationControl :: ExecutionModel+pattern TessellationControl = ExecutionModel 1++pattern TessellationEvaluation :: ExecutionModel+pattern TessellationEvaluation = ExecutionModel 2++pattern Geometry :: ExecutionModel+pattern Geometry = ExecutionModel 3++pattern Fragment :: ExecutionModel+pattern Fragment = ExecutionModel 4++pattern GLCompute :: ExecutionModel+pattern GLCompute = ExecutionModel 5++pattern Kernel :: ExecutionModel+pattern Kernel = ExecutionModel 6++pattern TaskNV :: ExecutionModel+pattern TaskNV = ExecutionModel 5267++pattern MeshNV :: ExecutionModel+pattern MeshNV = ExecutionModel 5268++pattern RayGenerationKHR :: ExecutionModel+pattern RayGenerationKHR = ExecutionModel 5313++pattern RayGenerationNV :: ExecutionModel+pattern RayGenerationNV = ExecutionModel 5313++pattern IntersectionKHR :: ExecutionModel+pattern IntersectionKHR = ExecutionModel 5314++pattern IntersectionNV :: ExecutionModel+pattern IntersectionNV = ExecutionModel 5314++pattern AnyHitKHR :: ExecutionModel+pattern AnyHitKHR = ExecutionModel 5315++pattern AnyHitNV :: ExecutionModel+pattern AnyHitNV = ExecutionModel 5315++pattern ClosestHitKHR :: ExecutionModel+pattern ClosestHitKHR = ExecutionModel 5316++pattern ClosestHitNV :: ExecutionModel+pattern ClosestHitNV = ExecutionModel 5316++pattern MissKHR :: ExecutionModel+pattern MissKHR = ExecutionModel 5317++pattern MissNV :: ExecutionModel+pattern MissNV = ExecutionModel 5317++pattern CallableKHR :: ExecutionModel+pattern CallableKHR = ExecutionModel 5318++pattern CallableNV :: ExecutionModel+pattern CallableNV = ExecutionModel 5318++pattern TaskEXT :: ExecutionModel+pattern TaskEXT = ExecutionModel 5364++pattern MeshEXT :: ExecutionModel+pattern MeshEXT = ExecutionModel 5365
+ src/Data/SpirV/Enum/FPDenormMode.hs view
@@ -0,0 +1,24 @@+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE TypeSynonymInstances #-}++module Data.SpirV.Enum.FPDenormMode where++import Data.Int (Int32)+import Foreign.Storable (Storable)++newtype FPDenormMode = FPDenormMode Int32+  deriving newtype (Eq, Ord, Storable)++instance Show FPDenormMode where+  showsPrec p (FPDenormMode v) = case v of+    0 -> showString "Preserve"+    1 -> showString "FlushToZero"+    x -> showParen (p > 10) $ showString "FPDenormMode " . showsPrec (p + 1) x++pattern Preserve :: FPDenormMode+pattern Preserve = FPDenormMode 0++pattern FlushToZero :: FPDenormMode+pattern FlushToZero = FPDenormMode 1
+ src/Data/SpirV/Enum/FPFastMathMode.hs view
@@ -0,0 +1,51 @@+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE TypeSynonymInstances #-}++module Data.SpirV.Enum.FPFastMathMode where++import Data.Bits (Bits, FiniteBits, (.|.))+import Data.Word (Word32)+import Foreign.Storable (Storable)++type FPFastMathMode = FPFastMathModeBits++newtype FPFastMathModeBits = FPFastMathModeBits Word32+  deriving newtype (Eq, Ord, Storable, Bits, FiniteBits)++instance Semigroup FPFastMathMode where+  (FPFastMathModeBits a) <> (FPFastMathModeBits b) = FPFastMathModeBits (a .|. b)++instance Monoid FPFastMathMode where+  mempty = FPFastMathModeBits 0++pattern NotNaN :: FPFastMathModeBits+pattern NotNaN = FPFastMathModeBits 0x00000001++pattern NotInf :: FPFastMathModeBits+pattern NotInf = FPFastMathModeBits 0x00000002++pattern NSZ :: FPFastMathModeBits+pattern NSZ = FPFastMathModeBits 0x00000004++pattern AllowRecip :: FPFastMathModeBits+pattern AllowRecip = FPFastMathModeBits 0x00000008++pattern Fast :: FPFastMathModeBits+pattern Fast = FPFastMathModeBits 0x00000010++pattern AllowContract :: FPFastMathModeBits+pattern AllowContract = FPFastMathModeBits 0x00010000++pattern AllowContractFastINTEL :: FPFastMathModeBits+pattern AllowContractFastINTEL = FPFastMathModeBits 0x00010000++pattern AllowReassoc :: FPFastMathModeBits+pattern AllowReassoc = FPFastMathModeBits 0x00020000++pattern AllowReassocINTEL :: FPFastMathModeBits+pattern AllowReassocINTEL = FPFastMathModeBits 0x00020000++pattern AllowTransform :: FPFastMathModeBits+pattern AllowTransform = FPFastMathModeBits 0x00040000
+ src/Data/SpirV/Enum/FPOperationMode.hs view
@@ -0,0 +1,24 @@+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE TypeSynonymInstances #-}++module Data.SpirV.Enum.FPOperationMode where++import Data.Int (Int32)+import Foreign.Storable (Storable)++newtype FPOperationMode = FPOperationMode Int32+  deriving newtype (Eq, Ord, Storable)++instance Show FPOperationMode where+  showsPrec p (FPOperationMode v) = case v of+    0 -> showString "IEEE"+    1 -> showString "ALT"+    x -> showParen (p > 10) $ showString "FPOperationMode " . showsPrec (p + 1) x++pattern IEEE :: FPOperationMode+pattern IEEE = FPOperationMode 0++pattern ALT :: FPOperationMode+pattern ALT = FPOperationMode 1
+ src/Data/SpirV/Enum/FPRoundingMode.hs view
@@ -0,0 +1,32 @@+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE TypeSynonymInstances #-}++module Data.SpirV.Enum.FPRoundingMode where++import Data.Int (Int32)+import Foreign.Storable (Storable)++newtype FPRoundingMode = FPRoundingMode Int32+  deriving newtype (Eq, Ord, Storable)++instance Show FPRoundingMode where+  showsPrec p (FPRoundingMode v) = case v of+    0 -> showString "RTE"+    1 -> showString "RTZ"+    2 -> showString "RTP"+    3 -> showString "RTN"+    x -> showParen (p > 10) $ showString "FPRoundingMode " . showsPrec (p + 1) x++pattern RTE :: FPRoundingMode+pattern RTE = FPRoundingMode 0++pattern RTZ :: FPRoundingMode+pattern RTZ = FPRoundingMode 1++pattern RTP :: FPRoundingMode+pattern RTP = FPRoundingMode 2++pattern RTN :: FPRoundingMode+pattern RTN = FPRoundingMode 3
+ src/Data/SpirV/Enum/FragmentShadingRate.hs view
@@ -0,0 +1,33 @@+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE TypeSynonymInstances #-}++module Data.SpirV.Enum.FragmentShadingRate where++import Data.Bits (Bits, FiniteBits, (.|.))+import Data.Word (Word32)+import Foreign.Storable (Storable)++type FragmentShadingRate = FragmentShadingRateBits++newtype FragmentShadingRateBits = FragmentShadingRateBits Word32+  deriving newtype (Eq, Ord, Storable, Bits, FiniteBits)++instance Semigroup FragmentShadingRate where+  (FragmentShadingRateBits a) <> (FragmentShadingRateBits b) = FragmentShadingRateBits (a .|. b)++instance Monoid FragmentShadingRate where+  mempty = FragmentShadingRateBits 0++pattern Vertical2Pixels :: FragmentShadingRateBits+pattern Vertical2Pixels = FragmentShadingRateBits 0x00000001++pattern Vertical4Pixels :: FragmentShadingRateBits+pattern Vertical4Pixels = FragmentShadingRateBits 0x00000002++pattern Horizontal2Pixels :: FragmentShadingRateBits+pattern Horizontal2Pixels = FragmentShadingRateBits 0x00000004++pattern Horizontal4Pixels :: FragmentShadingRateBits+pattern Horizontal4Pixels = FragmentShadingRateBits 0x00000008
+ src/Data/SpirV/Enum/FunctionControl.hs view
@@ -0,0 +1,36 @@+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE TypeSynonymInstances #-}++module Data.SpirV.Enum.FunctionControl where++import Data.Bits (Bits, FiniteBits, (.|.))+import Data.Word (Word32)+import Foreign.Storable (Storable)++type FunctionControl = FunctionControlBits++newtype FunctionControlBits = FunctionControlBits Word32+  deriving newtype (Eq, Ord, Storable, Bits, FiniteBits)++instance Semigroup FunctionControl where+  (FunctionControlBits a) <> (FunctionControlBits b) = FunctionControlBits (a .|. b)++instance Monoid FunctionControl where+  mempty = FunctionControlBits 0++pattern Inline :: FunctionControlBits+pattern Inline = FunctionControlBits 0x00000001++pattern DontInline :: FunctionControlBits+pattern DontInline = FunctionControlBits 0x00000002++pattern Pure :: FunctionControlBits+pattern Pure = FunctionControlBits 0x00000004++pattern Const :: FunctionControlBits+pattern Const = FunctionControlBits 0x00000008++pattern OptNoneINTEL :: FunctionControlBits+pattern OptNoneINTEL = FunctionControlBits 0x00010000
+ src/Data/SpirV/Enum/FunctionParameterAttribute.hs view
@@ -0,0 +1,52 @@+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE TypeSynonymInstances #-}++module Data.SpirV.Enum.FunctionParameterAttribute where++import Data.Int (Int32)+import Foreign.Storable (Storable)++newtype FunctionParameterAttribute = FunctionParameterAttribute Int32+  deriving newtype (Eq, Ord, Storable)++instance Show FunctionParameterAttribute where+  showsPrec p (FunctionParameterAttribute v) = case v of+    0 -> showString "Zext"+    1 -> showString "Sext"+    2 -> showString "ByVal"+    3 -> showString "Sret"+    4 -> showString "NoAlias"+    5 -> showString "NoCapture"+    6 -> showString "NoWrite"+    7 -> showString "NoReadWrite"+    5940 -> showString "RuntimeAlignedINTEL"+    x -> showParen (p > 10) $ showString "FunctionParameterAttribute " . showsPrec (p + 1) x++pattern Zext :: FunctionParameterAttribute+pattern Zext = FunctionParameterAttribute 0++pattern Sext :: FunctionParameterAttribute+pattern Sext = FunctionParameterAttribute 1++pattern ByVal :: FunctionParameterAttribute+pattern ByVal = FunctionParameterAttribute 2++pattern Sret :: FunctionParameterAttribute+pattern Sret = FunctionParameterAttribute 3++pattern NoAlias :: FunctionParameterAttribute+pattern NoAlias = FunctionParameterAttribute 4++pattern NoCapture :: FunctionParameterAttribute+pattern NoCapture = FunctionParameterAttribute 5++pattern NoWrite :: FunctionParameterAttribute+pattern NoWrite = FunctionParameterAttribute 6++pattern NoReadWrite :: FunctionParameterAttribute+pattern NoReadWrite = FunctionParameterAttribute 7++pattern RuntimeAlignedINTEL :: FunctionParameterAttribute+pattern RuntimeAlignedINTEL = FunctionParameterAttribute 5940
+ src/Data/SpirV/Enum/GroupOperation.hs view
@@ -0,0 +1,44 @@+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE TypeSynonymInstances #-}++module Data.SpirV.Enum.GroupOperation where++import Data.Int (Int32)+import Foreign.Storable (Storable)++newtype GroupOperation = GroupOperation Int32+  deriving newtype (Eq, Ord, Storable)++instance Show GroupOperation where+  showsPrec p (GroupOperation v) = case v of+    0 -> showString "Reduce"+    1 -> showString "InclusiveScan"+    2 -> showString "ExclusiveScan"+    3 -> showString "ClusteredReduce"+    6 -> showString "PartitionedReduceNV"+    7 -> showString "PartitionedInclusiveScanNV"+    8 -> showString "PartitionedExclusiveScanNV"+    x -> showParen (p > 10) $ showString "GroupOperation " . showsPrec (p + 1) x++pattern Reduce :: GroupOperation+pattern Reduce = GroupOperation 0++pattern InclusiveScan :: GroupOperation+pattern InclusiveScan = GroupOperation 1++pattern ExclusiveScan :: GroupOperation+pattern ExclusiveScan = GroupOperation 2++pattern ClusteredReduce :: GroupOperation+pattern ClusteredReduce = GroupOperation 3++pattern PartitionedReduceNV :: GroupOperation+pattern PartitionedReduceNV = GroupOperation 6++pattern PartitionedInclusiveScanNV :: GroupOperation+pattern PartitionedInclusiveScanNV = GroupOperation 7++pattern PartitionedExclusiveScanNV :: GroupOperation+pattern PartitionedExclusiveScanNV = GroupOperation 8
+ src/Data/SpirV/Enum/HostAccessQualifier.hs view
@@ -0,0 +1,32 @@+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE TypeSynonymInstances #-}++module Data.SpirV.Enum.HostAccessQualifier where++import Data.Int (Int32)+import Foreign.Storable (Storable)++newtype HostAccessQualifier = HostAccessQualifier Int32+  deriving newtype (Eq, Ord, Storable)++instance Show HostAccessQualifier where+  showsPrec p (HostAccessQualifier v) = case v of+    0 -> showString "NoneINTEL"+    1 -> showString "ReadINTEL"+    2 -> showString "WriteINTEL"+    3 -> showString "ReadWriteINTEL"+    x -> showParen (p > 10) $ showString "HostAccessQualifier " . showsPrec (p + 1) x++pattern NoneINTEL :: HostAccessQualifier+pattern NoneINTEL = HostAccessQualifier 0++pattern ReadINTEL :: HostAccessQualifier+pattern ReadINTEL = HostAccessQualifier 1++pattern WriteINTEL :: HostAccessQualifier+pattern WriteINTEL = HostAccessQualifier 2++pattern ReadWriteINTEL :: HostAccessQualifier+pattern ReadWriteINTEL = HostAccessQualifier 3
+ src/Data/SpirV/Enum/ImageChannelDataType.hs view
@@ -0,0 +1,92 @@+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE TypeSynonymInstances #-}++module Data.SpirV.Enum.ImageChannelDataType where++import Data.Int (Int32)+import Foreign.Storable (Storable)++newtype ImageChannelDataType = ImageChannelDataType Int32+  deriving newtype (Eq, Ord, Storable)++instance Show ImageChannelDataType where+  showsPrec p (ImageChannelDataType v) = case v of+    0 -> showString "SnormInt8"+    1 -> showString "SnormInt16"+    2 -> showString "UnormInt8"+    3 -> showString "UnormInt16"+    4 -> showString "UnormShort565"+    5 -> showString "UnormShort555"+    6 -> showString "UnormInt101010"+    7 -> showString "SignedInt8"+    8 -> showString "SignedInt16"+    9 -> showString "SignedInt32"+    10 -> showString "UnsignedInt8"+    11 -> showString "UnsignedInt16"+    12 -> showString "UnsignedInt32"+    13 -> showString "HalfFloat"+    14 -> showString "Float"+    15 -> showString "UnormInt24"+    16 -> showString "UnormInt101010_2"+    19 -> showString "UnsignedIntRaw10EXT"+    20 -> showString "UnsignedIntRaw12EXT"+    x -> showParen (p > 10) $ showString "ImageChannelDataType " . showsPrec (p + 1) x++pattern SnormInt8 :: ImageChannelDataType+pattern SnormInt8 = ImageChannelDataType 0++pattern SnormInt16 :: ImageChannelDataType+pattern SnormInt16 = ImageChannelDataType 1++pattern UnormInt8 :: ImageChannelDataType+pattern UnormInt8 = ImageChannelDataType 2++pattern UnormInt16 :: ImageChannelDataType+pattern UnormInt16 = ImageChannelDataType 3++pattern UnormShort565 :: ImageChannelDataType+pattern UnormShort565 = ImageChannelDataType 4++pattern UnormShort555 :: ImageChannelDataType+pattern UnormShort555 = ImageChannelDataType 5++pattern UnormInt101010 :: ImageChannelDataType+pattern UnormInt101010 = ImageChannelDataType 6++pattern SignedInt8 :: ImageChannelDataType+pattern SignedInt8 = ImageChannelDataType 7++pattern SignedInt16 :: ImageChannelDataType+pattern SignedInt16 = ImageChannelDataType 8++pattern SignedInt32 :: ImageChannelDataType+pattern SignedInt32 = ImageChannelDataType 9++pattern UnsignedInt8 :: ImageChannelDataType+pattern UnsignedInt8 = ImageChannelDataType 10++pattern UnsignedInt16 :: ImageChannelDataType+pattern UnsignedInt16 = ImageChannelDataType 11++pattern UnsignedInt32 :: ImageChannelDataType+pattern UnsignedInt32 = ImageChannelDataType 12++pattern HalfFloat :: ImageChannelDataType+pattern HalfFloat = ImageChannelDataType 13++pattern Float :: ImageChannelDataType+pattern Float = ImageChannelDataType 14++pattern UnormInt24 :: ImageChannelDataType+pattern UnormInt24 = ImageChannelDataType 15++pattern UnormInt101010_2 :: ImageChannelDataType+pattern UnormInt101010_2 = ImageChannelDataType 16++pattern UnsignedIntRaw10EXT :: ImageChannelDataType+pattern UnsignedIntRaw10EXT = ImageChannelDataType 19++pattern UnsignedIntRaw12EXT :: ImageChannelDataType+pattern UnsignedIntRaw12EXT = ImageChannelDataType 20
+ src/Data/SpirV/Enum/ImageChannelOrder.hs view
@@ -0,0 +1,96 @@+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE TypeSynonymInstances #-}++module Data.SpirV.Enum.ImageChannelOrder where++import Data.Int (Int32)+import Foreign.Storable (Storable)++newtype ImageChannelOrder = ImageChannelOrder Int32+  deriving newtype (Eq, Ord, Storable)++instance Show ImageChannelOrder where+  showsPrec p (ImageChannelOrder v) = case v of+    0 -> showString "R"+    1 -> showString "A"+    2 -> showString "RG"+    3 -> showString "RA"+    4 -> showString "RGB"+    5 -> showString "RGBA"+    6 -> showString "BGRA"+    7 -> showString "ARGB"+    8 -> showString "Intensity"+    9 -> showString "Luminance"+    10 -> showString "Rx"+    11 -> showString "RGx"+    12 -> showString "RGBx"+    13 -> showString "Depth"+    14 -> showString "DepthStencil"+    15 -> showString "SRGB"+    16 -> showString "SRGBx"+    17 -> showString "SRGBA"+    18 -> showString "SBGRA"+    19 -> showString "ABGR"+    x -> showParen (p > 10) $ showString "ImageChannelOrder " . showsPrec (p + 1) x++pattern R :: ImageChannelOrder+pattern R = ImageChannelOrder 0++pattern A :: ImageChannelOrder+pattern A = ImageChannelOrder 1++pattern RG :: ImageChannelOrder+pattern RG = ImageChannelOrder 2++pattern RA :: ImageChannelOrder+pattern RA = ImageChannelOrder 3++pattern RGB :: ImageChannelOrder+pattern RGB = ImageChannelOrder 4++pattern RGBA :: ImageChannelOrder+pattern RGBA = ImageChannelOrder 5++pattern BGRA :: ImageChannelOrder+pattern BGRA = ImageChannelOrder 6++pattern ARGB :: ImageChannelOrder+pattern ARGB = ImageChannelOrder 7++pattern Intensity :: ImageChannelOrder+pattern Intensity = ImageChannelOrder 8++pattern Luminance :: ImageChannelOrder+pattern Luminance = ImageChannelOrder 9++pattern Rx :: ImageChannelOrder+pattern Rx = ImageChannelOrder 10++pattern RGx :: ImageChannelOrder+pattern RGx = ImageChannelOrder 11++pattern RGBx :: ImageChannelOrder+pattern RGBx = ImageChannelOrder 12++pattern Depth :: ImageChannelOrder+pattern Depth = ImageChannelOrder 13++pattern DepthStencil :: ImageChannelOrder+pattern DepthStencil = ImageChannelOrder 14++pattern SRGB :: ImageChannelOrder+pattern SRGB = ImageChannelOrder 15++pattern SRGBx :: ImageChannelOrder+pattern SRGBx = ImageChannelOrder 16++pattern SRGBA :: ImageChannelOrder+pattern SRGBA = ImageChannelOrder 17++pattern SBGRA :: ImageChannelOrder+pattern SBGRA = ImageChannelOrder 18++pattern ABGR :: ImageChannelOrder+pattern ABGR = ImageChannelOrder 19
+ src/Data/SpirV/Enum/ImageFormat.hs view
@@ -0,0 +1,184 @@+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE TypeSynonymInstances #-}++module Data.SpirV.Enum.ImageFormat where++import Data.Int (Int32)+import Foreign.Storable (Storable)++newtype ImageFormat = ImageFormat Int32+  deriving newtype (Eq, Ord, Storable)++instance Show ImageFormat where+  showsPrec p (ImageFormat v) = case v of+    0 -> showString "Unknown"+    1 -> showString "Rgba32f"+    2 -> showString "Rgba16f"+    3 -> showString "R32f"+    4 -> showString "Rgba8"+    5 -> showString "Rgba8Snorm"+    6 -> showString "Rg32f"+    7 -> showString "Rg16f"+    8 -> showString "R11fG11fB10f"+    9 -> showString "R16f"+    10 -> showString "Rgba16"+    11 -> showString "Rgb10A2"+    12 -> showString "Rg16"+    13 -> showString "Rg8"+    14 -> showString "R16"+    15 -> showString "R8"+    16 -> showString "Rgba16Snorm"+    17 -> showString "Rg16Snorm"+    18 -> showString "Rg8Snorm"+    19 -> showString "R16Snorm"+    20 -> showString "R8Snorm"+    21 -> showString "Rgba32i"+    22 -> showString "Rgba16i"+    23 -> showString "Rgba8i"+    24 -> showString "R32i"+    25 -> showString "Rg32i"+    26 -> showString "Rg16i"+    27 -> showString "Rg8i"+    28 -> showString "R16i"+    29 -> showString "R8i"+    30 -> showString "Rgba32ui"+    31 -> showString "Rgba16ui"+    32 -> showString "Rgba8ui"+    33 -> showString "R32ui"+    34 -> showString "Rgb10a2ui"+    35 -> showString "Rg32ui"+    36 -> showString "Rg16ui"+    37 -> showString "Rg8ui"+    38 -> showString "R16ui"+    39 -> showString "R8ui"+    40 -> showString "R64ui"+    41 -> showString "R64i"+    x -> showParen (p > 10) $ showString "ImageFormat " . showsPrec (p + 1) x++pattern Unknown :: ImageFormat+pattern Unknown = ImageFormat 0++pattern Rgba32f :: ImageFormat+pattern Rgba32f = ImageFormat 1++pattern Rgba16f :: ImageFormat+pattern Rgba16f = ImageFormat 2++pattern R32f :: ImageFormat+pattern R32f = ImageFormat 3++pattern Rgba8 :: ImageFormat+pattern Rgba8 = ImageFormat 4++pattern Rgba8Snorm :: ImageFormat+pattern Rgba8Snorm = ImageFormat 5++pattern Rg32f :: ImageFormat+pattern Rg32f = ImageFormat 6++pattern Rg16f :: ImageFormat+pattern Rg16f = ImageFormat 7++pattern R11fG11fB10f :: ImageFormat+pattern R11fG11fB10f = ImageFormat 8++pattern R16f :: ImageFormat+pattern R16f = ImageFormat 9++pattern Rgba16 :: ImageFormat+pattern Rgba16 = ImageFormat 10++pattern Rgb10A2 :: ImageFormat+pattern Rgb10A2 = ImageFormat 11++pattern Rg16 :: ImageFormat+pattern Rg16 = ImageFormat 12++pattern Rg8 :: ImageFormat+pattern Rg8 = ImageFormat 13++pattern R16 :: ImageFormat+pattern R16 = ImageFormat 14++pattern R8 :: ImageFormat+pattern R8 = ImageFormat 15++pattern Rgba16Snorm :: ImageFormat+pattern Rgba16Snorm = ImageFormat 16++pattern Rg16Snorm :: ImageFormat+pattern Rg16Snorm = ImageFormat 17++pattern Rg8Snorm :: ImageFormat+pattern Rg8Snorm = ImageFormat 18++pattern R16Snorm :: ImageFormat+pattern R16Snorm = ImageFormat 19++pattern R8Snorm :: ImageFormat+pattern R8Snorm = ImageFormat 20++pattern Rgba32i :: ImageFormat+pattern Rgba32i = ImageFormat 21++pattern Rgba16i :: ImageFormat+pattern Rgba16i = ImageFormat 22++pattern Rgba8i :: ImageFormat+pattern Rgba8i = ImageFormat 23++pattern R32i :: ImageFormat+pattern R32i = ImageFormat 24++pattern Rg32i :: ImageFormat+pattern Rg32i = ImageFormat 25++pattern Rg16i :: ImageFormat+pattern Rg16i = ImageFormat 26++pattern Rg8i :: ImageFormat+pattern Rg8i = ImageFormat 27++pattern R16i :: ImageFormat+pattern R16i = ImageFormat 28++pattern R8i :: ImageFormat+pattern R8i = ImageFormat 29++pattern Rgba32ui :: ImageFormat+pattern Rgba32ui = ImageFormat 30++pattern Rgba16ui :: ImageFormat+pattern Rgba16ui = ImageFormat 31++pattern Rgba8ui :: ImageFormat+pattern Rgba8ui = ImageFormat 32++pattern R32ui :: ImageFormat+pattern R32ui = ImageFormat 33++pattern Rgb10a2ui :: ImageFormat+pattern Rgb10a2ui = ImageFormat 34++pattern Rg32ui :: ImageFormat+pattern Rg32ui = ImageFormat 35++pattern Rg16ui :: ImageFormat+pattern Rg16ui = ImageFormat 36++pattern Rg8ui :: ImageFormat+pattern Rg8ui = ImageFormat 37++pattern R16ui :: ImageFormat+pattern R16ui = ImageFormat 38++pattern R8ui :: ImageFormat+pattern R8ui = ImageFormat 39++pattern R64ui :: ImageFormat+pattern R64ui = ImageFormat 40++pattern R64i :: ImageFormat+pattern R64i = ImageFormat 41
+ src/Data/SpirV/Enum/ImageOperands.hs view
@@ -0,0 +1,81 @@+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE TypeSynonymInstances #-}++module Data.SpirV.Enum.ImageOperands where++import Data.Bits (Bits, FiniteBits, (.|.))+import Data.Word (Word32)+import Foreign.Storable (Storable)++type ImageOperands = ImageOperandsBits++newtype ImageOperandsBits = ImageOperandsBits Word32+  deriving newtype (Eq, Ord, Storable, Bits, FiniteBits)++instance Semigroup ImageOperands where+  (ImageOperandsBits a) <> (ImageOperandsBits b) = ImageOperandsBits (a .|. b)++instance Monoid ImageOperands where+  mempty = ImageOperandsBits 0++pattern Bias :: ImageOperandsBits+pattern Bias = ImageOperandsBits 0x00000001++pattern Lod :: ImageOperandsBits+pattern Lod = ImageOperandsBits 0x00000002++pattern Grad :: ImageOperandsBits+pattern Grad = ImageOperandsBits 0x00000004++pattern ConstOffset :: ImageOperandsBits+pattern ConstOffset = ImageOperandsBits 0x00000008++pattern Offset :: ImageOperandsBits+pattern Offset = ImageOperandsBits 0x00000010++pattern ConstOffsets :: ImageOperandsBits+pattern ConstOffsets = ImageOperandsBits 0x00000020++pattern Sample :: ImageOperandsBits+pattern Sample = ImageOperandsBits 0x00000040++pattern MinLod :: ImageOperandsBits+pattern MinLod = ImageOperandsBits 0x00000080++pattern MakeTexelAvailable :: ImageOperandsBits+pattern MakeTexelAvailable = ImageOperandsBits 0x00000100++pattern MakeTexelAvailableKHR :: ImageOperandsBits+pattern MakeTexelAvailableKHR = ImageOperandsBits 0x00000100++pattern MakeTexelVisible :: ImageOperandsBits+pattern MakeTexelVisible = ImageOperandsBits 0x00000200++pattern MakeTexelVisibleKHR :: ImageOperandsBits+pattern MakeTexelVisibleKHR = ImageOperandsBits 0x00000200++pattern NonPrivateTexel :: ImageOperandsBits+pattern NonPrivateTexel = ImageOperandsBits 0x00000400++pattern NonPrivateTexelKHR :: ImageOperandsBits+pattern NonPrivateTexelKHR = ImageOperandsBits 0x00000400++pattern VolatileTexel :: ImageOperandsBits+pattern VolatileTexel = ImageOperandsBits 0x00000800++pattern VolatileTexelKHR :: ImageOperandsBits+pattern VolatileTexelKHR = ImageOperandsBits 0x00000800++pattern SignExtend :: ImageOperandsBits+pattern SignExtend = ImageOperandsBits 0x00001000++pattern ZeroExtend :: ImageOperandsBits+pattern ZeroExtend = ImageOperandsBits 0x00002000++pattern Nontemporal :: ImageOperandsBits+pattern Nontemporal = ImageOperandsBits 0x00004000++pattern Offsets :: ImageOperandsBits+pattern Offsets = ImageOperandsBits 0x00010000
+ src/Data/SpirV/Enum/InitializationModeQualifier.hs view
@@ -0,0 +1,24 @@+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE TypeSynonymInstances #-}++module Data.SpirV.Enum.InitializationModeQualifier where++import Data.Int (Int32)+import Foreign.Storable (Storable)++newtype InitializationModeQualifier = InitializationModeQualifier Int32+  deriving newtype (Eq, Ord, Storable)++instance Show InitializationModeQualifier where+  showsPrec p (InitializationModeQualifier v) = case v of+    0 -> showString "InitOnDeviceReprogramINTEL"+    1 -> showString "InitOnDeviceResetINTEL"+    x -> showParen (p > 10) $ showString "InitializationModeQualifier " . showsPrec (p + 1) x++pattern InitOnDeviceReprogramINTEL :: InitializationModeQualifier+pattern InitOnDeviceReprogramINTEL = InitializationModeQualifier 0++pattern InitOnDeviceResetINTEL :: InitializationModeQualifier+pattern InitOnDeviceResetINTEL = InitializationModeQualifier 1
+ src/Data/SpirV/Enum/KernelEnqueueFlags.hs view
@@ -0,0 +1,28 @@+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE TypeSynonymInstances #-}++module Data.SpirV.Enum.KernelEnqueueFlags where++import Data.Int (Int32)+import Foreign.Storable (Storable)++newtype KernelEnqueueFlags = KernelEnqueueFlags Int32+  deriving newtype (Eq, Ord, Storable)++instance Show KernelEnqueueFlags where+  showsPrec p (KernelEnqueueFlags v) = case v of+    0 -> showString "NoWait"+    1 -> showString "WaitKernel"+    2 -> showString "WaitWorkGroup"+    x -> showParen (p > 10) $ showString "KernelEnqueueFlags " . showsPrec (p + 1) x++pattern NoWait :: KernelEnqueueFlags+pattern NoWait = KernelEnqueueFlags 0++pattern WaitKernel :: KernelEnqueueFlags+pattern WaitKernel = KernelEnqueueFlags 1++pattern WaitWorkGroup :: KernelEnqueueFlags+pattern WaitWorkGroup = KernelEnqueueFlags 2
+ src/Data/SpirV/Enum/KernelProfilingInfo.hs view
@@ -0,0 +1,24 @@+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE TypeSynonymInstances #-}++module Data.SpirV.Enum.KernelProfilingInfo where++import Data.Bits (Bits, FiniteBits, (.|.))+import Data.Word (Word32)+import Foreign.Storable (Storable)++type KernelProfilingInfo = KernelProfilingInfoBits++newtype KernelProfilingInfoBits = KernelProfilingInfoBits Word32+  deriving newtype (Eq, Ord, Storable, Bits, FiniteBits)++instance Semigroup KernelProfilingInfo where+  (KernelProfilingInfoBits a) <> (KernelProfilingInfoBits b) = KernelProfilingInfoBits (a .|. b)++instance Monoid KernelProfilingInfo where+  mempty = KernelProfilingInfoBits 0++pattern CmdExecTime :: KernelProfilingInfoBits+pattern CmdExecTime = KernelProfilingInfoBits 0x00000001
+ src/Data/SpirV/Enum/LinkageType.hs view
@@ -0,0 +1,28 @@+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE TypeSynonymInstances #-}++module Data.SpirV.Enum.LinkageType where++import Data.Int (Int32)+import Foreign.Storable (Storable)++newtype LinkageType = LinkageType Int32+  deriving newtype (Eq, Ord, Storable)++instance Show LinkageType where+  showsPrec p (LinkageType v) = case v of+    0 -> showString "Export"+    1 -> showString "Import"+    2 -> showString "LinkOnceODR"+    x -> showParen (p > 10) $ showString "LinkageType " . showsPrec (p + 1) x++pattern Export :: LinkageType+pattern Export = LinkageType 0++pattern Import :: LinkageType+pattern Import = LinkageType 1++pattern LinkOnceODR :: LinkageType+pattern LinkOnceODR = LinkageType 2
+ src/Data/SpirV/Enum/LoadCacheControl.hs view
@@ -0,0 +1,36 @@+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE TypeSynonymInstances #-}++module Data.SpirV.Enum.LoadCacheControl where++import Data.Int (Int32)+import Foreign.Storable (Storable)++newtype LoadCacheControl = LoadCacheControl Int32+  deriving newtype (Eq, Ord, Storable)++instance Show LoadCacheControl where+  showsPrec p (LoadCacheControl v) = case v of+    0 -> showString "UncachedINTEL"+    1 -> showString "CachedINTEL"+    2 -> showString "StreamingINTEL"+    3 -> showString "InvalidateAfterReadINTEL"+    4 -> showString "ConstCachedINTEL"+    x -> showParen (p > 10) $ showString "LoadCacheControl " . showsPrec (p + 1) x++pattern UncachedINTEL :: LoadCacheControl+pattern UncachedINTEL = LoadCacheControl 0++pattern CachedINTEL :: LoadCacheControl+pattern CachedINTEL = LoadCacheControl 1++pattern StreamingINTEL :: LoadCacheControl+pattern StreamingINTEL = LoadCacheControl 2++pattern InvalidateAfterReadINTEL :: LoadCacheControl+pattern InvalidateAfterReadINTEL = LoadCacheControl 3++pattern ConstCachedINTEL :: LoadCacheControl+pattern ConstCachedINTEL = LoadCacheControl 4
+ src/Data/SpirV/Enum/LoopControl.hs view
@@ -0,0 +1,78 @@+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE TypeSynonymInstances #-}++module Data.SpirV.Enum.LoopControl where++import Data.Bits (Bits, FiniteBits, (.|.))+import Data.Word (Word32)+import Foreign.Storable (Storable)++type LoopControl = LoopControlBits++newtype LoopControlBits = LoopControlBits Word32+  deriving newtype (Eq, Ord, Storable, Bits, FiniteBits)++instance Semigroup LoopControl where+  (LoopControlBits a) <> (LoopControlBits b) = LoopControlBits (a .|. b)++instance Monoid LoopControl where+  mempty = LoopControlBits 0++pattern Unroll :: LoopControlBits+pattern Unroll = LoopControlBits 0x00000001++pattern DontUnroll :: LoopControlBits+pattern DontUnroll = LoopControlBits 0x00000002++pattern DependencyInfinite :: LoopControlBits+pattern DependencyInfinite = LoopControlBits 0x00000004++pattern DependencyLength :: LoopControlBits+pattern DependencyLength = LoopControlBits 0x00000008++pattern MinIterations :: LoopControlBits+pattern MinIterations = LoopControlBits 0x00000010++pattern MaxIterations :: LoopControlBits+pattern MaxIterations = LoopControlBits 0x00000020++pattern IterationMultiple :: LoopControlBits+pattern IterationMultiple = LoopControlBits 0x00000040++pattern PeelCount :: LoopControlBits+pattern PeelCount = LoopControlBits 0x00000080++pattern PartialCount :: LoopControlBits+pattern PartialCount = LoopControlBits 0x00000100++pattern InitiationIntervalINTEL :: LoopControlBits+pattern InitiationIntervalINTEL = LoopControlBits 0x00010000++pattern MaxConcurrencyINTEL :: LoopControlBits+pattern MaxConcurrencyINTEL = LoopControlBits 0x00020000++pattern DependencyArrayINTEL :: LoopControlBits+pattern DependencyArrayINTEL = LoopControlBits 0x00040000++pattern PipelineEnableINTEL :: LoopControlBits+pattern PipelineEnableINTEL = LoopControlBits 0x00080000++pattern LoopCoalesceINTEL :: LoopControlBits+pattern LoopCoalesceINTEL = LoopControlBits 0x00100000++pattern MaxInterleavingINTEL :: LoopControlBits+pattern MaxInterleavingINTEL = LoopControlBits 0x00200000++pattern SpeculatedIterationsINTEL :: LoopControlBits+pattern SpeculatedIterationsINTEL = LoopControlBits 0x00400000++pattern NoFusionINTEL :: LoopControlBits+pattern NoFusionINTEL = LoopControlBits 0x00800000++pattern LoopCountINTEL :: LoopControlBits+pattern LoopCountINTEL = LoopControlBits 0x01000000++pattern MaxReinvocationDelayINTEL :: LoopControlBits+pattern MaxReinvocationDelayINTEL = LoopControlBits 0x02000000
+ src/Data/SpirV/Enum/MemoryAccess.hs view
@@ -0,0 +1,54 @@+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE TypeSynonymInstances #-}++module Data.SpirV.Enum.MemoryAccess where++import Data.Bits (Bits, FiniteBits, (.|.))+import Data.Word (Word32)+import Foreign.Storable (Storable)++type MemoryAccess = MemoryAccessBits++newtype MemoryAccessBits = MemoryAccessBits Word32+  deriving newtype (Eq, Ord, Storable, Bits, FiniteBits)++instance Semigroup MemoryAccess where+  (MemoryAccessBits a) <> (MemoryAccessBits b) = MemoryAccessBits (a .|. b)++instance Monoid MemoryAccess where+  mempty = MemoryAccessBits 0++pattern Volatile :: MemoryAccessBits+pattern Volatile = MemoryAccessBits 0x00000001++pattern Aligned :: MemoryAccessBits+pattern Aligned = MemoryAccessBits 0x00000002++pattern Nontemporal :: MemoryAccessBits+pattern Nontemporal = MemoryAccessBits 0x00000004++pattern MakePointerAvailable :: MemoryAccessBits+pattern MakePointerAvailable = MemoryAccessBits 0x00000008++pattern MakePointerAvailableKHR :: MemoryAccessBits+pattern MakePointerAvailableKHR = MemoryAccessBits 0x00000008++pattern MakePointerVisible :: MemoryAccessBits+pattern MakePointerVisible = MemoryAccessBits 0x00000010++pattern MakePointerVisibleKHR :: MemoryAccessBits+pattern MakePointerVisibleKHR = MemoryAccessBits 0x00000010++pattern NonPrivatePointer :: MemoryAccessBits+pattern NonPrivatePointer = MemoryAccessBits 0x00000020++pattern NonPrivatePointerKHR :: MemoryAccessBits+pattern NonPrivatePointerKHR = MemoryAccessBits 0x00000020++pattern AliasScopeINTELMask :: MemoryAccessBits+pattern AliasScopeINTELMask = MemoryAccessBits 0x00010000++pattern NoAliasINTELMask :: MemoryAccessBits+pattern NoAliasINTELMask = MemoryAccessBits 0x00020000
+ src/Data/SpirV/Enum/MemoryModel.hs view
@@ -0,0 +1,35 @@+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE TypeSynonymInstances #-}++module Data.SpirV.Enum.MemoryModel where++import Data.Int (Int32)+import Foreign.Storable (Storable)++newtype MemoryModel = MemoryModel Int32+  deriving newtype (Eq, Ord, Storable)++instance Show MemoryModel where+  showsPrec p (MemoryModel v) = case v of+    0 -> showString "Simple"+    1 -> showString "GLSL450"+    2 -> showString "OpenCL"+    3 -> showString "Vulkan"+    x -> showParen (p > 10) $ showString "MemoryModel " . showsPrec (p + 1) x++pattern Simple :: MemoryModel+pattern Simple = MemoryModel 0++pattern GLSL450 :: MemoryModel+pattern GLSL450 = MemoryModel 1++pattern OpenCL :: MemoryModel+pattern OpenCL = MemoryModel 2++pattern Vulkan :: MemoryModel+pattern Vulkan = MemoryModel 3++pattern VulkanKHR :: MemoryModel+pattern VulkanKHR = MemoryModel 3
+ src/Data/SpirV/Enum/MemorySemantics.hs view
@@ -0,0 +1,72 @@+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE TypeSynonymInstances #-}++module Data.SpirV.Enum.MemorySemantics where++import Data.Bits (Bits, FiniteBits, (.|.))+import Data.Word (Word32)+import Foreign.Storable (Storable)++type MemorySemantics = MemorySemanticsBits++newtype MemorySemanticsBits = MemorySemanticsBits Word32+  deriving newtype (Eq, Ord, Storable, Bits, FiniteBits)++instance Semigroup MemorySemantics where+  (MemorySemanticsBits a) <> (MemorySemanticsBits b) = MemorySemanticsBits (a .|. b)++instance Monoid MemorySemantics where+  mempty = MemorySemanticsBits 0++pattern Acquire :: MemorySemanticsBits+pattern Acquire = MemorySemanticsBits 0x00000002++pattern Release :: MemorySemanticsBits+pattern Release = MemorySemanticsBits 0x00000004++pattern AcquireRelease :: MemorySemanticsBits+pattern AcquireRelease = MemorySemanticsBits 0x00000008++pattern SequentiallyConsistent :: MemorySemanticsBits+pattern SequentiallyConsistent = MemorySemanticsBits 0x00000010++pattern UniformMemory :: MemorySemanticsBits+pattern UniformMemory = MemorySemanticsBits 0x00000040++pattern SubgroupMemory :: MemorySemanticsBits+pattern SubgroupMemory = MemorySemanticsBits 0x00000080++pattern WorkgroupMemory :: MemorySemanticsBits+pattern WorkgroupMemory = MemorySemanticsBits 0x00000100++pattern CrossWorkgroupMemory :: MemorySemanticsBits+pattern CrossWorkgroupMemory = MemorySemanticsBits 0x00000200++pattern AtomicCounterMemory :: MemorySemanticsBits+pattern AtomicCounterMemory = MemorySemanticsBits 0x00000400++pattern ImageMemory :: MemorySemanticsBits+pattern ImageMemory = MemorySemanticsBits 0x00000800++pattern OutputMemory :: MemorySemanticsBits+pattern OutputMemory = MemorySemanticsBits 0x00001000++pattern OutputMemoryKHR :: MemorySemanticsBits+pattern OutputMemoryKHR = MemorySemanticsBits 0x00001000++pattern MakeAvailable :: MemorySemanticsBits+pattern MakeAvailable = MemorySemanticsBits 0x00002000++pattern MakeAvailableKHR :: MemorySemanticsBits+pattern MakeAvailableKHR = MemorySemanticsBits 0x00002000++pattern MakeVisible :: MemorySemanticsBits+pattern MakeVisible = MemorySemanticsBits 0x00004000++pattern MakeVisibleKHR :: MemorySemanticsBits+pattern MakeVisibleKHR = MemorySemanticsBits 0x00004000++pattern Volatile :: MemorySemanticsBits+pattern Volatile = MemorySemanticsBits 0x00008000
+ src/Data/SpirV/Enum/NamedMaximumNumberOfRegisters.hs view
@@ -0,0 +1,20 @@+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE TypeSynonymInstances #-}++module Data.SpirV.Enum.NamedMaximumNumberOfRegisters where++import Data.Int (Int32)+import Foreign.Storable (Storable)++newtype NamedMaximumNumberOfRegisters = NamedMaximumNumberOfRegisters Int32+  deriving newtype (Eq, Ord, Storable)++instance Show NamedMaximumNumberOfRegisters where+  showsPrec p (NamedMaximumNumberOfRegisters v) = case v of+    0 -> showString "AutoINTEL"+    x -> showParen (p > 10) $ showString "NamedMaximumNumberOfRegisters " . showsPrec (p + 1) x++pattern AutoINTEL :: NamedMaximumNumberOfRegisters+pattern AutoINTEL = NamedMaximumNumberOfRegisters 0
+ src/Data/SpirV/Enum/Op.hs view
@@ -0,0 +1,2953 @@+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE TypeSynonymInstances #-}++module Data.SpirV.Enum.Op where++import Data.Int (Int32)+import Foreign.Storable (Storable)++newtype Op = Op Int32+  deriving newtype (Eq, Ord, Storable)++instance Show Op where+  showsPrec p (Op v) = case v of+    0 -> showString "OpNop"+    1 -> showString "OpUndef"+    2 -> showString "OpSourceContinued"+    3 -> showString "OpSource"+    4 -> showString "OpSourceExtension"+    5 -> showString "OpName"+    6 -> showString "OpMemberName"+    7 -> showString "OpString"+    8 -> showString "OpLine"+    10 -> showString "OpExtension"+    11 -> showString "OpExtInstImport"+    12 -> showString "OpExtInst"+    14 -> showString "OpMemoryModel"+    15 -> showString "OpEntryPoint"+    16 -> showString "OpExecutionMode"+    17 -> showString "OpCapability"+    19 -> showString "OpTypeVoid"+    20 -> showString "OpTypeBool"+    21 -> showString "OpTypeInt"+    22 -> showString "OpTypeFloat"+    23 -> showString "OpTypeVector"+    24 -> showString "OpTypeMatrix"+    25 -> showString "OpTypeImage"+    26 -> showString "OpTypeSampler"+    27 -> showString "OpTypeSampledImage"+    28 -> showString "OpTypeArray"+    29 -> showString "OpTypeRuntimeArray"+    30 -> showString "OpTypeStruct"+    31 -> showString "OpTypeOpaque"+    32 -> showString "OpTypePointer"+    33 -> showString "OpTypeFunction"+    34 -> showString "OpTypeEvent"+    35 -> showString "OpTypeDeviceEvent"+    36 -> showString "OpTypeReserveId"+    37 -> showString "OpTypeQueue"+    38 -> showString "OpTypePipe"+    39 -> showString "OpTypeForwardPointer"+    41 -> showString "OpConstantTrue"+    42 -> showString "OpConstantFalse"+    43 -> showString "OpConstant"+    44 -> showString "OpConstantComposite"+    45 -> showString "OpConstantSampler"+    46 -> showString "OpConstantNull"+    48 -> showString "OpSpecConstantTrue"+    49 -> showString "OpSpecConstantFalse"+    50 -> showString "OpSpecConstant"+    51 -> showString "OpSpecConstantComposite"+    52 -> showString "OpSpecConstantOp"+    54 -> showString "OpFunction"+    55 -> showString "OpFunctionParameter"+    56 -> showString "OpFunctionEnd"+    57 -> showString "OpFunctionCall"+    59 -> showString "OpVariable"+    60 -> showString "OpImageTexelPointer"+    61 -> showString "OpLoad"+    62 -> showString "OpStore"+    63 -> showString "OpCopyMemory"+    64 -> showString "OpCopyMemorySized"+    65 -> showString "OpAccessChain"+    66 -> showString "OpInBoundsAccessChain"+    67 -> showString "OpPtrAccessChain"+    68 -> showString "OpArrayLength"+    69 -> showString "OpGenericPtrMemSemantics"+    70 -> showString "OpInBoundsPtrAccessChain"+    71 -> showString "OpDecorate"+    72 -> showString "OpMemberDecorate"+    73 -> showString "OpDecorationGroup"+    74 -> showString "OpGroupDecorate"+    75 -> showString "OpGroupMemberDecorate"+    77 -> showString "OpVectorExtractDynamic"+    78 -> showString "OpVectorInsertDynamic"+    79 -> showString "OpVectorShuffle"+    80 -> showString "OpCompositeConstruct"+    81 -> showString "OpCompositeExtract"+    82 -> showString "OpCompositeInsert"+    83 -> showString "OpCopyObject"+    84 -> showString "OpTranspose"+    86 -> showString "OpSampledImage"+    87 -> showString "OpImageSampleImplicitLod"+    88 -> showString "OpImageSampleExplicitLod"+    89 -> showString "OpImageSampleDrefImplicitLod"+    90 -> showString "OpImageSampleDrefExplicitLod"+    91 -> showString "OpImageSampleProjImplicitLod"+    92 -> showString "OpImageSampleProjExplicitLod"+    93 -> showString "OpImageSampleProjDrefImplicitLod"+    94 -> showString "OpImageSampleProjDrefExplicitLod"+    95 -> showString "OpImageFetch"+    96 -> showString "OpImageGather"+    97 -> showString "OpImageDrefGather"+    98 -> showString "OpImageRead"+    99 -> showString "OpImageWrite"+    100 -> showString "OpImage"+    101 -> showString "OpImageQueryFormat"+    102 -> showString "OpImageQueryOrder"+    103 -> showString "OpImageQuerySizeLod"+    104 -> showString "OpImageQuerySize"+    105 -> showString "OpImageQueryLod"+    106 -> showString "OpImageQueryLevels"+    107 -> showString "OpImageQuerySamples"+    109 -> showString "OpConvertFToU"+    110 -> showString "OpConvertFToS"+    111 -> showString "OpConvertSToF"+    112 -> showString "OpConvertUToF"+    113 -> showString "OpUConvert"+    114 -> showString "OpSConvert"+    115 -> showString "OpFConvert"+    116 -> showString "OpQuantizeToF16"+    117 -> showString "OpConvertPtrToU"+    118 -> showString "OpSatConvertSToU"+    119 -> showString "OpSatConvertUToS"+    120 -> showString "OpConvertUToPtr"+    121 -> showString "OpPtrCastToGeneric"+    122 -> showString "OpGenericCastToPtr"+    123 -> showString "OpGenericCastToPtrExplicit"+    124 -> showString "OpBitcast"+    126 -> showString "OpSNegate"+    127 -> showString "OpFNegate"+    128 -> showString "OpIAdd"+    129 -> showString "OpFAdd"+    130 -> showString "OpISub"+    131 -> showString "OpFSub"+    132 -> showString "OpIMul"+    133 -> showString "OpFMul"+    134 -> showString "OpUDiv"+    135 -> showString "OpSDiv"+    136 -> showString "OpFDiv"+    137 -> showString "OpUMod"+    138 -> showString "OpSRem"+    139 -> showString "OpSMod"+    140 -> showString "OpFRem"+    141 -> showString "OpFMod"+    142 -> showString "OpVectorTimesScalar"+    143 -> showString "OpMatrixTimesScalar"+    144 -> showString "OpVectorTimesMatrix"+    145 -> showString "OpMatrixTimesVector"+    146 -> showString "OpMatrixTimesMatrix"+    147 -> showString "OpOuterProduct"+    148 -> showString "OpDot"+    149 -> showString "OpIAddCarry"+    150 -> showString "OpISubBorrow"+    151 -> showString "OpUMulExtended"+    152 -> showString "OpSMulExtended"+    154 -> showString "OpAny"+    155 -> showString "OpAll"+    156 -> showString "OpIsNan"+    157 -> showString "OpIsInf"+    158 -> showString "OpIsFinite"+    159 -> showString "OpIsNormal"+    160 -> showString "OpSignBitSet"+    161 -> showString "OpLessOrGreater"+    162 -> showString "OpOrdered"+    163 -> showString "OpUnordered"+    164 -> showString "OpLogicalEqual"+    165 -> showString "OpLogicalNotEqual"+    166 -> showString "OpLogicalOr"+    167 -> showString "OpLogicalAnd"+    168 -> showString "OpLogicalNot"+    169 -> showString "OpSelect"+    170 -> showString "OpIEqual"+    171 -> showString "OpINotEqual"+    172 -> showString "OpUGreaterThan"+    173 -> showString "OpSGreaterThan"+    174 -> showString "OpUGreaterThanEqual"+    175 -> showString "OpSGreaterThanEqual"+    176 -> showString "OpULessThan"+    177 -> showString "OpSLessThan"+    178 -> showString "OpULessThanEqual"+    179 -> showString "OpSLessThanEqual"+    180 -> showString "OpFOrdEqual"+    181 -> showString "OpFUnordEqual"+    182 -> showString "OpFOrdNotEqual"+    183 -> showString "OpFUnordNotEqual"+    184 -> showString "OpFOrdLessThan"+    185 -> showString "OpFUnordLessThan"+    186 -> showString "OpFOrdGreaterThan"+    187 -> showString "OpFUnordGreaterThan"+    188 -> showString "OpFOrdLessThanEqual"+    189 -> showString "OpFUnordLessThanEqual"+    190 -> showString "OpFOrdGreaterThanEqual"+    191 -> showString "OpFUnordGreaterThanEqual"+    194 -> showString "OpShiftRightLogical"+    195 -> showString "OpShiftRightArithmetic"+    196 -> showString "OpShiftLeftLogical"+    197 -> showString "OpBitwiseOr"+    198 -> showString "OpBitwiseXor"+    199 -> showString "OpBitwiseAnd"+    200 -> showString "OpNot"+    201 -> showString "OpBitFieldInsert"+    202 -> showString "OpBitFieldSExtract"+    203 -> showString "OpBitFieldUExtract"+    204 -> showString "OpBitReverse"+    205 -> showString "OpBitCount"+    207 -> showString "OpDPdx"+    208 -> showString "OpDPdy"+    209 -> showString "OpFwidth"+    210 -> showString "OpDPdxFine"+    211 -> showString "OpDPdyFine"+    212 -> showString "OpFwidthFine"+    213 -> showString "OpDPdxCoarse"+    214 -> showString "OpDPdyCoarse"+    215 -> showString "OpFwidthCoarse"+    218 -> showString "OpEmitVertex"+    219 -> showString "OpEndPrimitive"+    220 -> showString "OpEmitStreamVertex"+    221 -> showString "OpEndStreamPrimitive"+    224 -> showString "OpControlBarrier"+    225 -> showString "OpMemoryBarrier"+    227 -> showString "OpAtomicLoad"+    228 -> showString "OpAtomicStore"+    229 -> showString "OpAtomicExchange"+    230 -> showString "OpAtomicCompareExchange"+    231 -> showString "OpAtomicCompareExchangeWeak"+    232 -> showString "OpAtomicIIncrement"+    233 -> showString "OpAtomicIDecrement"+    234 -> showString "OpAtomicIAdd"+    235 -> showString "OpAtomicISub"+    236 -> showString "OpAtomicSMin"+    237 -> showString "OpAtomicUMin"+    238 -> showString "OpAtomicSMax"+    239 -> showString "OpAtomicUMax"+    240 -> showString "OpAtomicAnd"+    241 -> showString "OpAtomicOr"+    242 -> showString "OpAtomicXor"+    245 -> showString "OpPhi"+    246 -> showString "OpLoopMerge"+    247 -> showString "OpSelectionMerge"+    248 -> showString "OpLabel"+    249 -> showString "OpBranch"+    250 -> showString "OpBranchConditional"+    251 -> showString "OpSwitch"+    252 -> showString "OpKill"+    253 -> showString "OpReturn"+    254 -> showString "OpReturnValue"+    255 -> showString "OpUnreachable"+    256 -> showString "OpLifetimeStart"+    257 -> showString "OpLifetimeStop"+    259 -> showString "OpGroupAsyncCopy"+    260 -> showString "OpGroupWaitEvents"+    261 -> showString "OpGroupAll"+    262 -> showString "OpGroupAny"+    263 -> showString "OpGroupBroadcast"+    264 -> showString "OpGroupIAdd"+    265 -> showString "OpGroupFAdd"+    266 -> showString "OpGroupFMin"+    267 -> showString "OpGroupUMin"+    268 -> showString "OpGroupSMin"+    269 -> showString "OpGroupFMax"+    270 -> showString "OpGroupUMax"+    271 -> showString "OpGroupSMax"+    274 -> showString "OpReadPipe"+    275 -> showString "OpWritePipe"+    276 -> showString "OpReservedReadPipe"+    277 -> showString "OpReservedWritePipe"+    278 -> showString "OpReserveReadPipePackets"+    279 -> showString "OpReserveWritePipePackets"+    280 -> showString "OpCommitReadPipe"+    281 -> showString "OpCommitWritePipe"+    282 -> showString "OpIsValidReserveId"+    283 -> showString "OpGetNumPipePackets"+    284 -> showString "OpGetMaxPipePackets"+    285 -> showString "OpGroupReserveReadPipePackets"+    286 -> showString "OpGroupReserveWritePipePackets"+    287 -> showString "OpGroupCommitReadPipe"+    288 -> showString "OpGroupCommitWritePipe"+    291 -> showString "OpEnqueueMarker"+    292 -> showString "OpEnqueueKernel"+    293 -> showString "OpGetKernelNDrangeSubGroupCount"+    294 -> showString "OpGetKernelNDrangeMaxSubGroupSize"+    295 -> showString "OpGetKernelWorkGroupSize"+    296 -> showString "OpGetKernelPreferredWorkGroupSizeMultiple"+    297 -> showString "OpRetainEvent"+    298 -> showString "OpReleaseEvent"+    299 -> showString "OpCreateUserEvent"+    300 -> showString "OpIsValidEvent"+    301 -> showString "OpSetUserEventStatus"+    302 -> showString "OpCaptureEventProfilingInfo"+    303 -> showString "OpGetDefaultQueue"+    304 -> showString "OpBuildNDRange"+    305 -> showString "OpImageSparseSampleImplicitLod"+    306 -> showString "OpImageSparseSampleExplicitLod"+    307 -> showString "OpImageSparseSampleDrefImplicitLod"+    308 -> showString "OpImageSparseSampleDrefExplicitLod"+    309 -> showString "OpImageSparseSampleProjImplicitLod"+    310 -> showString "OpImageSparseSampleProjExplicitLod"+    311 -> showString "OpImageSparseSampleProjDrefImplicitLod"+    312 -> showString "OpImageSparseSampleProjDrefExplicitLod"+    313 -> showString "OpImageSparseFetch"+    314 -> showString "OpImageSparseGather"+    315 -> showString "OpImageSparseDrefGather"+    316 -> showString "OpImageSparseTexelsResident"+    317 -> showString "OpNoLine"+    318 -> showString "OpAtomicFlagTestAndSet"+    319 -> showString "OpAtomicFlagClear"+    320 -> showString "OpImageSparseRead"+    321 -> showString "OpSizeOf"+    322 -> showString "OpTypePipeStorage"+    323 -> showString "OpConstantPipeStorage"+    324 -> showString "OpCreatePipeFromPipeStorage"+    325 -> showString "OpGetKernelLocalSizeForSubgroupCount"+    326 -> showString "OpGetKernelMaxNumSubgroups"+    327 -> showString "OpTypeNamedBarrier"+    328 -> showString "OpNamedBarrierInitialize"+    329 -> showString "OpMemoryNamedBarrier"+    330 -> showString "OpModuleProcessed"+    331 -> showString "OpExecutionModeId"+    332 -> showString "OpDecorateId"+    333 -> showString "OpGroupNonUniformElect"+    334 -> showString "OpGroupNonUniformAll"+    335 -> showString "OpGroupNonUniformAny"+    336 -> showString "OpGroupNonUniformAllEqual"+    337 -> showString "OpGroupNonUniformBroadcast"+    338 -> showString "OpGroupNonUniformBroadcastFirst"+    339 -> showString "OpGroupNonUniformBallot"+    340 -> showString "OpGroupNonUniformInverseBallot"+    341 -> showString "OpGroupNonUniformBallotBitExtract"+    342 -> showString "OpGroupNonUniformBallotBitCount"+    343 -> showString "OpGroupNonUniformBallotFindLSB"+    344 -> showString "OpGroupNonUniformBallotFindMSB"+    345 -> showString "OpGroupNonUniformShuffle"+    346 -> showString "OpGroupNonUniformShuffleXor"+    347 -> showString "OpGroupNonUniformShuffleUp"+    348 -> showString "OpGroupNonUniformShuffleDown"+    349 -> showString "OpGroupNonUniformIAdd"+    350 -> showString "OpGroupNonUniformFAdd"+    351 -> showString "OpGroupNonUniformIMul"+    352 -> showString "OpGroupNonUniformFMul"+    353 -> showString "OpGroupNonUniformSMin"+    354 -> showString "OpGroupNonUniformUMin"+    355 -> showString "OpGroupNonUniformFMin"+    356 -> showString "OpGroupNonUniformSMax"+    357 -> showString "OpGroupNonUniformUMax"+    358 -> showString "OpGroupNonUniformFMax"+    359 -> showString "OpGroupNonUniformBitwiseAnd"+    360 -> showString "OpGroupNonUniformBitwiseOr"+    361 -> showString "OpGroupNonUniformBitwiseXor"+    362 -> showString "OpGroupNonUniformLogicalAnd"+    363 -> showString "OpGroupNonUniformLogicalOr"+    364 -> showString "OpGroupNonUniformLogicalXor"+    365 -> showString "OpGroupNonUniformQuadBroadcast"+    366 -> showString "OpGroupNonUniformQuadSwap"+    400 -> showString "OpCopyLogical"+    401 -> showString "OpPtrEqual"+    402 -> showString "OpPtrNotEqual"+    403 -> showString "OpPtrDiff"+    4160 -> showString "OpColorAttachmentReadEXT"+    4161 -> showString "OpDepthAttachmentReadEXT"+    4162 -> showString "OpStencilAttachmentReadEXT"+    4416 -> showString "OpTerminateInvocation"+    4421 -> showString "OpSubgroupBallotKHR"+    4422 -> showString "OpSubgroupFirstInvocationKHR"+    4428 -> showString "OpSubgroupAllKHR"+    4429 -> showString "OpSubgroupAnyKHR"+    4430 -> showString "OpSubgroupAllEqualKHR"+    4431 -> showString "OpGroupNonUniformRotateKHR"+    4432 -> showString "OpSubgroupReadInvocationKHR"+    4433 -> showString "OpExtInstWithForwardRefsKHR"+    4445 -> showString "OpTraceRayKHR"+    4446 -> showString "OpExecuteCallableKHR"+    4447 -> showString "OpConvertUToAccelerationStructureKHR"+    4448 -> showString "OpIgnoreIntersectionKHR"+    4449 -> showString "OpTerminateRayKHR"+    4450 -> showString "OpSDot"+    4451 -> showString "OpUDot"+    4452 -> showString "OpSUDot"+    4453 -> showString "OpSDotAccSat"+    4454 -> showString "OpUDotAccSat"+    4455 -> showString "OpSUDotAccSat"+    4456 -> showString "OpTypeCooperativeMatrixKHR"+    4457 -> showString "OpCooperativeMatrixLoadKHR"+    4458 -> showString "OpCooperativeMatrixStoreKHR"+    4459 -> showString "OpCooperativeMatrixMulAddKHR"+    4460 -> showString "OpCooperativeMatrixLengthKHR"+    4461 -> showString "OpConstantCompositeReplicateEXT"+    4462 -> showString "OpSpecConstantCompositeReplicateEXT"+    4463 -> showString "OpCompositeConstructReplicateEXT"+    4472 -> showString "OpTypeRayQueryKHR"+    4473 -> showString "OpRayQueryInitializeKHR"+    4474 -> showString "OpRayQueryTerminateKHR"+    4475 -> showString "OpRayQueryGenerateIntersectionKHR"+    4476 -> showString "OpRayQueryConfirmIntersectionKHR"+    4477 -> showString "OpRayQueryProceedKHR"+    4479 -> showString "OpRayQueryGetIntersectionTypeKHR"+    4480 -> showString "OpImageSampleWeightedQCOM"+    4481 -> showString "OpImageBoxFilterQCOM"+    4482 -> showString "OpImageBlockMatchSSDQCOM"+    4483 -> showString "OpImageBlockMatchSADQCOM"+    4500 -> showString "OpImageBlockMatchWindowSSDQCOM"+    4501 -> showString "OpImageBlockMatchWindowSADQCOM"+    4502 -> showString "OpImageBlockMatchGatherSSDQCOM"+    4503 -> showString "OpImageBlockMatchGatherSADQCOM"+    5000 -> showString "OpGroupIAddNonUniformAMD"+    5001 -> showString "OpGroupFAddNonUniformAMD"+    5002 -> showString "OpGroupFMinNonUniformAMD"+    5003 -> showString "OpGroupUMinNonUniformAMD"+    5004 -> showString "OpGroupSMinNonUniformAMD"+    5005 -> showString "OpGroupFMaxNonUniformAMD"+    5006 -> showString "OpGroupUMaxNonUniformAMD"+    5007 -> showString "OpGroupSMaxNonUniformAMD"+    5011 -> showString "OpFragmentMaskFetchAMD"+    5012 -> showString "OpFragmentFetchAMD"+    5056 -> showString "OpReadClockKHR"+    5075 -> showString "OpFinalizeNodePayloadsAMDX"+    5078 -> showString "OpFinishWritingNodePayloadAMDX"+    5090 -> showString "OpInitializeNodePayloadsAMDX"+    5110 -> showString "OpGroupNonUniformQuadAllKHR"+    5111 -> showString "OpGroupNonUniformQuadAnyKHR"+    5249 -> showString "OpHitObjectRecordHitMotionNV"+    5250 -> showString "OpHitObjectRecordHitWithIndexMotionNV"+    5251 -> showString "OpHitObjectRecordMissMotionNV"+    5252 -> showString "OpHitObjectGetWorldToObjectNV"+    5253 -> showString "OpHitObjectGetObjectToWorldNV"+    5254 -> showString "OpHitObjectGetObjectRayDirectionNV"+    5255 -> showString "OpHitObjectGetObjectRayOriginNV"+    5256 -> showString "OpHitObjectTraceRayMotionNV"+    5257 -> showString "OpHitObjectGetShaderRecordBufferHandleNV"+    5258 -> showString "OpHitObjectGetShaderBindingTableRecordIndexNV"+    5259 -> showString "OpHitObjectRecordEmptyNV"+    5260 -> showString "OpHitObjectTraceRayNV"+    5261 -> showString "OpHitObjectRecordHitNV"+    5262 -> showString "OpHitObjectRecordHitWithIndexNV"+    5263 -> showString "OpHitObjectRecordMissNV"+    5264 -> showString "OpHitObjectExecuteShaderNV"+    5265 -> showString "OpHitObjectGetCurrentTimeNV"+    5266 -> showString "OpHitObjectGetAttributesNV"+    5267 -> showString "OpHitObjectGetHitKindNV"+    5268 -> showString "OpHitObjectGetPrimitiveIndexNV"+    5269 -> showString "OpHitObjectGetGeometryIndexNV"+    5270 -> showString "OpHitObjectGetInstanceIdNV"+    5271 -> showString "OpHitObjectGetInstanceCustomIndexNV"+    5272 -> showString "OpHitObjectGetWorldRayDirectionNV"+    5273 -> showString "OpHitObjectGetWorldRayOriginNV"+    5274 -> showString "OpHitObjectGetRayTMaxNV"+    5275 -> showString "OpHitObjectGetRayTMinNV"+    5276 -> showString "OpHitObjectIsEmptyNV"+    5277 -> showString "OpHitObjectIsHitNV"+    5278 -> showString "OpHitObjectIsMissNV"+    5279 -> showString "OpReorderThreadWithHitObjectNV"+    5280 -> showString "OpReorderThreadWithHintNV"+    5281 -> showString "OpTypeHitObjectNV"+    5283 -> showString "OpImageSampleFootprintNV"+    5294 -> showString "OpEmitMeshTasksEXT"+    5295 -> showString "OpSetMeshOutputsEXT"+    5296 -> showString "OpGroupNonUniformPartitionNV"+    5299 -> showString "OpWritePackedPrimitiveIndices4x8NV"+    5300 -> showString "OpFetchMicroTriangleVertexPositionNV"+    5301 -> showString "OpFetchMicroTriangleVertexBarycentricNV"+    5334 -> showString "OpReportIntersectionKHR"+    5335 -> showString "OpIgnoreIntersectionNV"+    5336 -> showString "OpTerminateRayNV"+    5337 -> showString "OpTraceNV"+    5338 -> showString "OpTraceMotionNV"+    5339 -> showString "OpTraceRayMotionNV"+    5340 -> showString "OpRayQueryGetIntersectionTriangleVertexPositionsKHR"+    5341 -> showString "OpTypeAccelerationStructureKHR"+    5344 -> showString "OpExecuteCallableNV"+    5358 -> showString "OpTypeCooperativeMatrixNV"+    5359 -> showString "OpCooperativeMatrixLoadNV"+    5360 -> showString "OpCooperativeMatrixStoreNV"+    5361 -> showString "OpCooperativeMatrixMulAddNV"+    5362 -> showString "OpCooperativeMatrixLengthNV"+    5364 -> showString "OpBeginInvocationInterlockEXT"+    5365 -> showString "OpEndInvocationInterlockEXT"+    5380 -> showString "OpDemoteToHelperInvocation"+    5381 -> showString "OpIsHelperInvocationEXT"+    5391 -> showString "OpConvertUToImageNV"+    5392 -> showString "OpConvertUToSamplerNV"+    5393 -> showString "OpConvertImageToUNV"+    5394 -> showString "OpConvertSamplerToUNV"+    5395 -> showString "OpConvertUToSampledImageNV"+    5396 -> showString "OpConvertSampledImageToUNV"+    5397 -> showString "OpSamplerImageAddressingModeNV"+    5398 -> showString "OpRawAccessChainNV"+    5571 -> showString "OpSubgroupShuffleINTEL"+    5572 -> showString "OpSubgroupShuffleDownINTEL"+    5573 -> showString "OpSubgroupShuffleUpINTEL"+    5574 -> showString "OpSubgroupShuffleXorINTEL"+    5575 -> showString "OpSubgroupBlockReadINTEL"+    5576 -> showString "OpSubgroupBlockWriteINTEL"+    5577 -> showString "OpSubgroupImageBlockReadINTEL"+    5578 -> showString "OpSubgroupImageBlockWriteINTEL"+    5580 -> showString "OpSubgroupImageMediaBlockReadINTEL"+    5581 -> showString "OpSubgroupImageMediaBlockWriteINTEL"+    5585 -> showString "OpUCountLeadingZerosINTEL"+    5586 -> showString "OpUCountTrailingZerosINTEL"+    5587 -> showString "OpAbsISubINTEL"+    5588 -> showString "OpAbsUSubINTEL"+    5589 -> showString "OpIAddSatINTEL"+    5590 -> showString "OpUAddSatINTEL"+    5591 -> showString "OpIAverageINTEL"+    5592 -> showString "OpUAverageINTEL"+    5593 -> showString "OpIAverageRoundedINTEL"+    5594 -> showString "OpUAverageRoundedINTEL"+    5595 -> showString "OpISubSatINTEL"+    5596 -> showString "OpUSubSatINTEL"+    5597 -> showString "OpIMul32x16INTEL"+    5598 -> showString "OpUMul32x16INTEL"+    5600 -> showString "OpConstantFunctionPointerINTEL"+    5601 -> showString "OpFunctionPointerCallINTEL"+    5609 -> showString "OpAsmTargetINTEL"+    5610 -> showString "OpAsmINTEL"+    5611 -> showString "OpAsmCallINTEL"+    5614 -> showString "OpAtomicFMinEXT"+    5615 -> showString "OpAtomicFMaxEXT"+    5630 -> showString "OpAssumeTrueKHR"+    5631 -> showString "OpExpectKHR"+    5632 -> showString "OpDecorateString"+    5633 -> showString "OpMemberDecorateString"+    5699 -> showString "OpVmeImageINTEL"+    5700 -> showString "OpTypeVmeImageINTEL"+    5701 -> showString "OpTypeAvcImePayloadINTEL"+    5702 -> showString "OpTypeAvcRefPayloadINTEL"+    5703 -> showString "OpTypeAvcSicPayloadINTEL"+    5704 -> showString "OpTypeAvcMcePayloadINTEL"+    5705 -> showString "OpTypeAvcMceResultINTEL"+    5706 -> showString "OpTypeAvcImeResultINTEL"+    5707 -> showString "OpTypeAvcImeResultSingleReferenceStreamoutINTEL"+    5708 -> showString "OpTypeAvcImeResultDualReferenceStreamoutINTEL"+    5709 -> showString "OpTypeAvcImeSingleReferenceStreaminINTEL"+    5710 -> showString "OpTypeAvcImeDualReferenceStreaminINTEL"+    5711 -> showString "OpTypeAvcRefResultINTEL"+    5712 -> showString "OpTypeAvcSicResultINTEL"+    5713 -> showString "OpSubgroupAvcMceGetDefaultInterBaseMultiReferencePenaltyINTEL"+    5714 -> showString "OpSubgroupAvcMceSetInterBaseMultiReferencePenaltyINTEL"+    5715 -> showString "OpSubgroupAvcMceGetDefaultInterShapePenaltyINTEL"+    5716 -> showString "OpSubgroupAvcMceSetInterShapePenaltyINTEL"+    5717 -> showString "OpSubgroupAvcMceGetDefaultInterDirectionPenaltyINTEL"+    5718 -> showString "OpSubgroupAvcMceSetInterDirectionPenaltyINTEL"+    5719 -> showString "OpSubgroupAvcMceGetDefaultIntraLumaShapePenaltyINTEL"+    5720 -> showString "OpSubgroupAvcMceGetDefaultInterMotionVectorCostTableINTEL"+    5721 -> showString "OpSubgroupAvcMceGetDefaultHighPenaltyCostTableINTEL"+    5722 -> showString "OpSubgroupAvcMceGetDefaultMediumPenaltyCostTableINTEL"+    5723 -> showString "OpSubgroupAvcMceGetDefaultLowPenaltyCostTableINTEL"+    5724 -> showString "OpSubgroupAvcMceSetMotionVectorCostFunctionINTEL"+    5725 -> showString "OpSubgroupAvcMceGetDefaultIntraLumaModePenaltyINTEL"+    5726 -> showString "OpSubgroupAvcMceGetDefaultNonDcLumaIntraPenaltyINTEL"+    5727 -> showString "OpSubgroupAvcMceGetDefaultIntraChromaModeBasePenaltyINTEL"+    5728 -> showString "OpSubgroupAvcMceSetAcOnlyHaarINTEL"+    5729 -> showString "OpSubgroupAvcMceSetSourceInterlacedFieldPolarityINTEL"+    5730 -> showString "OpSubgroupAvcMceSetSingleReferenceInterlacedFieldPolarityINTEL"+    5731 -> showString "OpSubgroupAvcMceSetDualReferenceInterlacedFieldPolaritiesINTEL"+    5732 -> showString "OpSubgroupAvcMceConvertToImePayloadINTEL"+    5733 -> showString "OpSubgroupAvcMceConvertToImeResultINTEL"+    5734 -> showString "OpSubgroupAvcMceConvertToRefPayloadINTEL"+    5735 -> showString "OpSubgroupAvcMceConvertToRefResultINTEL"+    5736 -> showString "OpSubgroupAvcMceConvertToSicPayloadINTEL"+    5737 -> showString "OpSubgroupAvcMceConvertToSicResultINTEL"+    5738 -> showString "OpSubgroupAvcMceGetMotionVectorsINTEL"+    5739 -> showString "OpSubgroupAvcMceGetInterDistortionsINTEL"+    5740 -> showString "OpSubgroupAvcMceGetBestInterDistortionsINTEL"+    5741 -> showString "OpSubgroupAvcMceGetInterMajorShapeINTEL"+    5742 -> showString "OpSubgroupAvcMceGetInterMinorShapeINTEL"+    5743 -> showString "OpSubgroupAvcMceGetInterDirectionsINTEL"+    5744 -> showString "OpSubgroupAvcMceGetInterMotionVectorCountINTEL"+    5745 -> showString "OpSubgroupAvcMceGetInterReferenceIdsINTEL"+    5746 -> showString "OpSubgroupAvcMceGetInterReferenceInterlacedFieldPolaritiesINTEL"+    5747 -> showString "OpSubgroupAvcImeInitializeINTEL"+    5748 -> showString "OpSubgroupAvcImeSetSingleReferenceINTEL"+    5749 -> showString "OpSubgroupAvcImeSetDualReferenceINTEL"+    5750 -> showString "OpSubgroupAvcImeRefWindowSizeINTEL"+    5751 -> showString "OpSubgroupAvcImeAdjustRefOffsetINTEL"+    5752 -> showString "OpSubgroupAvcImeConvertToMcePayloadINTEL"+    5753 -> showString "OpSubgroupAvcImeSetMaxMotionVectorCountINTEL"+    5754 -> showString "OpSubgroupAvcImeSetUnidirectionalMixDisableINTEL"+    5755 -> showString "OpSubgroupAvcImeSetEarlySearchTerminationThresholdINTEL"+    5756 -> showString "OpSubgroupAvcImeSetWeightedSadINTEL"+    5757 -> showString "OpSubgroupAvcImeEvaluateWithSingleReferenceINTEL"+    5758 -> showString "OpSubgroupAvcImeEvaluateWithDualReferenceINTEL"+    5759 -> showString "OpSubgroupAvcImeEvaluateWithSingleReferenceStreaminINTEL"+    5760 -> showString "OpSubgroupAvcImeEvaluateWithDualReferenceStreaminINTEL"+    5761 -> showString "OpSubgroupAvcImeEvaluateWithSingleReferenceStreamoutINTEL"+    5762 -> showString "OpSubgroupAvcImeEvaluateWithDualReferenceStreamoutINTEL"+    5763 -> showString "OpSubgroupAvcImeEvaluateWithSingleReferenceStreaminoutINTEL"+    5764 -> showString "OpSubgroupAvcImeEvaluateWithDualReferenceStreaminoutINTEL"+    5765 -> showString "OpSubgroupAvcImeConvertToMceResultINTEL"+    5766 -> showString "OpSubgroupAvcImeGetSingleReferenceStreaminINTEL"+    5767 -> showString "OpSubgroupAvcImeGetDualReferenceStreaminINTEL"+    5768 -> showString "OpSubgroupAvcImeStripSingleReferenceStreamoutINTEL"+    5769 -> showString "OpSubgroupAvcImeStripDualReferenceStreamoutINTEL"+    5770 -> showString "OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeMotionVectorsINTEL"+    5771 -> showString "OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeDistortionsINTEL"+    5772 -> showString "OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeReferenceIdsINTEL"+    5773 -> showString "OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeMotionVectorsINTEL"+    5774 -> showString "OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeDistortionsINTEL"+    5775 -> showString "OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeReferenceIdsINTEL"+    5776 -> showString "OpSubgroupAvcImeGetBorderReachedINTEL"+    5777 -> showString "OpSubgroupAvcImeGetTruncatedSearchIndicationINTEL"+    5778 -> showString "OpSubgroupAvcImeGetUnidirectionalEarlySearchTerminationINTEL"+    5779 -> showString "OpSubgroupAvcImeGetWeightingPatternMinimumMotionVectorINTEL"+    5780 -> showString "OpSubgroupAvcImeGetWeightingPatternMinimumDistortionINTEL"+    5781 -> showString "OpSubgroupAvcFmeInitializeINTEL"+    5782 -> showString "OpSubgroupAvcBmeInitializeINTEL"+    5783 -> showString "OpSubgroupAvcRefConvertToMcePayloadINTEL"+    5784 -> showString "OpSubgroupAvcRefSetBidirectionalMixDisableINTEL"+    5785 -> showString "OpSubgroupAvcRefSetBilinearFilterEnableINTEL"+    5786 -> showString "OpSubgroupAvcRefEvaluateWithSingleReferenceINTEL"+    5787 -> showString "OpSubgroupAvcRefEvaluateWithDualReferenceINTEL"+    5788 -> showString "OpSubgroupAvcRefEvaluateWithMultiReferenceINTEL"+    5789 -> showString "OpSubgroupAvcRefEvaluateWithMultiReferenceInterlacedINTEL"+    5790 -> showString "OpSubgroupAvcRefConvertToMceResultINTEL"+    5791 -> showString "OpSubgroupAvcSicInitializeINTEL"+    5792 -> showString "OpSubgroupAvcSicConfigureSkcINTEL"+    5793 -> showString "OpSubgroupAvcSicConfigureIpeLumaINTEL"+    5794 -> showString "OpSubgroupAvcSicConfigureIpeLumaChromaINTEL"+    5795 -> showString "OpSubgroupAvcSicGetMotionVectorMaskINTEL"+    5796 -> showString "OpSubgroupAvcSicConvertToMcePayloadINTEL"+    5797 -> showString "OpSubgroupAvcSicSetIntraLumaShapePenaltyINTEL"+    5798 -> showString "OpSubgroupAvcSicSetIntraLumaModeCostFunctionINTEL"+    5799 -> showString "OpSubgroupAvcSicSetIntraChromaModeCostFunctionINTEL"+    5800 -> showString "OpSubgroupAvcSicSetBilinearFilterEnableINTEL"+    5801 -> showString "OpSubgroupAvcSicSetSkcForwardTransformEnableINTEL"+    5802 -> showString "OpSubgroupAvcSicSetBlockBasedRawSkipSadINTEL"+    5803 -> showString "OpSubgroupAvcSicEvaluateIpeINTEL"+    5804 -> showString "OpSubgroupAvcSicEvaluateWithSingleReferenceINTEL"+    5805 -> showString "OpSubgroupAvcSicEvaluateWithDualReferenceINTEL"+    5806 -> showString "OpSubgroupAvcSicEvaluateWithMultiReferenceINTEL"+    5807 -> showString "OpSubgroupAvcSicEvaluateWithMultiReferenceInterlacedINTEL"+    5808 -> showString "OpSubgroupAvcSicConvertToMceResultINTEL"+    5809 -> showString "OpSubgroupAvcSicGetIpeLumaShapeINTEL"+    5810 -> showString "OpSubgroupAvcSicGetBestIpeLumaDistortionINTEL"+    5811 -> showString "OpSubgroupAvcSicGetBestIpeChromaDistortionINTEL"+    5812 -> showString "OpSubgroupAvcSicGetPackedIpeLumaModesINTEL"+    5813 -> showString "OpSubgroupAvcSicGetIpeChromaModeINTEL"+    5814 -> showString "OpSubgroupAvcSicGetPackedSkcLumaCountThresholdINTEL"+    5815 -> showString "OpSubgroupAvcSicGetPackedSkcLumaSumThresholdINTEL"+    5816 -> showString "OpSubgroupAvcSicGetInterRawSadsINTEL"+    5818 -> showString "OpVariableLengthArrayINTEL"+    5819 -> showString "OpSaveMemoryINTEL"+    5820 -> showString "OpRestoreMemoryINTEL"+    5840 -> showString "OpArbitraryFloatSinCosPiINTEL"+    5841 -> showString "OpArbitraryFloatCastINTEL"+    5842 -> showString "OpArbitraryFloatCastFromIntINTEL"+    5843 -> showString "OpArbitraryFloatCastToIntINTEL"+    5846 -> showString "OpArbitraryFloatAddINTEL"+    5847 -> showString "OpArbitraryFloatSubINTEL"+    5848 -> showString "OpArbitraryFloatMulINTEL"+    5849 -> showString "OpArbitraryFloatDivINTEL"+    5850 -> showString "OpArbitraryFloatGTINTEL"+    5851 -> showString "OpArbitraryFloatGEINTEL"+    5852 -> showString "OpArbitraryFloatLTINTEL"+    5853 -> showString "OpArbitraryFloatLEINTEL"+    5854 -> showString "OpArbitraryFloatEQINTEL"+    5855 -> showString "OpArbitraryFloatRecipINTEL"+    5856 -> showString "OpArbitraryFloatRSqrtINTEL"+    5857 -> showString "OpArbitraryFloatCbrtINTEL"+    5858 -> showString "OpArbitraryFloatHypotINTEL"+    5859 -> showString "OpArbitraryFloatSqrtINTEL"+    5860 -> showString "OpArbitraryFloatLogINTEL"+    5861 -> showString "OpArbitraryFloatLog2INTEL"+    5862 -> showString "OpArbitraryFloatLog10INTEL"+    5863 -> showString "OpArbitraryFloatLog1pINTEL"+    5864 -> showString "OpArbitraryFloatExpINTEL"+    5865 -> showString "OpArbitraryFloatExp2INTEL"+    5866 -> showString "OpArbitraryFloatExp10INTEL"+    5867 -> showString "OpArbitraryFloatExpm1INTEL"+    5868 -> showString "OpArbitraryFloatSinINTEL"+    5869 -> showString "OpArbitraryFloatCosINTEL"+    5870 -> showString "OpArbitraryFloatSinCosINTEL"+    5871 -> showString "OpArbitraryFloatSinPiINTEL"+    5872 -> showString "OpArbitraryFloatCosPiINTEL"+    5873 -> showString "OpArbitraryFloatASinINTEL"+    5874 -> showString "OpArbitraryFloatASinPiINTEL"+    5875 -> showString "OpArbitraryFloatACosINTEL"+    5876 -> showString "OpArbitraryFloatACosPiINTEL"+    5877 -> showString "OpArbitraryFloatATanINTEL"+    5878 -> showString "OpArbitraryFloatATanPiINTEL"+    5879 -> showString "OpArbitraryFloatATan2INTEL"+    5880 -> showString "OpArbitraryFloatPowINTEL"+    5881 -> showString "OpArbitraryFloatPowRINTEL"+    5882 -> showString "OpArbitraryFloatPowNINTEL"+    5887 -> showString "OpLoopControlINTEL"+    5911 -> showString "OpAliasDomainDeclINTEL"+    5912 -> showString "OpAliasScopeDeclINTEL"+    5913 -> showString "OpAliasScopeListDeclINTEL"+    5923 -> showString "OpFixedSqrtINTEL"+    5924 -> showString "OpFixedRecipINTEL"+    5925 -> showString "OpFixedRsqrtINTEL"+    5926 -> showString "OpFixedSinINTEL"+    5927 -> showString "OpFixedCosINTEL"+    5928 -> showString "OpFixedSinCosINTEL"+    5929 -> showString "OpFixedSinPiINTEL"+    5930 -> showString "OpFixedCosPiINTEL"+    5931 -> showString "OpFixedSinCosPiINTEL"+    5932 -> showString "OpFixedLogINTEL"+    5933 -> showString "OpFixedExpINTEL"+    5934 -> showString "OpPtrCastToCrossWorkgroupINTEL"+    5938 -> showString "OpCrossWorkgroupCastToPtrINTEL"+    5946 -> showString "OpReadPipeBlockingINTEL"+    5947 -> showString "OpWritePipeBlockingINTEL"+    5949 -> showString "OpFPGARegINTEL"+    6016 -> showString "OpRayQueryGetRayTMinKHR"+    6017 -> showString "OpRayQueryGetRayFlagsKHR"+    6018 -> showString "OpRayQueryGetIntersectionTKHR"+    6019 -> showString "OpRayQueryGetIntersectionInstanceCustomIndexKHR"+    6020 -> showString "OpRayQueryGetIntersectionInstanceIdKHR"+    6021 -> showString "OpRayQueryGetIntersectionInstanceShaderBindingTableRecordOffsetKHR"+    6022 -> showString "OpRayQueryGetIntersectionGeometryIndexKHR"+    6023 -> showString "OpRayQueryGetIntersectionPrimitiveIndexKHR"+    6024 -> showString "OpRayQueryGetIntersectionBarycentricsKHR"+    6025 -> showString "OpRayQueryGetIntersectionFrontFaceKHR"+    6026 -> showString "OpRayQueryGetIntersectionCandidateAABBOpaqueKHR"+    6027 -> showString "OpRayQueryGetIntersectionObjectRayDirectionKHR"+    6028 -> showString "OpRayQueryGetIntersectionObjectRayOriginKHR"+    6029 -> showString "OpRayQueryGetWorldRayDirectionKHR"+    6030 -> showString "OpRayQueryGetWorldRayOriginKHR"+    6031 -> showString "OpRayQueryGetIntersectionObjectToWorldKHR"+    6032 -> showString "OpRayQueryGetIntersectionWorldToObjectKHR"+    6035 -> showString "OpAtomicFAddEXT"+    6086 -> showString "OpTypeBufferSurfaceINTEL"+    6090 -> showString "OpTypeStructContinuedINTEL"+    6091 -> showString "OpConstantCompositeContinuedINTEL"+    6092 -> showString "OpSpecConstantCompositeContinuedINTEL"+    6096 -> showString "OpCompositeConstructContinuedINTEL"+    6116 -> showString "OpConvertFToBF16INTEL"+    6117 -> showString "OpConvertBF16ToFINTEL"+    6142 -> showString "OpControlBarrierArriveINTEL"+    6143 -> showString "OpControlBarrierWaitINTEL"+    6401 -> showString "OpGroupIMulKHR"+    6402 -> showString "OpGroupFMulKHR"+    6403 -> showString "OpGroupBitwiseAndKHR"+    6404 -> showString "OpGroupBitwiseOrKHR"+    6405 -> showString "OpGroupBitwiseXorKHR"+    6406 -> showString "OpGroupLogicalAndKHR"+    6407 -> showString "OpGroupLogicalOrKHR"+    6408 -> showString "OpGroupLogicalXorKHR"+    6428 -> showString "OpMaskedGatherINTEL"+    6429 -> showString "OpMaskedScatterINTEL"+    x -> showParen (p > 10) $ showString "Op " . showsPrec (p + 1) x++pattern OpNop :: Op+pattern OpNop = Op 0++pattern OpUndef :: Op+pattern OpUndef = Op 1++pattern OpSourceContinued :: Op+pattern OpSourceContinued = Op 2++pattern OpSource :: Op+pattern OpSource = Op 3++pattern OpSourceExtension :: Op+pattern OpSourceExtension = Op 4++pattern OpName :: Op+pattern OpName = Op 5++pattern OpMemberName :: Op+pattern OpMemberName = Op 6++pattern OpString :: Op+pattern OpString = Op 7++pattern OpLine :: Op+pattern OpLine = Op 8++pattern OpExtension :: Op+pattern OpExtension = Op 10++pattern OpExtInstImport :: Op+pattern OpExtInstImport = Op 11++pattern OpExtInst :: Op+pattern OpExtInst = Op 12++pattern OpMemoryModel :: Op+pattern OpMemoryModel = Op 14++pattern OpEntryPoint :: Op+pattern OpEntryPoint = Op 15++pattern OpExecutionMode :: Op+pattern OpExecutionMode = Op 16++pattern OpCapability :: Op+pattern OpCapability = Op 17++pattern OpTypeVoid :: Op+pattern OpTypeVoid = Op 19++pattern OpTypeBool :: Op+pattern OpTypeBool = Op 20++pattern OpTypeInt :: Op+pattern OpTypeInt = Op 21++pattern OpTypeFloat :: Op+pattern OpTypeFloat = Op 22++pattern OpTypeVector :: Op+pattern OpTypeVector = Op 23++pattern OpTypeMatrix :: Op+pattern OpTypeMatrix = Op 24++pattern OpTypeImage :: Op+pattern OpTypeImage = Op 25++pattern OpTypeSampler :: Op+pattern OpTypeSampler = Op 26++pattern OpTypeSampledImage :: Op+pattern OpTypeSampledImage = Op 27++pattern OpTypeArray :: Op+pattern OpTypeArray = Op 28++pattern OpTypeRuntimeArray :: Op+pattern OpTypeRuntimeArray = Op 29++pattern OpTypeStruct :: Op+pattern OpTypeStruct = Op 30++pattern OpTypeOpaque :: Op+pattern OpTypeOpaque = Op 31++pattern OpTypePointer :: Op+pattern OpTypePointer = Op 32++pattern OpTypeFunction :: Op+pattern OpTypeFunction = Op 33++pattern OpTypeEvent :: Op+pattern OpTypeEvent = Op 34++pattern OpTypeDeviceEvent :: Op+pattern OpTypeDeviceEvent = Op 35++pattern OpTypeReserveId :: Op+pattern OpTypeReserveId = Op 36++pattern OpTypeQueue :: Op+pattern OpTypeQueue = Op 37++pattern OpTypePipe :: Op+pattern OpTypePipe = Op 38++pattern OpTypeForwardPointer :: Op+pattern OpTypeForwardPointer = Op 39++pattern OpConstantTrue :: Op+pattern OpConstantTrue = Op 41++pattern OpConstantFalse :: Op+pattern OpConstantFalse = Op 42++pattern OpConstant :: Op+pattern OpConstant = Op 43++pattern OpConstantComposite :: Op+pattern OpConstantComposite = Op 44++pattern OpConstantSampler :: Op+pattern OpConstantSampler = Op 45++pattern OpConstantNull :: Op+pattern OpConstantNull = Op 46++pattern OpSpecConstantTrue :: Op+pattern OpSpecConstantTrue = Op 48++pattern OpSpecConstantFalse :: Op+pattern OpSpecConstantFalse = Op 49++pattern OpSpecConstant :: Op+pattern OpSpecConstant = Op 50++pattern OpSpecConstantComposite :: Op+pattern OpSpecConstantComposite = Op 51++pattern OpSpecConstantOp :: Op+pattern OpSpecConstantOp = Op 52++pattern OpFunction :: Op+pattern OpFunction = Op 54++pattern OpFunctionParameter :: Op+pattern OpFunctionParameter = Op 55++pattern OpFunctionEnd :: Op+pattern OpFunctionEnd = Op 56++pattern OpFunctionCall :: Op+pattern OpFunctionCall = Op 57++pattern OpVariable :: Op+pattern OpVariable = Op 59++pattern OpImageTexelPointer :: Op+pattern OpImageTexelPointer = Op 60++pattern OpLoad :: Op+pattern OpLoad = Op 61++pattern OpStore :: Op+pattern OpStore = Op 62++pattern OpCopyMemory :: Op+pattern OpCopyMemory = Op 63++pattern OpCopyMemorySized :: Op+pattern OpCopyMemorySized = Op 64++pattern OpAccessChain :: Op+pattern OpAccessChain = Op 65++pattern OpInBoundsAccessChain :: Op+pattern OpInBoundsAccessChain = Op 66++pattern OpPtrAccessChain :: Op+pattern OpPtrAccessChain = Op 67++pattern OpArrayLength :: Op+pattern OpArrayLength = Op 68++pattern OpGenericPtrMemSemantics :: Op+pattern OpGenericPtrMemSemantics = Op 69++pattern OpInBoundsPtrAccessChain :: Op+pattern OpInBoundsPtrAccessChain = Op 70++pattern OpDecorate :: Op+pattern OpDecorate = Op 71++pattern OpMemberDecorate :: Op+pattern OpMemberDecorate = Op 72++pattern OpDecorationGroup :: Op+pattern OpDecorationGroup = Op 73++pattern OpGroupDecorate :: Op+pattern OpGroupDecorate = Op 74++pattern OpGroupMemberDecorate :: Op+pattern OpGroupMemberDecorate = Op 75++pattern OpVectorExtractDynamic :: Op+pattern OpVectorExtractDynamic = Op 77++pattern OpVectorInsertDynamic :: Op+pattern OpVectorInsertDynamic = Op 78++pattern OpVectorShuffle :: Op+pattern OpVectorShuffle = Op 79++pattern OpCompositeConstruct :: Op+pattern OpCompositeConstruct = Op 80++pattern OpCompositeExtract :: Op+pattern OpCompositeExtract = Op 81++pattern OpCompositeInsert :: Op+pattern OpCompositeInsert = Op 82++pattern OpCopyObject :: Op+pattern OpCopyObject = Op 83++pattern OpTranspose :: Op+pattern OpTranspose = Op 84++pattern OpSampledImage :: Op+pattern OpSampledImage = Op 86++pattern OpImageSampleImplicitLod :: Op+pattern OpImageSampleImplicitLod = Op 87++pattern OpImageSampleExplicitLod :: Op+pattern OpImageSampleExplicitLod = Op 88++pattern OpImageSampleDrefImplicitLod :: Op+pattern OpImageSampleDrefImplicitLod = Op 89++pattern OpImageSampleDrefExplicitLod :: Op+pattern OpImageSampleDrefExplicitLod = Op 90++pattern OpImageSampleProjImplicitLod :: Op+pattern OpImageSampleProjImplicitLod = Op 91++pattern OpImageSampleProjExplicitLod :: Op+pattern OpImageSampleProjExplicitLod = Op 92++pattern OpImageSampleProjDrefImplicitLod :: Op+pattern OpImageSampleProjDrefImplicitLod = Op 93++pattern OpImageSampleProjDrefExplicitLod :: Op+pattern OpImageSampleProjDrefExplicitLod = Op 94++pattern OpImageFetch :: Op+pattern OpImageFetch = Op 95++pattern OpImageGather :: Op+pattern OpImageGather = Op 96++pattern OpImageDrefGather :: Op+pattern OpImageDrefGather = Op 97++pattern OpImageRead :: Op+pattern OpImageRead = Op 98++pattern OpImageWrite :: Op+pattern OpImageWrite = Op 99++pattern OpImage :: Op+pattern OpImage = Op 100++pattern OpImageQueryFormat :: Op+pattern OpImageQueryFormat = Op 101++pattern OpImageQueryOrder :: Op+pattern OpImageQueryOrder = Op 102++pattern OpImageQuerySizeLod :: Op+pattern OpImageQuerySizeLod = Op 103++pattern OpImageQuerySize :: Op+pattern OpImageQuerySize = Op 104++pattern OpImageQueryLod :: Op+pattern OpImageQueryLod = Op 105++pattern OpImageQueryLevels :: Op+pattern OpImageQueryLevels = Op 106++pattern OpImageQuerySamples :: Op+pattern OpImageQuerySamples = Op 107++pattern OpConvertFToU :: Op+pattern OpConvertFToU = Op 109++pattern OpConvertFToS :: Op+pattern OpConvertFToS = Op 110++pattern OpConvertSToF :: Op+pattern OpConvertSToF = Op 111++pattern OpConvertUToF :: Op+pattern OpConvertUToF = Op 112++pattern OpUConvert :: Op+pattern OpUConvert = Op 113++pattern OpSConvert :: Op+pattern OpSConvert = Op 114++pattern OpFConvert :: Op+pattern OpFConvert = Op 115++pattern OpQuantizeToF16 :: Op+pattern OpQuantizeToF16 = Op 116++pattern OpConvertPtrToU :: Op+pattern OpConvertPtrToU = Op 117++pattern OpSatConvertSToU :: Op+pattern OpSatConvertSToU = Op 118++pattern OpSatConvertUToS :: Op+pattern OpSatConvertUToS = Op 119++pattern OpConvertUToPtr :: Op+pattern OpConvertUToPtr = Op 120++pattern OpPtrCastToGeneric :: Op+pattern OpPtrCastToGeneric = Op 121++pattern OpGenericCastToPtr :: Op+pattern OpGenericCastToPtr = Op 122++pattern OpGenericCastToPtrExplicit :: Op+pattern OpGenericCastToPtrExplicit = Op 123++pattern OpBitcast :: Op+pattern OpBitcast = Op 124++pattern OpSNegate :: Op+pattern OpSNegate = Op 126++pattern OpFNegate :: Op+pattern OpFNegate = Op 127++pattern OpIAdd :: Op+pattern OpIAdd = Op 128++pattern OpFAdd :: Op+pattern OpFAdd = Op 129++pattern OpISub :: Op+pattern OpISub = Op 130++pattern OpFSub :: Op+pattern OpFSub = Op 131++pattern OpIMul :: Op+pattern OpIMul = Op 132++pattern OpFMul :: Op+pattern OpFMul = Op 133++pattern OpUDiv :: Op+pattern OpUDiv = Op 134++pattern OpSDiv :: Op+pattern OpSDiv = Op 135++pattern OpFDiv :: Op+pattern OpFDiv = Op 136++pattern OpUMod :: Op+pattern OpUMod = Op 137++pattern OpSRem :: Op+pattern OpSRem = Op 138++pattern OpSMod :: Op+pattern OpSMod = Op 139++pattern OpFRem :: Op+pattern OpFRem = Op 140++pattern OpFMod :: Op+pattern OpFMod = Op 141++pattern OpVectorTimesScalar :: Op+pattern OpVectorTimesScalar = Op 142++pattern OpMatrixTimesScalar :: Op+pattern OpMatrixTimesScalar = Op 143++pattern OpVectorTimesMatrix :: Op+pattern OpVectorTimesMatrix = Op 144++pattern OpMatrixTimesVector :: Op+pattern OpMatrixTimesVector = Op 145++pattern OpMatrixTimesMatrix :: Op+pattern OpMatrixTimesMatrix = Op 146++pattern OpOuterProduct :: Op+pattern OpOuterProduct = Op 147++pattern OpDot :: Op+pattern OpDot = Op 148++pattern OpIAddCarry :: Op+pattern OpIAddCarry = Op 149++pattern OpISubBorrow :: Op+pattern OpISubBorrow = Op 150++pattern OpUMulExtended :: Op+pattern OpUMulExtended = Op 151++pattern OpSMulExtended :: Op+pattern OpSMulExtended = Op 152++pattern OpAny :: Op+pattern OpAny = Op 154++pattern OpAll :: Op+pattern OpAll = Op 155++pattern OpIsNan :: Op+pattern OpIsNan = Op 156++pattern OpIsInf :: Op+pattern OpIsInf = Op 157++pattern OpIsFinite :: Op+pattern OpIsFinite = Op 158++pattern OpIsNormal :: Op+pattern OpIsNormal = Op 159++pattern OpSignBitSet :: Op+pattern OpSignBitSet = Op 160++pattern OpLessOrGreater :: Op+pattern OpLessOrGreater = Op 161++pattern OpOrdered :: Op+pattern OpOrdered = Op 162++pattern OpUnordered :: Op+pattern OpUnordered = Op 163++pattern OpLogicalEqual :: Op+pattern OpLogicalEqual = Op 164++pattern OpLogicalNotEqual :: Op+pattern OpLogicalNotEqual = Op 165++pattern OpLogicalOr :: Op+pattern OpLogicalOr = Op 166++pattern OpLogicalAnd :: Op+pattern OpLogicalAnd = Op 167++pattern OpLogicalNot :: Op+pattern OpLogicalNot = Op 168++pattern OpSelect :: Op+pattern OpSelect = Op 169++pattern OpIEqual :: Op+pattern OpIEqual = Op 170++pattern OpINotEqual :: Op+pattern OpINotEqual = Op 171++pattern OpUGreaterThan :: Op+pattern OpUGreaterThan = Op 172++pattern OpSGreaterThan :: Op+pattern OpSGreaterThan = Op 173++pattern OpUGreaterThanEqual :: Op+pattern OpUGreaterThanEqual = Op 174++pattern OpSGreaterThanEqual :: Op+pattern OpSGreaterThanEqual = Op 175++pattern OpULessThan :: Op+pattern OpULessThan = Op 176++pattern OpSLessThan :: Op+pattern OpSLessThan = Op 177++pattern OpULessThanEqual :: Op+pattern OpULessThanEqual = Op 178++pattern OpSLessThanEqual :: Op+pattern OpSLessThanEqual = Op 179++pattern OpFOrdEqual :: Op+pattern OpFOrdEqual = Op 180++pattern OpFUnordEqual :: Op+pattern OpFUnordEqual = Op 181++pattern OpFOrdNotEqual :: Op+pattern OpFOrdNotEqual = Op 182++pattern OpFUnordNotEqual :: Op+pattern OpFUnordNotEqual = Op 183++pattern OpFOrdLessThan :: Op+pattern OpFOrdLessThan = Op 184++pattern OpFUnordLessThan :: Op+pattern OpFUnordLessThan = Op 185++pattern OpFOrdGreaterThan :: Op+pattern OpFOrdGreaterThan = Op 186++pattern OpFUnordGreaterThan :: Op+pattern OpFUnordGreaterThan = Op 187++pattern OpFOrdLessThanEqual :: Op+pattern OpFOrdLessThanEqual = Op 188++pattern OpFUnordLessThanEqual :: Op+pattern OpFUnordLessThanEqual = Op 189++pattern OpFOrdGreaterThanEqual :: Op+pattern OpFOrdGreaterThanEqual = Op 190++pattern OpFUnordGreaterThanEqual :: Op+pattern OpFUnordGreaterThanEqual = Op 191++pattern OpShiftRightLogical :: Op+pattern OpShiftRightLogical = Op 194++pattern OpShiftRightArithmetic :: Op+pattern OpShiftRightArithmetic = Op 195++pattern OpShiftLeftLogical :: Op+pattern OpShiftLeftLogical = Op 196++pattern OpBitwiseOr :: Op+pattern OpBitwiseOr = Op 197++pattern OpBitwiseXor :: Op+pattern OpBitwiseXor = Op 198++pattern OpBitwiseAnd :: Op+pattern OpBitwiseAnd = Op 199++pattern OpNot :: Op+pattern OpNot = Op 200++pattern OpBitFieldInsert :: Op+pattern OpBitFieldInsert = Op 201++pattern OpBitFieldSExtract :: Op+pattern OpBitFieldSExtract = Op 202++pattern OpBitFieldUExtract :: Op+pattern OpBitFieldUExtract = Op 203++pattern OpBitReverse :: Op+pattern OpBitReverse = Op 204++pattern OpBitCount :: Op+pattern OpBitCount = Op 205++pattern OpDPdx :: Op+pattern OpDPdx = Op 207++pattern OpDPdy :: Op+pattern OpDPdy = Op 208++pattern OpFwidth :: Op+pattern OpFwidth = Op 209++pattern OpDPdxFine :: Op+pattern OpDPdxFine = Op 210++pattern OpDPdyFine :: Op+pattern OpDPdyFine = Op 211++pattern OpFwidthFine :: Op+pattern OpFwidthFine = Op 212++pattern OpDPdxCoarse :: Op+pattern OpDPdxCoarse = Op 213++pattern OpDPdyCoarse :: Op+pattern OpDPdyCoarse = Op 214++pattern OpFwidthCoarse :: Op+pattern OpFwidthCoarse = Op 215++pattern OpEmitVertex :: Op+pattern OpEmitVertex = Op 218++pattern OpEndPrimitive :: Op+pattern OpEndPrimitive = Op 219++pattern OpEmitStreamVertex :: Op+pattern OpEmitStreamVertex = Op 220++pattern OpEndStreamPrimitive :: Op+pattern OpEndStreamPrimitive = Op 221++pattern OpControlBarrier :: Op+pattern OpControlBarrier = Op 224++pattern OpMemoryBarrier :: Op+pattern OpMemoryBarrier = Op 225++pattern OpAtomicLoad :: Op+pattern OpAtomicLoad = Op 227++pattern OpAtomicStore :: Op+pattern OpAtomicStore = Op 228++pattern OpAtomicExchange :: Op+pattern OpAtomicExchange = Op 229++pattern OpAtomicCompareExchange :: Op+pattern OpAtomicCompareExchange = Op 230++pattern OpAtomicCompareExchangeWeak :: Op+pattern OpAtomicCompareExchangeWeak = Op 231++pattern OpAtomicIIncrement :: Op+pattern OpAtomicIIncrement = Op 232++pattern OpAtomicIDecrement :: Op+pattern OpAtomicIDecrement = Op 233++pattern OpAtomicIAdd :: Op+pattern OpAtomicIAdd = Op 234++pattern OpAtomicISub :: Op+pattern OpAtomicISub = Op 235++pattern OpAtomicSMin :: Op+pattern OpAtomicSMin = Op 236++pattern OpAtomicUMin :: Op+pattern OpAtomicUMin = Op 237++pattern OpAtomicSMax :: Op+pattern OpAtomicSMax = Op 238++pattern OpAtomicUMax :: Op+pattern OpAtomicUMax = Op 239++pattern OpAtomicAnd :: Op+pattern OpAtomicAnd = Op 240++pattern OpAtomicOr :: Op+pattern OpAtomicOr = Op 241++pattern OpAtomicXor :: Op+pattern OpAtomicXor = Op 242++pattern OpPhi :: Op+pattern OpPhi = Op 245++pattern OpLoopMerge :: Op+pattern OpLoopMerge = Op 246++pattern OpSelectionMerge :: Op+pattern OpSelectionMerge = Op 247++pattern OpLabel :: Op+pattern OpLabel = Op 248++pattern OpBranch :: Op+pattern OpBranch = Op 249++pattern OpBranchConditional :: Op+pattern OpBranchConditional = Op 250++pattern OpSwitch :: Op+pattern OpSwitch = Op 251++pattern OpKill :: Op+pattern OpKill = Op 252++pattern OpReturn :: Op+pattern OpReturn = Op 253++pattern OpReturnValue :: Op+pattern OpReturnValue = Op 254++pattern OpUnreachable :: Op+pattern OpUnreachable = Op 255++pattern OpLifetimeStart :: Op+pattern OpLifetimeStart = Op 256++pattern OpLifetimeStop :: Op+pattern OpLifetimeStop = Op 257++pattern OpGroupAsyncCopy :: Op+pattern OpGroupAsyncCopy = Op 259++pattern OpGroupWaitEvents :: Op+pattern OpGroupWaitEvents = Op 260++pattern OpGroupAll :: Op+pattern OpGroupAll = Op 261++pattern OpGroupAny :: Op+pattern OpGroupAny = Op 262++pattern OpGroupBroadcast :: Op+pattern OpGroupBroadcast = Op 263++pattern OpGroupIAdd :: Op+pattern OpGroupIAdd = Op 264++pattern OpGroupFAdd :: Op+pattern OpGroupFAdd = Op 265++pattern OpGroupFMin :: Op+pattern OpGroupFMin = Op 266++pattern OpGroupUMin :: Op+pattern OpGroupUMin = Op 267++pattern OpGroupSMin :: Op+pattern OpGroupSMin = Op 268++pattern OpGroupFMax :: Op+pattern OpGroupFMax = Op 269++pattern OpGroupUMax :: Op+pattern OpGroupUMax = Op 270++pattern OpGroupSMax :: Op+pattern OpGroupSMax = Op 271++pattern OpReadPipe :: Op+pattern OpReadPipe = Op 274++pattern OpWritePipe :: Op+pattern OpWritePipe = Op 275++pattern OpReservedReadPipe :: Op+pattern OpReservedReadPipe = Op 276++pattern OpReservedWritePipe :: Op+pattern OpReservedWritePipe = Op 277++pattern OpReserveReadPipePackets :: Op+pattern OpReserveReadPipePackets = Op 278++pattern OpReserveWritePipePackets :: Op+pattern OpReserveWritePipePackets = Op 279++pattern OpCommitReadPipe :: Op+pattern OpCommitReadPipe = Op 280++pattern OpCommitWritePipe :: Op+pattern OpCommitWritePipe = Op 281++pattern OpIsValidReserveId :: Op+pattern OpIsValidReserveId = Op 282++pattern OpGetNumPipePackets :: Op+pattern OpGetNumPipePackets = Op 283++pattern OpGetMaxPipePackets :: Op+pattern OpGetMaxPipePackets = Op 284++pattern OpGroupReserveReadPipePackets :: Op+pattern OpGroupReserveReadPipePackets = Op 285++pattern OpGroupReserveWritePipePackets :: Op+pattern OpGroupReserveWritePipePackets = Op 286++pattern OpGroupCommitReadPipe :: Op+pattern OpGroupCommitReadPipe = Op 287++pattern OpGroupCommitWritePipe :: Op+pattern OpGroupCommitWritePipe = Op 288++pattern OpEnqueueMarker :: Op+pattern OpEnqueueMarker = Op 291++pattern OpEnqueueKernel :: Op+pattern OpEnqueueKernel = Op 292++pattern OpGetKernelNDrangeSubGroupCount :: Op+pattern OpGetKernelNDrangeSubGroupCount = Op 293++pattern OpGetKernelNDrangeMaxSubGroupSize :: Op+pattern OpGetKernelNDrangeMaxSubGroupSize = Op 294++pattern OpGetKernelWorkGroupSize :: Op+pattern OpGetKernelWorkGroupSize = Op 295++pattern OpGetKernelPreferredWorkGroupSizeMultiple :: Op+pattern OpGetKernelPreferredWorkGroupSizeMultiple = Op 296++pattern OpRetainEvent :: Op+pattern OpRetainEvent = Op 297++pattern OpReleaseEvent :: Op+pattern OpReleaseEvent = Op 298++pattern OpCreateUserEvent :: Op+pattern OpCreateUserEvent = Op 299++pattern OpIsValidEvent :: Op+pattern OpIsValidEvent = Op 300++pattern OpSetUserEventStatus :: Op+pattern OpSetUserEventStatus = Op 301++pattern OpCaptureEventProfilingInfo :: Op+pattern OpCaptureEventProfilingInfo = Op 302++pattern OpGetDefaultQueue :: Op+pattern OpGetDefaultQueue = Op 303++pattern OpBuildNDRange :: Op+pattern OpBuildNDRange = Op 304++pattern OpImageSparseSampleImplicitLod :: Op+pattern OpImageSparseSampleImplicitLod = Op 305++pattern OpImageSparseSampleExplicitLod :: Op+pattern OpImageSparseSampleExplicitLod = Op 306++pattern OpImageSparseSampleDrefImplicitLod :: Op+pattern OpImageSparseSampleDrefImplicitLod = Op 307++pattern OpImageSparseSampleDrefExplicitLod :: Op+pattern OpImageSparseSampleDrefExplicitLod = Op 308++pattern OpImageSparseSampleProjImplicitLod :: Op+pattern OpImageSparseSampleProjImplicitLod = Op 309++pattern OpImageSparseSampleProjExplicitLod :: Op+pattern OpImageSparseSampleProjExplicitLod = Op 310++pattern OpImageSparseSampleProjDrefImplicitLod :: Op+pattern OpImageSparseSampleProjDrefImplicitLod = Op 311++pattern OpImageSparseSampleProjDrefExplicitLod :: Op+pattern OpImageSparseSampleProjDrefExplicitLod = Op 312++pattern OpImageSparseFetch :: Op+pattern OpImageSparseFetch = Op 313++pattern OpImageSparseGather :: Op+pattern OpImageSparseGather = Op 314++pattern OpImageSparseDrefGather :: Op+pattern OpImageSparseDrefGather = Op 315++pattern OpImageSparseTexelsResident :: Op+pattern OpImageSparseTexelsResident = Op 316++pattern OpNoLine :: Op+pattern OpNoLine = Op 317++pattern OpAtomicFlagTestAndSet :: Op+pattern OpAtomicFlagTestAndSet = Op 318++pattern OpAtomicFlagClear :: Op+pattern OpAtomicFlagClear = Op 319++pattern OpImageSparseRead :: Op+pattern OpImageSparseRead = Op 320++pattern OpSizeOf :: Op+pattern OpSizeOf = Op 321++pattern OpTypePipeStorage :: Op+pattern OpTypePipeStorage = Op 322++pattern OpConstantPipeStorage :: Op+pattern OpConstantPipeStorage = Op 323++pattern OpCreatePipeFromPipeStorage :: Op+pattern OpCreatePipeFromPipeStorage = Op 324++pattern OpGetKernelLocalSizeForSubgroupCount :: Op+pattern OpGetKernelLocalSizeForSubgroupCount = Op 325++pattern OpGetKernelMaxNumSubgroups :: Op+pattern OpGetKernelMaxNumSubgroups = Op 326++pattern OpTypeNamedBarrier :: Op+pattern OpTypeNamedBarrier = Op 327++pattern OpNamedBarrierInitialize :: Op+pattern OpNamedBarrierInitialize = Op 328++pattern OpMemoryNamedBarrier :: Op+pattern OpMemoryNamedBarrier = Op 329++pattern OpModuleProcessed :: Op+pattern OpModuleProcessed = Op 330++pattern OpExecutionModeId :: Op+pattern OpExecutionModeId = Op 331++pattern OpDecorateId :: Op+pattern OpDecorateId = Op 332++pattern OpGroupNonUniformElect :: Op+pattern OpGroupNonUniformElect = Op 333++pattern OpGroupNonUniformAll :: Op+pattern OpGroupNonUniformAll = Op 334++pattern OpGroupNonUniformAny :: Op+pattern OpGroupNonUniformAny = Op 335++pattern OpGroupNonUniformAllEqual :: Op+pattern OpGroupNonUniformAllEqual = Op 336++pattern OpGroupNonUniformBroadcast :: Op+pattern OpGroupNonUniformBroadcast = Op 337++pattern OpGroupNonUniformBroadcastFirst :: Op+pattern OpGroupNonUniformBroadcastFirst = Op 338++pattern OpGroupNonUniformBallot :: Op+pattern OpGroupNonUniformBallot = Op 339++pattern OpGroupNonUniformInverseBallot :: Op+pattern OpGroupNonUniformInverseBallot = Op 340++pattern OpGroupNonUniformBallotBitExtract :: Op+pattern OpGroupNonUniformBallotBitExtract = Op 341++pattern OpGroupNonUniformBallotBitCount :: Op+pattern OpGroupNonUniformBallotBitCount = Op 342++pattern OpGroupNonUniformBallotFindLSB :: Op+pattern OpGroupNonUniformBallotFindLSB = Op 343++pattern OpGroupNonUniformBallotFindMSB :: Op+pattern OpGroupNonUniformBallotFindMSB = Op 344++pattern OpGroupNonUniformShuffle :: Op+pattern OpGroupNonUniformShuffle = Op 345++pattern OpGroupNonUniformShuffleXor :: Op+pattern OpGroupNonUniformShuffleXor = Op 346++pattern OpGroupNonUniformShuffleUp :: Op+pattern OpGroupNonUniformShuffleUp = Op 347++pattern OpGroupNonUniformShuffleDown :: Op+pattern OpGroupNonUniformShuffleDown = Op 348++pattern OpGroupNonUniformIAdd :: Op+pattern OpGroupNonUniformIAdd = Op 349++pattern OpGroupNonUniformFAdd :: Op+pattern OpGroupNonUniformFAdd = Op 350++pattern OpGroupNonUniformIMul :: Op+pattern OpGroupNonUniformIMul = Op 351++pattern OpGroupNonUniformFMul :: Op+pattern OpGroupNonUniformFMul = Op 352++pattern OpGroupNonUniformSMin :: Op+pattern OpGroupNonUniformSMin = Op 353++pattern OpGroupNonUniformUMin :: Op+pattern OpGroupNonUniformUMin = Op 354++pattern OpGroupNonUniformFMin :: Op+pattern OpGroupNonUniformFMin = Op 355++pattern OpGroupNonUniformSMax :: Op+pattern OpGroupNonUniformSMax = Op 356++pattern OpGroupNonUniformUMax :: Op+pattern OpGroupNonUniformUMax = Op 357++pattern OpGroupNonUniformFMax :: Op+pattern OpGroupNonUniformFMax = Op 358++pattern OpGroupNonUniformBitwiseAnd :: Op+pattern OpGroupNonUniformBitwiseAnd = Op 359++pattern OpGroupNonUniformBitwiseOr :: Op+pattern OpGroupNonUniformBitwiseOr = Op 360++pattern OpGroupNonUniformBitwiseXor :: Op+pattern OpGroupNonUniformBitwiseXor = Op 361++pattern OpGroupNonUniformLogicalAnd :: Op+pattern OpGroupNonUniformLogicalAnd = Op 362++pattern OpGroupNonUniformLogicalOr :: Op+pattern OpGroupNonUniformLogicalOr = Op 363++pattern OpGroupNonUniformLogicalXor :: Op+pattern OpGroupNonUniformLogicalXor = Op 364++pattern OpGroupNonUniformQuadBroadcast :: Op+pattern OpGroupNonUniformQuadBroadcast = Op 365++pattern OpGroupNonUniformQuadSwap :: Op+pattern OpGroupNonUniformQuadSwap = Op 366++pattern OpCopyLogical :: Op+pattern OpCopyLogical = Op 400++pattern OpPtrEqual :: Op+pattern OpPtrEqual = Op 401++pattern OpPtrNotEqual :: Op+pattern OpPtrNotEqual = Op 402++pattern OpPtrDiff :: Op+pattern OpPtrDiff = Op 403++pattern OpColorAttachmentReadEXT :: Op+pattern OpColorAttachmentReadEXT = Op 4160++pattern OpDepthAttachmentReadEXT :: Op+pattern OpDepthAttachmentReadEXT = Op 4161++pattern OpStencilAttachmentReadEXT :: Op+pattern OpStencilAttachmentReadEXT = Op 4162++pattern OpTerminateInvocation :: Op+pattern OpTerminateInvocation = Op 4416++pattern OpSubgroupBallotKHR :: Op+pattern OpSubgroupBallotKHR = Op 4421++pattern OpSubgroupFirstInvocationKHR :: Op+pattern OpSubgroupFirstInvocationKHR = Op 4422++pattern OpSubgroupAllKHR :: Op+pattern OpSubgroupAllKHR = Op 4428++pattern OpSubgroupAnyKHR :: Op+pattern OpSubgroupAnyKHR = Op 4429++pattern OpSubgroupAllEqualKHR :: Op+pattern OpSubgroupAllEqualKHR = Op 4430++pattern OpGroupNonUniformRotateKHR :: Op+pattern OpGroupNonUniformRotateKHR = Op 4431++pattern OpSubgroupReadInvocationKHR :: Op+pattern OpSubgroupReadInvocationKHR = Op 4432++pattern OpExtInstWithForwardRefsKHR :: Op+pattern OpExtInstWithForwardRefsKHR = Op 4433++pattern OpTraceRayKHR :: Op+pattern OpTraceRayKHR = Op 4445++pattern OpExecuteCallableKHR :: Op+pattern OpExecuteCallableKHR = Op 4446++pattern OpConvertUToAccelerationStructureKHR :: Op+pattern OpConvertUToAccelerationStructureKHR = Op 4447++pattern OpIgnoreIntersectionKHR :: Op+pattern OpIgnoreIntersectionKHR = Op 4448++pattern OpTerminateRayKHR :: Op+pattern OpTerminateRayKHR = Op 4449++pattern OpSDot :: Op+pattern OpSDot = Op 4450++pattern OpSDotKHR :: Op+pattern OpSDotKHR = Op 4450++pattern OpUDot :: Op+pattern OpUDot = Op 4451++pattern OpUDotKHR :: Op+pattern OpUDotKHR = Op 4451++pattern OpSUDot :: Op+pattern OpSUDot = Op 4452++pattern OpSUDotKHR :: Op+pattern OpSUDotKHR = Op 4452++pattern OpSDotAccSat :: Op+pattern OpSDotAccSat = Op 4453++pattern OpSDotAccSatKHR :: Op+pattern OpSDotAccSatKHR = Op 4453++pattern OpUDotAccSat :: Op+pattern OpUDotAccSat = Op 4454++pattern OpUDotAccSatKHR :: Op+pattern OpUDotAccSatKHR = Op 4454++pattern OpSUDotAccSat :: Op+pattern OpSUDotAccSat = Op 4455++pattern OpSUDotAccSatKHR :: Op+pattern OpSUDotAccSatKHR = Op 4455++pattern OpTypeCooperativeMatrixKHR :: Op+pattern OpTypeCooperativeMatrixKHR = Op 4456++pattern OpCooperativeMatrixLoadKHR :: Op+pattern OpCooperativeMatrixLoadKHR = Op 4457++pattern OpCooperativeMatrixStoreKHR :: Op+pattern OpCooperativeMatrixStoreKHR = Op 4458++pattern OpCooperativeMatrixMulAddKHR :: Op+pattern OpCooperativeMatrixMulAddKHR = Op 4459++pattern OpCooperativeMatrixLengthKHR :: Op+pattern OpCooperativeMatrixLengthKHR = Op 4460++pattern OpConstantCompositeReplicateEXT :: Op+pattern OpConstantCompositeReplicateEXT = Op 4461++pattern OpSpecConstantCompositeReplicateEXT :: Op+pattern OpSpecConstantCompositeReplicateEXT = Op 4462++pattern OpCompositeConstructReplicateEXT :: Op+pattern OpCompositeConstructReplicateEXT = Op 4463++pattern OpTypeRayQueryKHR :: Op+pattern OpTypeRayQueryKHR = Op 4472++pattern OpRayQueryInitializeKHR :: Op+pattern OpRayQueryInitializeKHR = Op 4473++pattern OpRayQueryTerminateKHR :: Op+pattern OpRayQueryTerminateKHR = Op 4474++pattern OpRayQueryGenerateIntersectionKHR :: Op+pattern OpRayQueryGenerateIntersectionKHR = Op 4475++pattern OpRayQueryConfirmIntersectionKHR :: Op+pattern OpRayQueryConfirmIntersectionKHR = Op 4476++pattern OpRayQueryProceedKHR :: Op+pattern OpRayQueryProceedKHR = Op 4477++pattern OpRayQueryGetIntersectionTypeKHR :: Op+pattern OpRayQueryGetIntersectionTypeKHR = Op 4479++pattern OpImageSampleWeightedQCOM :: Op+pattern OpImageSampleWeightedQCOM = Op 4480++pattern OpImageBoxFilterQCOM :: Op+pattern OpImageBoxFilterQCOM = Op 4481++pattern OpImageBlockMatchSSDQCOM :: Op+pattern OpImageBlockMatchSSDQCOM = Op 4482++pattern OpImageBlockMatchSADQCOM :: Op+pattern OpImageBlockMatchSADQCOM = Op 4483++pattern OpImageBlockMatchWindowSSDQCOM :: Op+pattern OpImageBlockMatchWindowSSDQCOM = Op 4500++pattern OpImageBlockMatchWindowSADQCOM :: Op+pattern OpImageBlockMatchWindowSADQCOM = Op 4501++pattern OpImageBlockMatchGatherSSDQCOM :: Op+pattern OpImageBlockMatchGatherSSDQCOM = Op 4502++pattern OpImageBlockMatchGatherSADQCOM :: Op+pattern OpImageBlockMatchGatherSADQCOM = Op 4503++pattern OpGroupIAddNonUniformAMD :: Op+pattern OpGroupIAddNonUniformAMD = Op 5000++pattern OpGroupFAddNonUniformAMD :: Op+pattern OpGroupFAddNonUniformAMD = Op 5001++pattern OpGroupFMinNonUniformAMD :: Op+pattern OpGroupFMinNonUniformAMD = Op 5002++pattern OpGroupUMinNonUniformAMD :: Op+pattern OpGroupUMinNonUniformAMD = Op 5003++pattern OpGroupSMinNonUniformAMD :: Op+pattern OpGroupSMinNonUniformAMD = Op 5004++pattern OpGroupFMaxNonUniformAMD :: Op+pattern OpGroupFMaxNonUniformAMD = Op 5005++pattern OpGroupUMaxNonUniformAMD :: Op+pattern OpGroupUMaxNonUniformAMD = Op 5006++pattern OpGroupSMaxNonUniformAMD :: Op+pattern OpGroupSMaxNonUniformAMD = Op 5007++pattern OpFragmentMaskFetchAMD :: Op+pattern OpFragmentMaskFetchAMD = Op 5011++pattern OpFragmentFetchAMD :: Op+pattern OpFragmentFetchAMD = Op 5012++pattern OpReadClockKHR :: Op+pattern OpReadClockKHR = Op 5056++pattern OpFinalizeNodePayloadsAMDX :: Op+pattern OpFinalizeNodePayloadsAMDX = Op 5075++pattern OpFinishWritingNodePayloadAMDX :: Op+pattern OpFinishWritingNodePayloadAMDX = Op 5078++pattern OpInitializeNodePayloadsAMDX :: Op+pattern OpInitializeNodePayloadsAMDX = Op 5090++pattern OpGroupNonUniformQuadAllKHR :: Op+pattern OpGroupNonUniformQuadAllKHR = Op 5110++pattern OpGroupNonUniformQuadAnyKHR :: Op+pattern OpGroupNonUniformQuadAnyKHR = Op 5111++pattern OpHitObjectRecordHitMotionNV :: Op+pattern OpHitObjectRecordHitMotionNV = Op 5249++pattern OpHitObjectRecordHitWithIndexMotionNV :: Op+pattern OpHitObjectRecordHitWithIndexMotionNV = Op 5250++pattern OpHitObjectRecordMissMotionNV :: Op+pattern OpHitObjectRecordMissMotionNV = Op 5251++pattern OpHitObjectGetWorldToObjectNV :: Op+pattern OpHitObjectGetWorldToObjectNV = Op 5252++pattern OpHitObjectGetObjectToWorldNV :: Op+pattern OpHitObjectGetObjectToWorldNV = Op 5253++pattern OpHitObjectGetObjectRayDirectionNV :: Op+pattern OpHitObjectGetObjectRayDirectionNV = Op 5254++pattern OpHitObjectGetObjectRayOriginNV :: Op+pattern OpHitObjectGetObjectRayOriginNV = Op 5255++pattern OpHitObjectTraceRayMotionNV :: Op+pattern OpHitObjectTraceRayMotionNV = Op 5256++pattern OpHitObjectGetShaderRecordBufferHandleNV :: Op+pattern OpHitObjectGetShaderRecordBufferHandleNV = Op 5257++pattern OpHitObjectGetShaderBindingTableRecordIndexNV :: Op+pattern OpHitObjectGetShaderBindingTableRecordIndexNV = Op 5258++pattern OpHitObjectRecordEmptyNV :: Op+pattern OpHitObjectRecordEmptyNV = Op 5259++pattern OpHitObjectTraceRayNV :: Op+pattern OpHitObjectTraceRayNV = Op 5260++pattern OpHitObjectRecordHitNV :: Op+pattern OpHitObjectRecordHitNV = Op 5261++pattern OpHitObjectRecordHitWithIndexNV :: Op+pattern OpHitObjectRecordHitWithIndexNV = Op 5262++pattern OpHitObjectRecordMissNV :: Op+pattern OpHitObjectRecordMissNV = Op 5263++pattern OpHitObjectExecuteShaderNV :: Op+pattern OpHitObjectExecuteShaderNV = Op 5264++pattern OpHitObjectGetCurrentTimeNV :: Op+pattern OpHitObjectGetCurrentTimeNV = Op 5265++pattern OpHitObjectGetAttributesNV :: Op+pattern OpHitObjectGetAttributesNV = Op 5266++pattern OpHitObjectGetHitKindNV :: Op+pattern OpHitObjectGetHitKindNV = Op 5267++pattern OpHitObjectGetPrimitiveIndexNV :: Op+pattern OpHitObjectGetPrimitiveIndexNV = Op 5268++pattern OpHitObjectGetGeometryIndexNV :: Op+pattern OpHitObjectGetGeometryIndexNV = Op 5269++pattern OpHitObjectGetInstanceIdNV :: Op+pattern OpHitObjectGetInstanceIdNV = Op 5270++pattern OpHitObjectGetInstanceCustomIndexNV :: Op+pattern OpHitObjectGetInstanceCustomIndexNV = Op 5271++pattern OpHitObjectGetWorldRayDirectionNV :: Op+pattern OpHitObjectGetWorldRayDirectionNV = Op 5272++pattern OpHitObjectGetWorldRayOriginNV :: Op+pattern OpHitObjectGetWorldRayOriginNV = Op 5273++pattern OpHitObjectGetRayTMaxNV :: Op+pattern OpHitObjectGetRayTMaxNV = Op 5274++pattern OpHitObjectGetRayTMinNV :: Op+pattern OpHitObjectGetRayTMinNV = Op 5275++pattern OpHitObjectIsEmptyNV :: Op+pattern OpHitObjectIsEmptyNV = Op 5276++pattern OpHitObjectIsHitNV :: Op+pattern OpHitObjectIsHitNV = Op 5277++pattern OpHitObjectIsMissNV :: Op+pattern OpHitObjectIsMissNV = Op 5278++pattern OpReorderThreadWithHitObjectNV :: Op+pattern OpReorderThreadWithHitObjectNV = Op 5279++pattern OpReorderThreadWithHintNV :: Op+pattern OpReorderThreadWithHintNV = Op 5280++pattern OpTypeHitObjectNV :: Op+pattern OpTypeHitObjectNV = Op 5281++pattern OpImageSampleFootprintNV :: Op+pattern OpImageSampleFootprintNV = Op 5283++pattern OpEmitMeshTasksEXT :: Op+pattern OpEmitMeshTasksEXT = Op 5294++pattern OpSetMeshOutputsEXT :: Op+pattern OpSetMeshOutputsEXT = Op 5295++pattern OpGroupNonUniformPartitionNV :: Op+pattern OpGroupNonUniformPartitionNV = Op 5296++pattern OpWritePackedPrimitiveIndices4x8NV :: Op+pattern OpWritePackedPrimitiveIndices4x8NV = Op 5299++pattern OpFetchMicroTriangleVertexPositionNV :: Op+pattern OpFetchMicroTriangleVertexPositionNV = Op 5300++pattern OpFetchMicroTriangleVertexBarycentricNV :: Op+pattern OpFetchMicroTriangleVertexBarycentricNV = Op 5301++pattern OpReportIntersectionKHR :: Op+pattern OpReportIntersectionKHR = Op 5334++pattern OpReportIntersectionNV :: Op+pattern OpReportIntersectionNV = Op 5334++pattern OpIgnoreIntersectionNV :: Op+pattern OpIgnoreIntersectionNV = Op 5335++pattern OpTerminateRayNV :: Op+pattern OpTerminateRayNV = Op 5336++pattern OpTraceNV :: Op+pattern OpTraceNV = Op 5337++pattern OpTraceMotionNV :: Op+pattern OpTraceMotionNV = Op 5338++pattern OpTraceRayMotionNV :: Op+pattern OpTraceRayMotionNV = Op 5339++pattern OpRayQueryGetIntersectionTriangleVertexPositionsKHR :: Op+pattern OpRayQueryGetIntersectionTriangleVertexPositionsKHR = Op 5340++pattern OpTypeAccelerationStructureKHR :: Op+pattern OpTypeAccelerationStructureKHR = Op 5341++pattern OpTypeAccelerationStructureNV :: Op+pattern OpTypeAccelerationStructureNV = Op 5341++pattern OpExecuteCallableNV :: Op+pattern OpExecuteCallableNV = Op 5344++pattern OpTypeCooperativeMatrixNV :: Op+pattern OpTypeCooperativeMatrixNV = Op 5358++pattern OpCooperativeMatrixLoadNV :: Op+pattern OpCooperativeMatrixLoadNV = Op 5359++pattern OpCooperativeMatrixStoreNV :: Op+pattern OpCooperativeMatrixStoreNV = Op 5360++pattern OpCooperativeMatrixMulAddNV :: Op+pattern OpCooperativeMatrixMulAddNV = Op 5361++pattern OpCooperativeMatrixLengthNV :: Op+pattern OpCooperativeMatrixLengthNV = Op 5362++pattern OpBeginInvocationInterlockEXT :: Op+pattern OpBeginInvocationInterlockEXT = Op 5364++pattern OpEndInvocationInterlockEXT :: Op+pattern OpEndInvocationInterlockEXT = Op 5365++pattern OpDemoteToHelperInvocation :: Op+pattern OpDemoteToHelperInvocation = Op 5380++pattern OpDemoteToHelperInvocationEXT :: Op+pattern OpDemoteToHelperInvocationEXT = Op 5380++pattern OpIsHelperInvocationEXT :: Op+pattern OpIsHelperInvocationEXT = Op 5381++pattern OpConvertUToImageNV :: Op+pattern OpConvertUToImageNV = Op 5391++pattern OpConvertUToSamplerNV :: Op+pattern OpConvertUToSamplerNV = Op 5392++pattern OpConvertImageToUNV :: Op+pattern OpConvertImageToUNV = Op 5393++pattern OpConvertSamplerToUNV :: Op+pattern OpConvertSamplerToUNV = Op 5394++pattern OpConvertUToSampledImageNV :: Op+pattern OpConvertUToSampledImageNV = Op 5395++pattern OpConvertSampledImageToUNV :: Op+pattern OpConvertSampledImageToUNV = Op 5396++pattern OpSamplerImageAddressingModeNV :: Op+pattern OpSamplerImageAddressingModeNV = Op 5397++pattern OpRawAccessChainNV :: Op+pattern OpRawAccessChainNV = Op 5398++pattern OpSubgroupShuffleINTEL :: Op+pattern OpSubgroupShuffleINTEL = Op 5571++pattern OpSubgroupShuffleDownINTEL :: Op+pattern OpSubgroupShuffleDownINTEL = Op 5572++pattern OpSubgroupShuffleUpINTEL :: Op+pattern OpSubgroupShuffleUpINTEL = Op 5573++pattern OpSubgroupShuffleXorINTEL :: Op+pattern OpSubgroupShuffleXorINTEL = Op 5574++pattern OpSubgroupBlockReadINTEL :: Op+pattern OpSubgroupBlockReadINTEL = Op 5575++pattern OpSubgroupBlockWriteINTEL :: Op+pattern OpSubgroupBlockWriteINTEL = Op 5576++pattern OpSubgroupImageBlockReadINTEL :: Op+pattern OpSubgroupImageBlockReadINTEL = Op 5577++pattern OpSubgroupImageBlockWriteINTEL :: Op+pattern OpSubgroupImageBlockWriteINTEL = Op 5578++pattern OpSubgroupImageMediaBlockReadINTEL :: Op+pattern OpSubgroupImageMediaBlockReadINTEL = Op 5580++pattern OpSubgroupImageMediaBlockWriteINTEL :: Op+pattern OpSubgroupImageMediaBlockWriteINTEL = Op 5581++pattern OpUCountLeadingZerosINTEL :: Op+pattern OpUCountLeadingZerosINTEL = Op 5585++pattern OpUCountTrailingZerosINTEL :: Op+pattern OpUCountTrailingZerosINTEL = Op 5586++pattern OpAbsISubINTEL :: Op+pattern OpAbsISubINTEL = Op 5587++pattern OpAbsUSubINTEL :: Op+pattern OpAbsUSubINTEL = Op 5588++pattern OpIAddSatINTEL :: Op+pattern OpIAddSatINTEL = Op 5589++pattern OpUAddSatINTEL :: Op+pattern OpUAddSatINTEL = Op 5590++pattern OpIAverageINTEL :: Op+pattern OpIAverageINTEL = Op 5591++pattern OpUAverageINTEL :: Op+pattern OpUAverageINTEL = Op 5592++pattern OpIAverageRoundedINTEL :: Op+pattern OpIAverageRoundedINTEL = Op 5593++pattern OpUAverageRoundedINTEL :: Op+pattern OpUAverageRoundedINTEL = Op 5594++pattern OpISubSatINTEL :: Op+pattern OpISubSatINTEL = Op 5595++pattern OpUSubSatINTEL :: Op+pattern OpUSubSatINTEL = Op 5596++pattern OpIMul32x16INTEL :: Op+pattern OpIMul32x16INTEL = Op 5597++pattern OpUMul32x16INTEL :: Op+pattern OpUMul32x16INTEL = Op 5598++pattern OpConstantFunctionPointerINTEL :: Op+pattern OpConstantFunctionPointerINTEL = Op 5600++pattern OpFunctionPointerCallINTEL :: Op+pattern OpFunctionPointerCallINTEL = Op 5601++pattern OpAsmTargetINTEL :: Op+pattern OpAsmTargetINTEL = Op 5609++pattern OpAsmINTEL :: Op+pattern OpAsmINTEL = Op 5610++pattern OpAsmCallINTEL :: Op+pattern OpAsmCallINTEL = Op 5611++pattern OpAtomicFMinEXT :: Op+pattern OpAtomicFMinEXT = Op 5614++pattern OpAtomicFMaxEXT :: Op+pattern OpAtomicFMaxEXT = Op 5615++pattern OpAssumeTrueKHR :: Op+pattern OpAssumeTrueKHR = Op 5630++pattern OpExpectKHR :: Op+pattern OpExpectKHR = Op 5631++pattern OpDecorateString :: Op+pattern OpDecorateString = Op 5632++pattern OpDecorateStringGOOGLE :: Op+pattern OpDecorateStringGOOGLE = Op 5632++pattern OpMemberDecorateString :: Op+pattern OpMemberDecorateString = Op 5633++pattern OpMemberDecorateStringGOOGLE :: Op+pattern OpMemberDecorateStringGOOGLE = Op 5633++pattern OpVmeImageINTEL :: Op+pattern OpVmeImageINTEL = Op 5699++pattern OpTypeVmeImageINTEL :: Op+pattern OpTypeVmeImageINTEL = Op 5700++pattern OpTypeAvcImePayloadINTEL :: Op+pattern OpTypeAvcImePayloadINTEL = Op 5701++pattern OpTypeAvcRefPayloadINTEL :: Op+pattern OpTypeAvcRefPayloadINTEL = Op 5702++pattern OpTypeAvcSicPayloadINTEL :: Op+pattern OpTypeAvcSicPayloadINTEL = Op 5703++pattern OpTypeAvcMcePayloadINTEL :: Op+pattern OpTypeAvcMcePayloadINTEL = Op 5704++pattern OpTypeAvcMceResultINTEL :: Op+pattern OpTypeAvcMceResultINTEL = Op 5705++pattern OpTypeAvcImeResultINTEL :: Op+pattern OpTypeAvcImeResultINTEL = Op 5706++pattern OpTypeAvcImeResultSingleReferenceStreamoutINTEL :: Op+pattern OpTypeAvcImeResultSingleReferenceStreamoutINTEL = Op 5707++pattern OpTypeAvcImeResultDualReferenceStreamoutINTEL :: Op+pattern OpTypeAvcImeResultDualReferenceStreamoutINTEL = Op 5708++pattern OpTypeAvcImeSingleReferenceStreaminINTEL :: Op+pattern OpTypeAvcImeSingleReferenceStreaminINTEL = Op 5709++pattern OpTypeAvcImeDualReferenceStreaminINTEL :: Op+pattern OpTypeAvcImeDualReferenceStreaminINTEL = Op 5710++pattern OpTypeAvcRefResultINTEL :: Op+pattern OpTypeAvcRefResultINTEL = Op 5711++pattern OpTypeAvcSicResultINTEL :: Op+pattern OpTypeAvcSicResultINTEL = Op 5712++pattern OpSubgroupAvcMceGetDefaultInterBaseMultiReferencePenaltyINTEL :: Op+pattern OpSubgroupAvcMceGetDefaultInterBaseMultiReferencePenaltyINTEL = Op 5713++pattern OpSubgroupAvcMceSetInterBaseMultiReferencePenaltyINTEL :: Op+pattern OpSubgroupAvcMceSetInterBaseMultiReferencePenaltyINTEL = Op 5714++pattern OpSubgroupAvcMceGetDefaultInterShapePenaltyINTEL :: Op+pattern OpSubgroupAvcMceGetDefaultInterShapePenaltyINTEL = Op 5715++pattern OpSubgroupAvcMceSetInterShapePenaltyINTEL :: Op+pattern OpSubgroupAvcMceSetInterShapePenaltyINTEL = Op 5716++pattern OpSubgroupAvcMceGetDefaultInterDirectionPenaltyINTEL :: Op+pattern OpSubgroupAvcMceGetDefaultInterDirectionPenaltyINTEL = Op 5717++pattern OpSubgroupAvcMceSetInterDirectionPenaltyINTEL :: Op+pattern OpSubgroupAvcMceSetInterDirectionPenaltyINTEL = Op 5718++pattern OpSubgroupAvcMceGetDefaultIntraLumaShapePenaltyINTEL :: Op+pattern OpSubgroupAvcMceGetDefaultIntraLumaShapePenaltyINTEL = Op 5719++pattern OpSubgroupAvcMceGetDefaultInterMotionVectorCostTableINTEL :: Op+pattern OpSubgroupAvcMceGetDefaultInterMotionVectorCostTableINTEL = Op 5720++pattern OpSubgroupAvcMceGetDefaultHighPenaltyCostTableINTEL :: Op+pattern OpSubgroupAvcMceGetDefaultHighPenaltyCostTableINTEL = Op 5721++pattern OpSubgroupAvcMceGetDefaultMediumPenaltyCostTableINTEL :: Op+pattern OpSubgroupAvcMceGetDefaultMediumPenaltyCostTableINTEL = Op 5722++pattern OpSubgroupAvcMceGetDefaultLowPenaltyCostTableINTEL :: Op+pattern OpSubgroupAvcMceGetDefaultLowPenaltyCostTableINTEL = Op 5723++pattern OpSubgroupAvcMceSetMotionVectorCostFunctionINTEL :: Op+pattern OpSubgroupAvcMceSetMotionVectorCostFunctionINTEL = Op 5724++pattern OpSubgroupAvcMceGetDefaultIntraLumaModePenaltyINTEL :: Op+pattern OpSubgroupAvcMceGetDefaultIntraLumaModePenaltyINTEL = Op 5725++pattern OpSubgroupAvcMceGetDefaultNonDcLumaIntraPenaltyINTEL :: Op+pattern OpSubgroupAvcMceGetDefaultNonDcLumaIntraPenaltyINTEL = Op 5726++pattern OpSubgroupAvcMceGetDefaultIntraChromaModeBasePenaltyINTEL :: Op+pattern OpSubgroupAvcMceGetDefaultIntraChromaModeBasePenaltyINTEL = Op 5727++pattern OpSubgroupAvcMceSetAcOnlyHaarINTEL :: Op+pattern OpSubgroupAvcMceSetAcOnlyHaarINTEL = Op 5728++pattern OpSubgroupAvcMceSetSourceInterlacedFieldPolarityINTEL :: Op+pattern OpSubgroupAvcMceSetSourceInterlacedFieldPolarityINTEL = Op 5729++pattern OpSubgroupAvcMceSetSingleReferenceInterlacedFieldPolarityINTEL :: Op+pattern OpSubgroupAvcMceSetSingleReferenceInterlacedFieldPolarityINTEL = Op 5730++pattern OpSubgroupAvcMceSetDualReferenceInterlacedFieldPolaritiesINTEL :: Op+pattern OpSubgroupAvcMceSetDualReferenceInterlacedFieldPolaritiesINTEL = Op 5731++pattern OpSubgroupAvcMceConvertToImePayloadINTEL :: Op+pattern OpSubgroupAvcMceConvertToImePayloadINTEL = Op 5732++pattern OpSubgroupAvcMceConvertToImeResultINTEL :: Op+pattern OpSubgroupAvcMceConvertToImeResultINTEL = Op 5733++pattern OpSubgroupAvcMceConvertToRefPayloadINTEL :: Op+pattern OpSubgroupAvcMceConvertToRefPayloadINTEL = Op 5734++pattern OpSubgroupAvcMceConvertToRefResultINTEL :: Op+pattern OpSubgroupAvcMceConvertToRefResultINTEL = Op 5735++pattern OpSubgroupAvcMceConvertToSicPayloadINTEL :: Op+pattern OpSubgroupAvcMceConvertToSicPayloadINTEL = Op 5736++pattern OpSubgroupAvcMceConvertToSicResultINTEL :: Op+pattern OpSubgroupAvcMceConvertToSicResultINTEL = Op 5737++pattern OpSubgroupAvcMceGetMotionVectorsINTEL :: Op+pattern OpSubgroupAvcMceGetMotionVectorsINTEL = Op 5738++pattern OpSubgroupAvcMceGetInterDistortionsINTEL :: Op+pattern OpSubgroupAvcMceGetInterDistortionsINTEL = Op 5739++pattern OpSubgroupAvcMceGetBestInterDistortionsINTEL :: Op+pattern OpSubgroupAvcMceGetBestInterDistortionsINTEL = Op 5740++pattern OpSubgroupAvcMceGetInterMajorShapeINTEL :: Op+pattern OpSubgroupAvcMceGetInterMajorShapeINTEL = Op 5741++pattern OpSubgroupAvcMceGetInterMinorShapeINTEL :: Op+pattern OpSubgroupAvcMceGetInterMinorShapeINTEL = Op 5742++pattern OpSubgroupAvcMceGetInterDirectionsINTEL :: Op+pattern OpSubgroupAvcMceGetInterDirectionsINTEL = Op 5743++pattern OpSubgroupAvcMceGetInterMotionVectorCountINTEL :: Op+pattern OpSubgroupAvcMceGetInterMotionVectorCountINTEL = Op 5744++pattern OpSubgroupAvcMceGetInterReferenceIdsINTEL :: Op+pattern OpSubgroupAvcMceGetInterReferenceIdsINTEL = Op 5745++pattern OpSubgroupAvcMceGetInterReferenceInterlacedFieldPolaritiesINTEL :: Op+pattern OpSubgroupAvcMceGetInterReferenceInterlacedFieldPolaritiesINTEL = Op 5746++pattern OpSubgroupAvcImeInitializeINTEL :: Op+pattern OpSubgroupAvcImeInitializeINTEL = Op 5747++pattern OpSubgroupAvcImeSetSingleReferenceINTEL :: Op+pattern OpSubgroupAvcImeSetSingleReferenceINTEL = Op 5748++pattern OpSubgroupAvcImeSetDualReferenceINTEL :: Op+pattern OpSubgroupAvcImeSetDualReferenceINTEL = Op 5749++pattern OpSubgroupAvcImeRefWindowSizeINTEL :: Op+pattern OpSubgroupAvcImeRefWindowSizeINTEL = Op 5750++pattern OpSubgroupAvcImeAdjustRefOffsetINTEL :: Op+pattern OpSubgroupAvcImeAdjustRefOffsetINTEL = Op 5751++pattern OpSubgroupAvcImeConvertToMcePayloadINTEL :: Op+pattern OpSubgroupAvcImeConvertToMcePayloadINTEL = Op 5752++pattern OpSubgroupAvcImeSetMaxMotionVectorCountINTEL :: Op+pattern OpSubgroupAvcImeSetMaxMotionVectorCountINTEL = Op 5753++pattern OpSubgroupAvcImeSetUnidirectionalMixDisableINTEL :: Op+pattern OpSubgroupAvcImeSetUnidirectionalMixDisableINTEL = Op 5754++pattern OpSubgroupAvcImeSetEarlySearchTerminationThresholdINTEL :: Op+pattern OpSubgroupAvcImeSetEarlySearchTerminationThresholdINTEL = Op 5755++pattern OpSubgroupAvcImeSetWeightedSadINTEL :: Op+pattern OpSubgroupAvcImeSetWeightedSadINTEL = Op 5756++pattern OpSubgroupAvcImeEvaluateWithSingleReferenceINTEL :: Op+pattern OpSubgroupAvcImeEvaluateWithSingleReferenceINTEL = Op 5757++pattern OpSubgroupAvcImeEvaluateWithDualReferenceINTEL :: Op+pattern OpSubgroupAvcImeEvaluateWithDualReferenceINTEL = Op 5758++pattern OpSubgroupAvcImeEvaluateWithSingleReferenceStreaminINTEL :: Op+pattern OpSubgroupAvcImeEvaluateWithSingleReferenceStreaminINTEL = Op 5759++pattern OpSubgroupAvcImeEvaluateWithDualReferenceStreaminINTEL :: Op+pattern OpSubgroupAvcImeEvaluateWithDualReferenceStreaminINTEL = Op 5760++pattern OpSubgroupAvcImeEvaluateWithSingleReferenceStreamoutINTEL :: Op+pattern OpSubgroupAvcImeEvaluateWithSingleReferenceStreamoutINTEL = Op 5761++pattern OpSubgroupAvcImeEvaluateWithDualReferenceStreamoutINTEL :: Op+pattern OpSubgroupAvcImeEvaluateWithDualReferenceStreamoutINTEL = Op 5762++pattern OpSubgroupAvcImeEvaluateWithSingleReferenceStreaminoutINTEL :: Op+pattern OpSubgroupAvcImeEvaluateWithSingleReferenceStreaminoutINTEL = Op 5763++pattern OpSubgroupAvcImeEvaluateWithDualReferenceStreaminoutINTEL :: Op+pattern OpSubgroupAvcImeEvaluateWithDualReferenceStreaminoutINTEL = Op 5764++pattern OpSubgroupAvcImeConvertToMceResultINTEL :: Op+pattern OpSubgroupAvcImeConvertToMceResultINTEL = Op 5765++pattern OpSubgroupAvcImeGetSingleReferenceStreaminINTEL :: Op+pattern OpSubgroupAvcImeGetSingleReferenceStreaminINTEL = Op 5766++pattern OpSubgroupAvcImeGetDualReferenceStreaminINTEL :: Op+pattern OpSubgroupAvcImeGetDualReferenceStreaminINTEL = Op 5767++pattern OpSubgroupAvcImeStripSingleReferenceStreamoutINTEL :: Op+pattern OpSubgroupAvcImeStripSingleReferenceStreamoutINTEL = Op 5768++pattern OpSubgroupAvcImeStripDualReferenceStreamoutINTEL :: Op+pattern OpSubgroupAvcImeStripDualReferenceStreamoutINTEL = Op 5769++pattern OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeMotionVectorsINTEL :: Op+pattern OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeMotionVectorsINTEL = Op 5770++pattern OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeDistortionsINTEL :: Op+pattern OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeDistortionsINTEL = Op 5771++pattern OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeReferenceIdsINTEL :: Op+pattern OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeReferenceIdsINTEL = Op 5772++pattern OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeMotionVectorsINTEL :: Op+pattern OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeMotionVectorsINTEL = Op 5773++pattern OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeDistortionsINTEL :: Op+pattern OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeDistortionsINTEL = Op 5774++pattern OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeReferenceIdsINTEL :: Op+pattern OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeReferenceIdsINTEL = Op 5775++pattern OpSubgroupAvcImeGetBorderReachedINTEL :: Op+pattern OpSubgroupAvcImeGetBorderReachedINTEL = Op 5776++pattern OpSubgroupAvcImeGetTruncatedSearchIndicationINTEL :: Op+pattern OpSubgroupAvcImeGetTruncatedSearchIndicationINTEL = Op 5777++pattern OpSubgroupAvcImeGetUnidirectionalEarlySearchTerminationINTEL :: Op+pattern OpSubgroupAvcImeGetUnidirectionalEarlySearchTerminationINTEL = Op 5778++pattern OpSubgroupAvcImeGetWeightingPatternMinimumMotionVectorINTEL :: Op+pattern OpSubgroupAvcImeGetWeightingPatternMinimumMotionVectorINTEL = Op 5779++pattern OpSubgroupAvcImeGetWeightingPatternMinimumDistortionINTEL :: Op+pattern OpSubgroupAvcImeGetWeightingPatternMinimumDistortionINTEL = Op 5780++pattern OpSubgroupAvcFmeInitializeINTEL :: Op+pattern OpSubgroupAvcFmeInitializeINTEL = Op 5781++pattern OpSubgroupAvcBmeInitializeINTEL :: Op+pattern OpSubgroupAvcBmeInitializeINTEL = Op 5782++pattern OpSubgroupAvcRefConvertToMcePayloadINTEL :: Op+pattern OpSubgroupAvcRefConvertToMcePayloadINTEL = Op 5783++pattern OpSubgroupAvcRefSetBidirectionalMixDisableINTEL :: Op+pattern OpSubgroupAvcRefSetBidirectionalMixDisableINTEL = Op 5784++pattern OpSubgroupAvcRefSetBilinearFilterEnableINTEL :: Op+pattern OpSubgroupAvcRefSetBilinearFilterEnableINTEL = Op 5785++pattern OpSubgroupAvcRefEvaluateWithSingleReferenceINTEL :: Op+pattern OpSubgroupAvcRefEvaluateWithSingleReferenceINTEL = Op 5786++pattern OpSubgroupAvcRefEvaluateWithDualReferenceINTEL :: Op+pattern OpSubgroupAvcRefEvaluateWithDualReferenceINTEL = Op 5787++pattern OpSubgroupAvcRefEvaluateWithMultiReferenceINTEL :: Op+pattern OpSubgroupAvcRefEvaluateWithMultiReferenceINTEL = Op 5788++pattern OpSubgroupAvcRefEvaluateWithMultiReferenceInterlacedINTEL :: Op+pattern OpSubgroupAvcRefEvaluateWithMultiReferenceInterlacedINTEL = Op 5789++pattern OpSubgroupAvcRefConvertToMceResultINTEL :: Op+pattern OpSubgroupAvcRefConvertToMceResultINTEL = Op 5790++pattern OpSubgroupAvcSicInitializeINTEL :: Op+pattern OpSubgroupAvcSicInitializeINTEL = Op 5791++pattern OpSubgroupAvcSicConfigureSkcINTEL :: Op+pattern OpSubgroupAvcSicConfigureSkcINTEL = Op 5792++pattern OpSubgroupAvcSicConfigureIpeLumaINTEL :: Op+pattern OpSubgroupAvcSicConfigureIpeLumaINTEL = Op 5793++pattern OpSubgroupAvcSicConfigureIpeLumaChromaINTEL :: Op+pattern OpSubgroupAvcSicConfigureIpeLumaChromaINTEL = Op 5794++pattern OpSubgroupAvcSicGetMotionVectorMaskINTEL :: Op+pattern OpSubgroupAvcSicGetMotionVectorMaskINTEL = Op 5795++pattern OpSubgroupAvcSicConvertToMcePayloadINTEL :: Op+pattern OpSubgroupAvcSicConvertToMcePayloadINTEL = Op 5796++pattern OpSubgroupAvcSicSetIntraLumaShapePenaltyINTEL :: Op+pattern OpSubgroupAvcSicSetIntraLumaShapePenaltyINTEL = Op 5797++pattern OpSubgroupAvcSicSetIntraLumaModeCostFunctionINTEL :: Op+pattern OpSubgroupAvcSicSetIntraLumaModeCostFunctionINTEL = Op 5798++pattern OpSubgroupAvcSicSetIntraChromaModeCostFunctionINTEL :: Op+pattern OpSubgroupAvcSicSetIntraChromaModeCostFunctionINTEL = Op 5799++pattern OpSubgroupAvcSicSetBilinearFilterEnableINTEL :: Op+pattern OpSubgroupAvcSicSetBilinearFilterEnableINTEL = Op 5800++pattern OpSubgroupAvcSicSetSkcForwardTransformEnableINTEL :: Op+pattern OpSubgroupAvcSicSetSkcForwardTransformEnableINTEL = Op 5801++pattern OpSubgroupAvcSicSetBlockBasedRawSkipSadINTEL :: Op+pattern OpSubgroupAvcSicSetBlockBasedRawSkipSadINTEL = Op 5802++pattern OpSubgroupAvcSicEvaluateIpeINTEL :: Op+pattern OpSubgroupAvcSicEvaluateIpeINTEL = Op 5803++pattern OpSubgroupAvcSicEvaluateWithSingleReferenceINTEL :: Op+pattern OpSubgroupAvcSicEvaluateWithSingleReferenceINTEL = Op 5804++pattern OpSubgroupAvcSicEvaluateWithDualReferenceINTEL :: Op+pattern OpSubgroupAvcSicEvaluateWithDualReferenceINTEL = Op 5805++pattern OpSubgroupAvcSicEvaluateWithMultiReferenceINTEL :: Op+pattern OpSubgroupAvcSicEvaluateWithMultiReferenceINTEL = Op 5806++pattern OpSubgroupAvcSicEvaluateWithMultiReferenceInterlacedINTEL :: Op+pattern OpSubgroupAvcSicEvaluateWithMultiReferenceInterlacedINTEL = Op 5807++pattern OpSubgroupAvcSicConvertToMceResultINTEL :: Op+pattern OpSubgroupAvcSicConvertToMceResultINTEL = Op 5808++pattern OpSubgroupAvcSicGetIpeLumaShapeINTEL :: Op+pattern OpSubgroupAvcSicGetIpeLumaShapeINTEL = Op 5809++pattern OpSubgroupAvcSicGetBestIpeLumaDistortionINTEL :: Op+pattern OpSubgroupAvcSicGetBestIpeLumaDistortionINTEL = Op 5810++pattern OpSubgroupAvcSicGetBestIpeChromaDistortionINTEL :: Op+pattern OpSubgroupAvcSicGetBestIpeChromaDistortionINTEL = Op 5811++pattern OpSubgroupAvcSicGetPackedIpeLumaModesINTEL :: Op+pattern OpSubgroupAvcSicGetPackedIpeLumaModesINTEL = Op 5812++pattern OpSubgroupAvcSicGetIpeChromaModeINTEL :: Op+pattern OpSubgroupAvcSicGetIpeChromaModeINTEL = Op 5813++pattern OpSubgroupAvcSicGetPackedSkcLumaCountThresholdINTEL :: Op+pattern OpSubgroupAvcSicGetPackedSkcLumaCountThresholdINTEL = Op 5814++pattern OpSubgroupAvcSicGetPackedSkcLumaSumThresholdINTEL :: Op+pattern OpSubgroupAvcSicGetPackedSkcLumaSumThresholdINTEL = Op 5815++pattern OpSubgroupAvcSicGetInterRawSadsINTEL :: Op+pattern OpSubgroupAvcSicGetInterRawSadsINTEL = Op 5816++pattern OpVariableLengthArrayINTEL :: Op+pattern OpVariableLengthArrayINTEL = Op 5818++pattern OpSaveMemoryINTEL :: Op+pattern OpSaveMemoryINTEL = Op 5819++pattern OpRestoreMemoryINTEL :: Op+pattern OpRestoreMemoryINTEL = Op 5820++pattern OpArbitraryFloatSinCosPiINTEL :: Op+pattern OpArbitraryFloatSinCosPiINTEL = Op 5840++pattern OpArbitraryFloatCastINTEL :: Op+pattern OpArbitraryFloatCastINTEL = Op 5841++pattern OpArbitraryFloatCastFromIntINTEL :: Op+pattern OpArbitraryFloatCastFromIntINTEL = Op 5842++pattern OpArbitraryFloatCastToIntINTEL :: Op+pattern OpArbitraryFloatCastToIntINTEL = Op 5843++pattern OpArbitraryFloatAddINTEL :: Op+pattern OpArbitraryFloatAddINTEL = Op 5846++pattern OpArbitraryFloatSubINTEL :: Op+pattern OpArbitraryFloatSubINTEL = Op 5847++pattern OpArbitraryFloatMulINTEL :: Op+pattern OpArbitraryFloatMulINTEL = Op 5848++pattern OpArbitraryFloatDivINTEL :: Op+pattern OpArbitraryFloatDivINTEL = Op 5849++pattern OpArbitraryFloatGTINTEL :: Op+pattern OpArbitraryFloatGTINTEL = Op 5850++pattern OpArbitraryFloatGEINTEL :: Op+pattern OpArbitraryFloatGEINTEL = Op 5851++pattern OpArbitraryFloatLTINTEL :: Op+pattern OpArbitraryFloatLTINTEL = Op 5852++pattern OpArbitraryFloatLEINTEL :: Op+pattern OpArbitraryFloatLEINTEL = Op 5853++pattern OpArbitraryFloatEQINTEL :: Op+pattern OpArbitraryFloatEQINTEL = Op 5854++pattern OpArbitraryFloatRecipINTEL :: Op+pattern OpArbitraryFloatRecipINTEL = Op 5855++pattern OpArbitraryFloatRSqrtINTEL :: Op+pattern OpArbitraryFloatRSqrtINTEL = Op 5856++pattern OpArbitraryFloatCbrtINTEL :: Op+pattern OpArbitraryFloatCbrtINTEL = Op 5857++pattern OpArbitraryFloatHypotINTEL :: Op+pattern OpArbitraryFloatHypotINTEL = Op 5858++pattern OpArbitraryFloatSqrtINTEL :: Op+pattern OpArbitraryFloatSqrtINTEL = Op 5859++pattern OpArbitraryFloatLogINTEL :: Op+pattern OpArbitraryFloatLogINTEL = Op 5860++pattern OpArbitraryFloatLog2INTEL :: Op+pattern OpArbitraryFloatLog2INTEL = Op 5861++pattern OpArbitraryFloatLog10INTEL :: Op+pattern OpArbitraryFloatLog10INTEL = Op 5862++pattern OpArbitraryFloatLog1pINTEL :: Op+pattern OpArbitraryFloatLog1pINTEL = Op 5863++pattern OpArbitraryFloatExpINTEL :: Op+pattern OpArbitraryFloatExpINTEL = Op 5864++pattern OpArbitraryFloatExp2INTEL :: Op+pattern OpArbitraryFloatExp2INTEL = Op 5865++pattern OpArbitraryFloatExp10INTEL :: Op+pattern OpArbitraryFloatExp10INTEL = Op 5866++pattern OpArbitraryFloatExpm1INTEL :: Op+pattern OpArbitraryFloatExpm1INTEL = Op 5867++pattern OpArbitraryFloatSinINTEL :: Op+pattern OpArbitraryFloatSinINTEL = Op 5868++pattern OpArbitraryFloatCosINTEL :: Op+pattern OpArbitraryFloatCosINTEL = Op 5869++pattern OpArbitraryFloatSinCosINTEL :: Op+pattern OpArbitraryFloatSinCosINTEL = Op 5870++pattern OpArbitraryFloatSinPiINTEL :: Op+pattern OpArbitraryFloatSinPiINTEL = Op 5871++pattern OpArbitraryFloatCosPiINTEL :: Op+pattern OpArbitraryFloatCosPiINTEL = Op 5872++pattern OpArbitraryFloatASinINTEL :: Op+pattern OpArbitraryFloatASinINTEL = Op 5873++pattern OpArbitraryFloatASinPiINTEL :: Op+pattern OpArbitraryFloatASinPiINTEL = Op 5874++pattern OpArbitraryFloatACosINTEL :: Op+pattern OpArbitraryFloatACosINTEL = Op 5875++pattern OpArbitraryFloatACosPiINTEL :: Op+pattern OpArbitraryFloatACosPiINTEL = Op 5876++pattern OpArbitraryFloatATanINTEL :: Op+pattern OpArbitraryFloatATanINTEL = Op 5877++pattern OpArbitraryFloatATanPiINTEL :: Op+pattern OpArbitraryFloatATanPiINTEL = Op 5878++pattern OpArbitraryFloatATan2INTEL :: Op+pattern OpArbitraryFloatATan2INTEL = Op 5879++pattern OpArbitraryFloatPowINTEL :: Op+pattern OpArbitraryFloatPowINTEL = Op 5880++pattern OpArbitraryFloatPowRINTEL :: Op+pattern OpArbitraryFloatPowRINTEL = Op 5881++pattern OpArbitraryFloatPowNINTEL :: Op+pattern OpArbitraryFloatPowNINTEL = Op 5882++pattern OpLoopControlINTEL :: Op+pattern OpLoopControlINTEL = Op 5887++pattern OpAliasDomainDeclINTEL :: Op+pattern OpAliasDomainDeclINTEL = Op 5911++pattern OpAliasScopeDeclINTEL :: Op+pattern OpAliasScopeDeclINTEL = Op 5912++pattern OpAliasScopeListDeclINTEL :: Op+pattern OpAliasScopeListDeclINTEL = Op 5913++pattern OpFixedSqrtINTEL :: Op+pattern OpFixedSqrtINTEL = Op 5923++pattern OpFixedRecipINTEL :: Op+pattern OpFixedRecipINTEL = Op 5924++pattern OpFixedRsqrtINTEL :: Op+pattern OpFixedRsqrtINTEL = Op 5925++pattern OpFixedSinINTEL :: Op+pattern OpFixedSinINTEL = Op 5926++pattern OpFixedCosINTEL :: Op+pattern OpFixedCosINTEL = Op 5927++pattern OpFixedSinCosINTEL :: Op+pattern OpFixedSinCosINTEL = Op 5928++pattern OpFixedSinPiINTEL :: Op+pattern OpFixedSinPiINTEL = Op 5929++pattern OpFixedCosPiINTEL :: Op+pattern OpFixedCosPiINTEL = Op 5930++pattern OpFixedSinCosPiINTEL :: Op+pattern OpFixedSinCosPiINTEL = Op 5931++pattern OpFixedLogINTEL :: Op+pattern OpFixedLogINTEL = Op 5932++pattern OpFixedExpINTEL :: Op+pattern OpFixedExpINTEL = Op 5933++pattern OpPtrCastToCrossWorkgroupINTEL :: Op+pattern OpPtrCastToCrossWorkgroupINTEL = Op 5934++pattern OpCrossWorkgroupCastToPtrINTEL :: Op+pattern OpCrossWorkgroupCastToPtrINTEL = Op 5938++pattern OpReadPipeBlockingINTEL :: Op+pattern OpReadPipeBlockingINTEL = Op 5946++pattern OpWritePipeBlockingINTEL :: Op+pattern OpWritePipeBlockingINTEL = Op 5947++pattern OpFPGARegINTEL :: Op+pattern OpFPGARegINTEL = Op 5949++pattern OpRayQueryGetRayTMinKHR :: Op+pattern OpRayQueryGetRayTMinKHR = Op 6016++pattern OpRayQueryGetRayFlagsKHR :: Op+pattern OpRayQueryGetRayFlagsKHR = Op 6017++pattern OpRayQueryGetIntersectionTKHR :: Op+pattern OpRayQueryGetIntersectionTKHR = Op 6018++pattern OpRayQueryGetIntersectionInstanceCustomIndexKHR :: Op+pattern OpRayQueryGetIntersectionInstanceCustomIndexKHR = Op 6019++pattern OpRayQueryGetIntersectionInstanceIdKHR :: Op+pattern OpRayQueryGetIntersectionInstanceIdKHR = Op 6020++pattern OpRayQueryGetIntersectionInstanceShaderBindingTableRecordOffsetKHR :: Op+pattern OpRayQueryGetIntersectionInstanceShaderBindingTableRecordOffsetKHR = Op 6021++pattern OpRayQueryGetIntersectionGeometryIndexKHR :: Op+pattern OpRayQueryGetIntersectionGeometryIndexKHR = Op 6022++pattern OpRayQueryGetIntersectionPrimitiveIndexKHR :: Op+pattern OpRayQueryGetIntersectionPrimitiveIndexKHR = Op 6023++pattern OpRayQueryGetIntersectionBarycentricsKHR :: Op+pattern OpRayQueryGetIntersectionBarycentricsKHR = Op 6024++pattern OpRayQueryGetIntersectionFrontFaceKHR :: Op+pattern OpRayQueryGetIntersectionFrontFaceKHR = Op 6025++pattern OpRayQueryGetIntersectionCandidateAABBOpaqueKHR :: Op+pattern OpRayQueryGetIntersectionCandidateAABBOpaqueKHR = Op 6026++pattern OpRayQueryGetIntersectionObjectRayDirectionKHR :: Op+pattern OpRayQueryGetIntersectionObjectRayDirectionKHR = Op 6027++pattern OpRayQueryGetIntersectionObjectRayOriginKHR :: Op+pattern OpRayQueryGetIntersectionObjectRayOriginKHR = Op 6028++pattern OpRayQueryGetWorldRayDirectionKHR :: Op+pattern OpRayQueryGetWorldRayDirectionKHR = Op 6029++pattern OpRayQueryGetWorldRayOriginKHR :: Op+pattern OpRayQueryGetWorldRayOriginKHR = Op 6030++pattern OpRayQueryGetIntersectionObjectToWorldKHR :: Op+pattern OpRayQueryGetIntersectionObjectToWorldKHR = Op 6031++pattern OpRayQueryGetIntersectionWorldToObjectKHR :: Op+pattern OpRayQueryGetIntersectionWorldToObjectKHR = Op 6032++pattern OpAtomicFAddEXT :: Op+pattern OpAtomicFAddEXT = Op 6035++pattern OpTypeBufferSurfaceINTEL :: Op+pattern OpTypeBufferSurfaceINTEL = Op 6086++pattern OpTypeStructContinuedINTEL :: Op+pattern OpTypeStructContinuedINTEL = Op 6090++pattern OpConstantCompositeContinuedINTEL :: Op+pattern OpConstantCompositeContinuedINTEL = Op 6091++pattern OpSpecConstantCompositeContinuedINTEL :: Op+pattern OpSpecConstantCompositeContinuedINTEL = Op 6092++pattern OpCompositeConstructContinuedINTEL :: Op+pattern OpCompositeConstructContinuedINTEL = Op 6096++pattern OpConvertFToBF16INTEL :: Op+pattern OpConvertFToBF16INTEL = Op 6116++pattern OpConvertBF16ToFINTEL :: Op+pattern OpConvertBF16ToFINTEL = Op 6117++pattern OpControlBarrierArriveINTEL :: Op+pattern OpControlBarrierArriveINTEL = Op 6142++pattern OpControlBarrierWaitINTEL :: Op+pattern OpControlBarrierWaitINTEL = Op 6143++pattern OpGroupIMulKHR :: Op+pattern OpGroupIMulKHR = Op 6401++pattern OpGroupFMulKHR :: Op+pattern OpGroupFMulKHR = Op 6402++pattern OpGroupBitwiseAndKHR :: Op+pattern OpGroupBitwiseAndKHR = Op 6403++pattern OpGroupBitwiseOrKHR :: Op+pattern OpGroupBitwiseOrKHR = Op 6404++pattern OpGroupBitwiseXorKHR :: Op+pattern OpGroupBitwiseXorKHR = Op 6405++pattern OpGroupLogicalAndKHR :: Op+pattern OpGroupLogicalAndKHR = Op 6406++pattern OpGroupLogicalOrKHR :: Op+pattern OpGroupLogicalOrKHR = Op 6407++pattern OpGroupLogicalXorKHR :: Op+pattern OpGroupLogicalXorKHR = Op 6408++pattern OpMaskedGatherINTEL :: Op+pattern OpMaskedGatherINTEL = Op 6428++pattern OpMaskedScatterINTEL :: Op+pattern OpMaskedScatterINTEL = Op 6429
+ src/Data/SpirV/Enum/OverflowModes.hs view
@@ -0,0 +1,32 @@+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE TypeSynonymInstances #-}++module Data.SpirV.Enum.OverflowModes where++import Data.Int (Int32)+import Foreign.Storable (Storable)++newtype OverflowModes = OverflowModes Int32+  deriving newtype (Eq, Ord, Storable)++instance Show OverflowModes where+  showsPrec p (OverflowModes v) = case v of+    0 -> showString "WRAP"+    1 -> showString "SAT"+    2 -> showString "SAT_ZERO"+    3 -> showString "SAT_SYM"+    x -> showParen (p > 10) $ showString "OverflowModes " . showsPrec (p + 1) x++pattern WRAP :: OverflowModes+pattern WRAP = OverflowModes 0++pattern SAT :: OverflowModes+pattern SAT = OverflowModes 1++pattern SAT_ZERO :: OverflowModes+pattern SAT_ZERO = OverflowModes 2++pattern SAT_SYM :: OverflowModes+pattern SAT_SYM = OverflowModes 3
+ src/Data/SpirV/Enum/PackedVectorFormat.hs view
@@ -0,0 +1,23 @@+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE TypeSynonymInstances #-}++module Data.SpirV.Enum.PackedVectorFormat where++import Data.Int (Int32)+import Foreign.Storable (Storable)++newtype PackedVectorFormat = PackedVectorFormat Int32+  deriving newtype (Eq, Ord, Storable)++instance Show PackedVectorFormat where+  showsPrec p (PackedVectorFormat v) = case v of+    0 -> showString "PackedVectorFormat4x8Bit"+    x -> showParen (p > 10) $ showString "PackedVectorFormat " . showsPrec (p + 1) x++pattern PackedVectorFormat4x8Bit :: PackedVectorFormat+pattern PackedVectorFormat4x8Bit = PackedVectorFormat 0++pattern PackedVectorFormat4x8BitKHR :: PackedVectorFormat+pattern PackedVectorFormat4x8BitKHR = PackedVectorFormat 0
+ src/Data/SpirV/Enum/QuantizationModes.hs view
@@ -0,0 +1,48 @@+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE TypeSynonymInstances #-}++module Data.SpirV.Enum.QuantizationModes where++import Data.Int (Int32)+import Foreign.Storable (Storable)++newtype QuantizationModes = QuantizationModes Int32+  deriving newtype (Eq, Ord, Storable)++instance Show QuantizationModes where+  showsPrec p (QuantizationModes v) = case v of+    0 -> showString "TRN"+    1 -> showString "TRN_ZERO"+    2 -> showString "RND"+    3 -> showString "RND_ZERO"+    4 -> showString "RND_INF"+    5 -> showString "RND_MIN_INF"+    6 -> showString "RND_CONV"+    7 -> showString "RND_CONV_ODD"+    x -> showParen (p > 10) $ showString "QuantizationModes " . showsPrec (p + 1) x++pattern TRN :: QuantizationModes+pattern TRN = QuantizationModes 0++pattern TRN_ZERO :: QuantizationModes+pattern TRN_ZERO = QuantizationModes 1++pattern RND :: QuantizationModes+pattern RND = QuantizationModes 2++pattern RND_ZERO :: QuantizationModes+pattern RND_ZERO = QuantizationModes 3++pattern RND_INF :: QuantizationModes+pattern RND_INF = QuantizationModes 4++pattern RND_MIN_INF :: QuantizationModes+pattern RND_MIN_INF = QuantizationModes 5++pattern RND_CONV :: QuantizationModes+pattern RND_CONV = QuantizationModes 6++pattern RND_CONV_ODD :: QuantizationModes+pattern RND_CONV_ODD = QuantizationModes 7
+ src/Data/SpirV/Enum/RawAccessChainOperands.hs view
@@ -0,0 +1,27 @@+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE TypeSynonymInstances #-}++module Data.SpirV.Enum.RawAccessChainOperands where++import Data.Bits (Bits, FiniteBits, (.|.))+import Data.Word (Word32)+import Foreign.Storable (Storable)++type RawAccessChainOperands = RawAccessChainOperandsBits++newtype RawAccessChainOperandsBits = RawAccessChainOperandsBits Word32+  deriving newtype (Eq, Ord, Storable, Bits, FiniteBits)++instance Semigroup RawAccessChainOperands where+  (RawAccessChainOperandsBits a) <> (RawAccessChainOperandsBits b) = RawAccessChainOperandsBits (a .|. b)++instance Monoid RawAccessChainOperands where+  mempty = RawAccessChainOperandsBits 0++pattern RobustnessPerComponentNV :: RawAccessChainOperandsBits+pattern RobustnessPerComponentNV = RawAccessChainOperandsBits 0x00000001++pattern RobustnessPerElementNV :: RawAccessChainOperandsBits+pattern RobustnessPerElementNV = RawAccessChainOperandsBits 0x00000002
+ src/Data/SpirV/Enum/RayFlags.hs view
@@ -0,0 +1,54 @@+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE TypeSynonymInstances #-}++module Data.SpirV.Enum.RayFlags where++import Data.Bits (Bits, FiniteBits, (.|.))+import Data.Word (Word32)+import Foreign.Storable (Storable)++type RayFlags = RayFlagsBits++newtype RayFlagsBits = RayFlagsBits Word32+  deriving newtype (Eq, Ord, Storable, Bits, FiniteBits)++instance Semigroup RayFlags where+  (RayFlagsBits a) <> (RayFlagsBits b) = RayFlagsBits (a .|. b)++instance Monoid RayFlags where+  mempty = RayFlagsBits 0++pattern OpaqueKHR :: RayFlagsBits+pattern OpaqueKHR = RayFlagsBits 0x00000001++pattern NoOpaqueKHR :: RayFlagsBits+pattern NoOpaqueKHR = RayFlagsBits 0x00000002++pattern TerminateOnFirstHitKHR :: RayFlagsBits+pattern TerminateOnFirstHitKHR = RayFlagsBits 0x00000004++pattern SkipClosestHitShaderKHR :: RayFlagsBits+pattern SkipClosestHitShaderKHR = RayFlagsBits 0x00000008++pattern CullBackFacingTrianglesKHR :: RayFlagsBits+pattern CullBackFacingTrianglesKHR = RayFlagsBits 0x00000010++pattern CullFrontFacingTrianglesKHR :: RayFlagsBits+pattern CullFrontFacingTrianglesKHR = RayFlagsBits 0x00000020++pattern CullOpaqueKHR :: RayFlagsBits+pattern CullOpaqueKHR = RayFlagsBits 0x00000040++pattern CullNoOpaqueKHR :: RayFlagsBits+pattern CullNoOpaqueKHR = RayFlagsBits 0x00000080++pattern SkipTrianglesKHR :: RayFlagsBits+pattern SkipTrianglesKHR = RayFlagsBits 0x00000100++pattern SkipAABBsKHR :: RayFlagsBits+pattern SkipAABBsKHR = RayFlagsBits 0x00000200++pattern ForceOpacityMicromap2StateEXT :: RayFlagsBits+pattern ForceOpacityMicromap2StateEXT = RayFlagsBits 0x00000400
+ src/Data/SpirV/Enum/RayQueryCandidateIntersectionType.hs view
@@ -0,0 +1,24 @@+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE TypeSynonymInstances #-}++module Data.SpirV.Enum.RayQueryCandidateIntersectionType where++import Data.Int (Int32)+import Foreign.Storable (Storable)++newtype RayQueryCandidateIntersectionType = RayQueryCandidateIntersectionType Int32+  deriving newtype (Eq, Ord, Storable)++instance Show RayQueryCandidateIntersectionType where+  showsPrec p (RayQueryCandidateIntersectionType v) = case v of+    0 -> showString "RayQueryCandidateIntersectionTriangleKHR"+    1 -> showString "RayQueryCandidateIntersectionAABBKHR"+    x -> showParen (p > 10) $ showString "RayQueryCandidateIntersectionType " . showsPrec (p + 1) x++pattern RayQueryCandidateIntersectionTriangleKHR :: RayQueryCandidateIntersectionType+pattern RayQueryCandidateIntersectionTriangleKHR = RayQueryCandidateIntersectionType 0++pattern RayQueryCandidateIntersectionAABBKHR :: RayQueryCandidateIntersectionType+pattern RayQueryCandidateIntersectionAABBKHR = RayQueryCandidateIntersectionType 1
+ src/Data/SpirV/Enum/RayQueryCommittedIntersectionType.hs view
@@ -0,0 +1,28 @@+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE TypeSynonymInstances #-}++module Data.SpirV.Enum.RayQueryCommittedIntersectionType where++import Data.Int (Int32)+import Foreign.Storable (Storable)++newtype RayQueryCommittedIntersectionType = RayQueryCommittedIntersectionType Int32+  deriving newtype (Eq, Ord, Storable)++instance Show RayQueryCommittedIntersectionType where+  showsPrec p (RayQueryCommittedIntersectionType v) = case v of+    0 -> showString "RayQueryCommittedIntersectionNoneKHR"+    1 -> showString "RayQueryCommittedIntersectionTriangleKHR"+    2 -> showString "RayQueryCommittedIntersectionGeneratedKHR"+    x -> showParen (p > 10) $ showString "RayQueryCommittedIntersectionType " . showsPrec (p + 1) x++pattern RayQueryCommittedIntersectionNoneKHR :: RayQueryCommittedIntersectionType+pattern RayQueryCommittedIntersectionNoneKHR = RayQueryCommittedIntersectionType 0++pattern RayQueryCommittedIntersectionTriangleKHR :: RayQueryCommittedIntersectionType+pattern RayQueryCommittedIntersectionTriangleKHR = RayQueryCommittedIntersectionType 1++pattern RayQueryCommittedIntersectionGeneratedKHR :: RayQueryCommittedIntersectionType+pattern RayQueryCommittedIntersectionGeneratedKHR = RayQueryCommittedIntersectionType 2
+ src/Data/SpirV/Enum/RayQueryIntersection.hs view
@@ -0,0 +1,24 @@+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE TypeSynonymInstances #-}++module Data.SpirV.Enum.RayQueryIntersection where++import Data.Int (Int32)+import Foreign.Storable (Storable)++newtype RayQueryIntersection = RayQueryIntersection Int32+  deriving newtype (Eq, Ord, Storable)++instance Show RayQueryIntersection where+  showsPrec p (RayQueryIntersection v) = case v of+    0 -> showString "RayQueryCandidateIntersectionKHR"+    1 -> showString "RayQueryCommittedIntersectionKHR"+    x -> showParen (p > 10) $ showString "RayQueryIntersection " . showsPrec (p + 1) x++pattern RayQueryCandidateIntersectionKHR :: RayQueryIntersection+pattern RayQueryCandidateIntersectionKHR = RayQueryIntersection 0++pattern RayQueryCommittedIntersectionKHR :: RayQueryIntersection+pattern RayQueryCommittedIntersectionKHR = RayQueryIntersection 1
+ src/Data/SpirV/Enum/SamplerAddressingMode.hs view
@@ -0,0 +1,36 @@+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE TypeSynonymInstances #-}++module Data.SpirV.Enum.SamplerAddressingMode where++import Data.Int (Int32)+import Foreign.Storable (Storable)++newtype SamplerAddressingMode = SamplerAddressingMode Int32+  deriving newtype (Eq, Ord, Storable)++instance Show SamplerAddressingMode where+  showsPrec p (SamplerAddressingMode v) = case v of+    0 -> showString "None"+    1 -> showString "ClampToEdge"+    2 -> showString "Clamp"+    3 -> showString "Repeat"+    4 -> showString "RepeatMirrored"+    x -> showParen (p > 10) $ showString "SamplerAddressingMode " . showsPrec (p + 1) x++pattern None :: SamplerAddressingMode+pattern None = SamplerAddressingMode 0++pattern ClampToEdge :: SamplerAddressingMode+pattern ClampToEdge = SamplerAddressingMode 1++pattern Clamp :: SamplerAddressingMode+pattern Clamp = SamplerAddressingMode 2++pattern Repeat :: SamplerAddressingMode+pattern Repeat = SamplerAddressingMode 3++pattern RepeatMirrored :: SamplerAddressingMode+pattern RepeatMirrored = SamplerAddressingMode 4
+ src/Data/SpirV/Enum/SamplerFilterMode.hs view
@@ -0,0 +1,24 @@+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE TypeSynonymInstances #-}++module Data.SpirV.Enum.SamplerFilterMode where++import Data.Int (Int32)+import Foreign.Storable (Storable)++newtype SamplerFilterMode = SamplerFilterMode Int32+  deriving newtype (Eq, Ord, Storable)++instance Show SamplerFilterMode where+  showsPrec p (SamplerFilterMode v) = case v of+    0 -> showString "Nearest"+    1 -> showString "Linear"+    x -> showParen (p > 10) $ showString "SamplerFilterMode " . showsPrec (p + 1) x++pattern Nearest :: SamplerFilterMode+pattern Nearest = SamplerFilterMode 0++pattern Linear :: SamplerFilterMode+pattern Linear = SamplerFilterMode 1
+ src/Data/SpirV/Enum/Scope.hs view
@@ -0,0 +1,47 @@+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE TypeSynonymInstances #-}++module Data.SpirV.Enum.Scope where++import Data.Int (Int32)+import Foreign.Storable (Storable)++newtype Scope = Scope Int32+  deriving newtype (Eq, Ord, Storable)++instance Show Scope where+  showsPrec p (Scope v) = case v of+    0 -> showString "CrossDevice"+    1 -> showString "Device"+    2 -> showString "Workgroup"+    3 -> showString "Subgroup"+    4 -> showString "Invocation"+    5 -> showString "QueueFamily"+    6 -> showString "ShaderCallKHR"+    x -> showParen (p > 10) $ showString "Scope " . showsPrec (p + 1) x++pattern CrossDevice :: Scope+pattern CrossDevice = Scope 0++pattern Device :: Scope+pattern Device = Scope 1++pattern Workgroup :: Scope+pattern Workgroup = Scope 2++pattern Subgroup :: Scope+pattern Subgroup = Scope 3++pattern Invocation :: Scope+pattern Invocation = Scope 4++pattern QueueFamily :: Scope+pattern QueueFamily = Scope 5++pattern QueueFamilyKHR :: Scope+pattern QueueFamilyKHR = Scope 5++pattern ShaderCallKHR :: Scope+pattern ShaderCallKHR = Scope 6
+ src/Data/SpirV/Enum/SelectionControl.hs view
@@ -0,0 +1,27 @@+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE TypeSynonymInstances #-}++module Data.SpirV.Enum.SelectionControl where++import Data.Bits (Bits, FiniteBits, (.|.))+import Data.Word (Word32)+import Foreign.Storable (Storable)++type SelectionControl = SelectionControlBits++newtype SelectionControlBits = SelectionControlBits Word32+  deriving newtype (Eq, Ord, Storable, Bits, FiniteBits)++instance Semigroup SelectionControl where+  (SelectionControlBits a) <> (SelectionControlBits b) = SelectionControlBits (a .|. b)++instance Monoid SelectionControl where+  mempty = SelectionControlBits 0++pattern Flatten :: SelectionControlBits+pattern Flatten = SelectionControlBits 0x00000001++pattern DontFlatten :: SelectionControlBits+pattern DontFlatten = SelectionControlBits 0x00000002
+ src/Data/SpirV/Enum/SourceLanguage.hs view
@@ -0,0 +1,68 @@+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE TypeSynonymInstances #-}++module Data.SpirV.Enum.SourceLanguage where++import Data.Int (Int32)+import Foreign.Storable (Storable)++newtype SourceLanguage = SourceLanguage Int32+  deriving newtype (Eq, Ord, Storable)++instance Show SourceLanguage where+  showsPrec p (SourceLanguage v) = case v of+    0 -> showString "Unknown"+    1 -> showString "ESSL"+    2 -> showString "GLSL"+    3 -> showString "OpenCL_C"+    4 -> showString "OpenCL_CPP"+    5 -> showString "HLSL"+    6 -> showString "CPP_for_OpenCL"+    7 -> showString "SYCL"+    8 -> showString "HERO_C"+    9 -> showString "NZSL"+    10 -> showString "WGSL"+    11 -> showString "Slang"+    12 -> showString "Zig"+    x -> showParen (p > 10) $ showString "SourceLanguage " . showsPrec (p + 1) x++pattern Unknown :: SourceLanguage+pattern Unknown = SourceLanguage 0++pattern ESSL :: SourceLanguage+pattern ESSL = SourceLanguage 1++pattern GLSL :: SourceLanguage+pattern GLSL = SourceLanguage 2++pattern OpenCL_C :: SourceLanguage+pattern OpenCL_C = SourceLanguage 3++pattern OpenCL_CPP :: SourceLanguage+pattern OpenCL_CPP = SourceLanguage 4++pattern HLSL :: SourceLanguage+pattern HLSL = SourceLanguage 5++pattern CPP_for_OpenCL :: SourceLanguage+pattern CPP_for_OpenCL = SourceLanguage 6++pattern SYCL :: SourceLanguage+pattern SYCL = SourceLanguage 7++pattern HERO_C :: SourceLanguage+pattern HERO_C = SourceLanguage 8++pattern NZSL :: SourceLanguage+pattern NZSL = SourceLanguage 9++pattern WGSL :: SourceLanguage+pattern WGSL = SourceLanguage 10++pattern Slang :: SourceLanguage+pattern Slang = SourceLanguage 11++pattern Zig :: SourceLanguage+pattern Zig = SourceLanguage 12
+ src/Data/SpirV/Enum/StorageClass.hs view
@@ -0,0 +1,149 @@+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE TypeSynonymInstances #-}++module Data.SpirV.Enum.StorageClass where++import Data.Int (Int32)+import Foreign.Storable (Storable)++newtype StorageClass = StorageClass Int32+  deriving newtype (Eq, Ord, Storable)++instance Show StorageClass where+  showsPrec p (StorageClass v) = case v of+    0 -> showString "UniformConstant"+    1 -> showString "Input"+    2 -> showString "Uniform"+    3 -> showString "Output"+    4 -> showString "Workgroup"+    5 -> showString "CrossWorkgroup"+    6 -> showString "Private"+    7 -> showString "Function"+    8 -> showString "Generic"+    9 -> showString "PushConstant"+    10 -> showString "AtomicCounter"+    11 -> showString "Image"+    12 -> showString "StorageBuffer"+    4172 -> showString "TileImageEXT"+    5068 -> showString "NodePayloadAMDX"+    5076 -> showString "NodeOutputPayloadAMDX"+    5328 -> showString "CallableDataKHR"+    5329 -> showString "IncomingCallableDataKHR"+    5338 -> showString "RayPayloadKHR"+    5339 -> showString "HitAttributeKHR"+    5342 -> showString "IncomingRayPayloadKHR"+    5343 -> showString "ShaderRecordBufferKHR"+    5349 -> showString "PhysicalStorageBuffer"+    5385 -> showString "HitObjectAttributeNV"+    5402 -> showString "TaskPayloadWorkgroupEXT"+    5605 -> showString "CodeSectionINTEL"+    5936 -> showString "DeviceOnlyINTEL"+    5937 -> showString "HostOnlyINTEL"+    x -> showParen (p > 10) $ showString "StorageClass " . showsPrec (p + 1) x++pattern UniformConstant :: StorageClass+pattern UniformConstant = StorageClass 0++pattern Input :: StorageClass+pattern Input = StorageClass 1++pattern Uniform :: StorageClass+pattern Uniform = StorageClass 2++pattern Output :: StorageClass+pattern Output = StorageClass 3++pattern Workgroup :: StorageClass+pattern Workgroup = StorageClass 4++pattern CrossWorkgroup :: StorageClass+pattern CrossWorkgroup = StorageClass 5++pattern Private :: StorageClass+pattern Private = StorageClass 6++pattern Function :: StorageClass+pattern Function = StorageClass 7++pattern Generic :: StorageClass+pattern Generic = StorageClass 8++pattern PushConstant :: StorageClass+pattern PushConstant = StorageClass 9++pattern AtomicCounter :: StorageClass+pattern AtomicCounter = StorageClass 10++pattern Image :: StorageClass+pattern Image = StorageClass 11++pattern StorageBuffer :: StorageClass+pattern StorageBuffer = StorageClass 12++pattern TileImageEXT :: StorageClass+pattern TileImageEXT = StorageClass 4172++pattern NodePayloadAMDX :: StorageClass+pattern NodePayloadAMDX = StorageClass 5068++pattern NodeOutputPayloadAMDX :: StorageClass+pattern NodeOutputPayloadAMDX = StorageClass 5076++pattern CallableDataKHR :: StorageClass+pattern CallableDataKHR = StorageClass 5328++pattern CallableDataNV :: StorageClass+pattern CallableDataNV = StorageClass 5328++pattern IncomingCallableDataKHR :: StorageClass+pattern IncomingCallableDataKHR = StorageClass 5329++pattern IncomingCallableDataNV :: StorageClass+pattern IncomingCallableDataNV = StorageClass 5329++pattern RayPayloadKHR :: StorageClass+pattern RayPayloadKHR = StorageClass 5338++pattern RayPayloadNV :: StorageClass+pattern RayPayloadNV = StorageClass 5338++pattern HitAttributeKHR :: StorageClass+pattern HitAttributeKHR = StorageClass 5339++pattern HitAttributeNV :: StorageClass+pattern HitAttributeNV = StorageClass 5339++pattern IncomingRayPayloadKHR :: StorageClass+pattern IncomingRayPayloadKHR = StorageClass 5342++pattern IncomingRayPayloadNV :: StorageClass+pattern IncomingRayPayloadNV = StorageClass 5342++pattern ShaderRecordBufferKHR :: StorageClass+pattern ShaderRecordBufferKHR = StorageClass 5343++pattern ShaderRecordBufferNV :: StorageClass+pattern ShaderRecordBufferNV = StorageClass 5343++pattern PhysicalStorageBuffer :: StorageClass+pattern PhysicalStorageBuffer = StorageClass 5349++pattern PhysicalStorageBufferEXT :: StorageClass+pattern PhysicalStorageBufferEXT = StorageClass 5349++pattern HitObjectAttributeNV :: StorageClass+pattern HitObjectAttributeNV = StorageClass 5385++pattern TaskPayloadWorkgroupEXT :: StorageClass+pattern TaskPayloadWorkgroupEXT = StorageClass 5402++pattern CodeSectionINTEL :: StorageClass+pattern CodeSectionINTEL = StorageClass 5605++pattern DeviceOnlyINTEL :: StorageClass+pattern DeviceOnlyINTEL = StorageClass 5936++pattern HostOnlyINTEL :: StorageClass+pattern HostOnlyINTEL = StorageClass 5937
+ src/Data/SpirV/Enum/StoreCacheControl.hs view
@@ -0,0 +1,32 @@+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE TypeSynonymInstances #-}++module Data.SpirV.Enum.StoreCacheControl where++import Data.Int (Int32)+import Foreign.Storable (Storable)++newtype StoreCacheControl = StoreCacheControl Int32+  deriving newtype (Eq, Ord, Storable)++instance Show StoreCacheControl where+  showsPrec p (StoreCacheControl v) = case v of+    0 -> showString "UncachedINTEL"+    1 -> showString "WriteThroughINTEL"+    2 -> showString "WriteBackINTEL"+    3 -> showString "StreamingINTEL"+    x -> showParen (p > 10) $ showString "StoreCacheControl " . showsPrec (p + 1) x++pattern UncachedINTEL :: StoreCacheControl+pattern UncachedINTEL = StoreCacheControl 0++pattern WriteThroughINTEL :: StoreCacheControl+pattern WriteThroughINTEL = StoreCacheControl 1++pattern WriteBackINTEL :: StoreCacheControl+pattern WriteBackINTEL = StoreCacheControl 2++pattern StreamingINTEL :: StoreCacheControl+pattern StreamingINTEL = StoreCacheControl 3