{
 Copyright (c) 2014-2020 The Khronos Group Inc.

 Permission is hereby granted, free of charge, to any person obtaining a copy
 of this software and/or associated documentation files (the "Materials"),
 to deal in the Materials without restriction, including without limitation
 the rights to use, copy, modify, merge, publish, distribute, sublicense,
 and/or sell copies of the Materials, and to permit persons to whom the
 Materials are furnished to do so, subject to the following conditions:

 The above copyright notice and this permission notice shall be included in
 all copies or substantial portions of the Materials.

 MODIFICATIONS TO THIS FILE MAY MEAN IT NO LONGER ACCURATELY REFLECTS KHRONOS
 STANDARDS. THE UNMODIFIED, NORMATIVE VERSIONS OF KHRONOS SPECIFICATIONS AND
 HEADER INFORMATION ARE LOCATED AT https://www.khronos.org/registry/

 THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
 OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
 THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
 LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
 FROM,OUT OF OR IN CONNECTION WITH THE MATERIALS OR THE USE OR OTHER DEALINGS
 IN THE MATERIALS.

 This header is automatically generated by the same tool that creates
 the Binary Section of the SPIR-V specification.

 Enumeration tokens for SPIR-V, in various styles:
 C, C++, C++11, JSON, Lua, Python, C#, D

 - C will have tokens with a "Spv" prefix, e.g.: SpvSourceLanguageGLSL
 - C++ will have tokens in the "spv" name space, e.g.: spv::SourceLanguageGLSL
 - C++11 will use enum classes in the spv namespace, e.g.: spv::SourceLanguage::GLSL
 - Lua will use tables, e.g.: spv.SourceLanguage.GLSL
 - Python will use dictionaries, e.g.: spv['SourceLanguage']['GLSL']
 - C# will use enum classes in the Specification class located in the "Spv" namespace,
 e.g.: Spv.Specification.SourceLanguage.GLSL
 - D will have tokens under the "spv" module, e.g: spv.SourceLanguage.GLSL

 Some tokens act like mask values, which can be OR'd together,
 while others are mutually exclusive.  The mask-like ones have
 "Mask" in their name, and a parallel enum that has the shift
 amount (1 << x) for each corresponding enumerant.
}
unit spirv;

{$mode objfpc}{$H+}

{$WARNINGS OFF}

interface

Const
 MagicNumber = 119734787;
 OpCodeMask = 65535;
 Revision = 1;
 Version = 67072;
 WordCountShift = 16;

Type
 SourceLanguage=object //Value
  Const
   Unknown = 0;
   ESSL = 1;
   GLSL = 2;
   OpenCL_C = 3;
   OpenCL_CPP = 4;
   HLSL = 5;
   CPP_for_OpenCL = 6;
  function GetStr(w:Word):RawByteString; static;
 end;

 ExecutionModel=object //Value
  Const
   Vertex = 0;
   TessellationControl = 1;
   TessellationEvaluation = 2;
   Geometry = 3;
   Fragment = 4;
   GLCompute = 5;
   Kernel = 6;
   TaskNV = 5267;
   MeshNV = 5268;
   RayGenerationKHR = 5313;
   IntersectionKHR = 5314;
   AnyHitKHR = 5315;
   ClosestHitKHR = 5316;
   MissKHR = 5317;
   CallableKHR = 5318;
  function GetStr(w:Word):RawByteString; static;
 end;

 AddressingModel=object //Value
  Const
   Logical = 0;
   Physical32 = 1;
   Physical64 = 2;
   PhysicalStorageBuffer64 = 5348;
  function GetStr(w:Word):RawByteString; static;
 end;

 MemoryModel=object //Value
  Const
   Simple = 0;
   GLSL450 = 1;
   OpenCL = 2;
   Vulkan = 3;
  function GetStr(w:Word):RawByteString; static;
 end;

 ExecutionMode=object //Value
  Const
   Invocations = 0;
   SpacingEqual = 1;
   SpacingFractionalEven = 2;
   SpacingFractionalOdd = 3;
   VertexOrderCw = 4;
   VertexOrderCcw = 5;
   PixelCenterInteger = 6;
   OriginUpperLeft = 7;
   OriginLowerLeft = 8;
   EarlyFragmentTests = 9;
   PointMode = 10;
   Xfb = 11;
   DepthReplacing = 12;
   DepthGreater = 14;
   DepthLess = 15;
   DepthUnchanged = 16;
   LocalSize = 17;
   LocalSizeHint = 18;
   InputPoints = 19;
   InputLines = 20;
   InputLinesAdjacency = 21;
   Triangles = 22;
   InputTrianglesAdjacency = 23;
   Quads = 24;
   Isolines = 25;
   OutputVertices = 26;
   OutputPoints = 27;
   OutputLineStrip = 28;
   OutputTriangleStrip = 29;
   VecTypeHint = 30;
   ContractionOff = 31;
   Initializer = 33;
   Finalizer = 34;
   SubgroupSize = 35;
   SubgroupsPerWorkgroup = 36;
   SubgroupsPerWorkgroupId = 37;
   LocalSizeId = 38;
   LocalSizeHintId = 39;
   SubgroupUniformControlFlowKHR = 4421;
   PostDepthCoverage = 4446;
   DenormPreserve = 4459;
   DenormFlushToZero = 4460;
   SignedZeroInfNanPreserve = 4461;
   RoundingModeRTE = 4462;
   RoundingModeRTZ = 4463;
   StencilRefReplacingEXT = 5027;
   OutputLinesNV = 5269;
   OutputPrimitivesNV = 5270;
   DerivativeGroupQuadsNV = 5289;
   DerivativeGroupLinearNV = 5290;
   OutputTrianglesNV = 5298;
   PixelInterlockOrderedEXT = 5366;
   PixelInterlockUnorderedEXT = 5367;
   SampleInterlockOrderedEXT = 5368;
   SampleInterlockUnorderedEXT = 5369;
   ShadingRateInterlockOrderedEXT = 5370;
   ShadingRateInterlockUnorderedEXT = 5371;
   SharedLocalMemorySizeINTEL = 5618;
   RoundingModeRTPINTEL = 5620;
   RoundingModeRTNINTEL = 5621;
   FloatingPointModeALTINTEL = 5622;
   FloatingPointModeIEEEINTEL = 5623;
   MaxWorkgroupSizeINTEL = 5893;
   MaxWorkDimINTEL = 5894;
   NoGlobalOffsetINTEL = 5895;
   NumSIMDWorkitemsINTEL = 5896;
   SchedulerTargetFmaxMhzINTEL = 5903;
  function GetStr(w:Word):RawByteString; static;
 end;

 StorageClass=object //Value
  Const
   UniformConstant = 0;
   Input = 1;
   Uniform = 2;
   Output = 3;
   Workgroup = 4;
   CrossWorkgroup = 5;
   Private_ = 6;
   Function_ = 7;
   Generic_ = 8;
   PushConstant = 9;
   AtomicCounter = 10;
   Image = 11;
   StorageBuffer = 12;
   CallableDataKHR = 5328;
   IncomingCallableDataKHR = 5329;
   RayPayloadKHR = 5338;
   HitAttributeKHR = 5339;
   IncomingRayPayloadKHR = 5342;
   ShaderRecordBufferKHR = 5343;
   PhysicalStorageBuffer = 5349;
   CodeSectionINTEL = 5605;
   DeviceOnlyINTEL = 5936;
   HostOnlyINTEL = 5937;
  function GetStr(w:Word):RawByteString; static;
 end;

 Dim=object //Value
  Const
   Dim1D = 0;
   Dim2D = 1;
   Dim3D = 2;
   Cube = 3;
   Rect = 4;
   Buffer = 5;
   SubpassData = 6;
  function GetStr(w:Word):RawByteString; static;
 end;

 SamplerAddressingMode=object //Value
  Const
   None = 0;
   ClampToEdge = 1;
   Clamp = 2;
   Repeat_ = 3;
   RepeatMirrored = 4;
  function GetStr(w:Word):RawByteString; static;
 end;

 SamplerFilterMode=object //Value
  Const
   Nearest = 0;
   Linear = 1;
  function GetStr(w:Word):RawByteString; static;
 end;

 ImageFormat=object //Value
  Const
   Unknown = 0;
   Rgba32f = 1;
   Rgba16f = 2;
   R32f = 3;
   Rgba8 = 4;
   Rgba8Snorm = 5;
   Rg32f = 6;
   Rg16f = 7;
   R11fG11fB10f = 8;
   R16f = 9;
   Rgba16 = 10;
   Rgb10A2 = 11;
   Rg16 = 12;
   Rg8 = 13;
   R16 = 14;
   R8 = 15;
   Rgba16Snorm = 16;
   Rg16Snorm = 17;
   Rg8Snorm = 18;
   R16Snorm = 19;
   R8Snorm = 20;
   Rgba32i = 21;
   Rgba16i = 22;
   Rgba8i = 23;
   R32i = 24;
   Rg32i = 25;
   Rg16i = 26;
   Rg8i = 27;
   R16i = 28;
   R8i = 29;
   Rgba32ui = 30;
   Rgba16ui = 31;
   Rgba8ui = 32;
   R32ui = 33;
   Rgb10a2ui = 34;
   Rg32ui = 35;
   Rg16ui = 36;
   Rg8ui = 37;
   R16ui = 38;
   R8ui = 39;
   R64ui = 40;
   R64i = 41;
  function GetStr(w:Word):RawByteString; static;
 end;

 ImageChannelOrder=object //Value
  Const
   R = 0;
   A = 1;
   RG = 2;
   RA = 3;
   RGB = 4;
   RGBA = 5;
   BGRA = 6;
   ARGB = 7;
   Intensity = 8;
   Luminance = 9;
   Rx = 10;
   RGx = 11;
   RGBx = 12;
   Depth = 13;
   DepthStencil = 14;
   sRGB = 15;
   sRGBx = 16;
   sRGBA = 17;
   sBGRA = 18;
   ABGR = 19;
  function GetStr(w:Word):RawByteString; static;
 end;

 ImageChannelDataType=object //Value
  Const
   SnormInt8 = 0;
   SnormInt16 = 1;
   UnormInt8 = 2;
   UnormInt16 = 3;
   UnormShort565 = 4;
   UnormShort555 = 5;
   UnormInt101010 = 6;
   SignedInt8 = 7;
   SignedInt16 = 8;
   SignedInt32 = 9;
   UnsignedInt8 = 10;
   UnsignedInt16 = 11;
   UnsignedInt32 = 12;
   HalfFloat = 13;
   Float = 14;
   UnormInt24 = 15;
   UnormInt101010_2 = 16;
  function GetStr(w:Word):RawByteString; static;
 end;

 ImageOperands=object //Bit
  Const
   None = 0;
   Bias = 1;
   Lod = 2;
   Grad = 4;
   ConstOffset = 8;
   Offset = 16;
   ConstOffsets = 32;
   Sample = 64;
   MinLod = 128;
   MakeTexelAvailable = 256;
   MakeTexelVisible = 512;
   NonPrivateTexel = 1024;
   VolatileTexel = 2048;
   SignExtend = 4096;
   ZeroExtend = 8192;
   Nontemporal = 16384;
   Offsets = 65536;
 end;

 FPFastMathMode=object //Bit
  Const
   None = 0;
   NotNaN = 1;
   NotInf = 2;
   NSZ = 4;
   AllowRecip = 8;
   Fast = 16;
   AllowContractFastINTEL = 65536;
   AllowReassocINTEL = 131072;
 end;

 FPRoundingMode=object //Value
  Const
   RTE = 0;
   RTZ = 1;
   RTP = 2;
   RTN = 3;
  function GetStr(w:Word):RawByteString; static;
 end;

 LinkageType=object //Value
  Const
   Export_ = 0;
   Import = 1;
   LinkOnceODR = 2;
  function GetStr(w:Word):RawByteString; static;
 end;

 AccessQualifier=object //Value
  Const
   ReadOnly = 0;
   WriteOnly = 1;
   ReadWrite = 2;
  function GetStr(w:Word):RawByteString; static;
 end;

 FunctionParameterAttribute=object //Value
  Const
   Zext = 0;
   Sext = 1;
   ByVal = 2;
   Sret = 3;
   NoAlias = 4;
   NoCapture = 5;
   NoWrite = 6;
   NoReadWrite = 7;
  function GetStr(w:Word):RawByteString; static;
 end;

 Decoration=object //Value
  Const
   RelaxedPrecision = 0;
   SpecId = 1;
   Block = 2;
   BufferBlock = 3;
   RowMajor = 4;
   ColMajor = 5;
   ArrayStride = 6;
   MatrixStride = 7;
   GLSLShared = 8;
   GLSLPacked = 9;
   CPacked = 10;
   BuiltIn = 11;
   NoPerspective = 13;
   Flat = 14;
   Patch = 15;
   Centroid = 16;
   Sample = 17;
   Invariant = 18;
   Restrict = 19;
   Aliased = 20;
   Volatile = 21;
   Constant = 22;
   Coherent = 23;
   NonWritable = 24;
   NonReadable = 25;
   Uniform = 26;
   UniformId = 27;
   SaturatedConversion = 28;
   Stream = 29;
   Location = 30;
   Component = 31;
   Index = 32;
   Binding = 33;
   DescriptorSet = 34;
   Offset = 35;
   XfbBuffer = 36;
   XfbStride = 37;
   FuncParamAttr = 38;
   FPRoundingMode = 39;
   FPFastMathMode = 40;
   LinkageAttributes = 41;
   NoContraction = 42;
   InputAttachmentIndex = 43;
   Alignment = 44;
   MaxByteOffset = 45;
   AlignmentId = 46;
   MaxByteOffsetId = 47;
   NoSignedWrap = 4469;
   NoUnsignedWrap = 4470;
   ExplicitInterpAMD = 4999;
   OverrideCoverageNV = 5248;
   PassthroughNV = 5250;
   ViewportRelativeNV = 5252;
   SecondaryViewportRelativeNV = 5256;
   PerPrimitiveNV = 5271;
   PerViewNV = 5272;
   PerTaskNV = 5273;
   PerVertexKHR = 5285;
   NonUniform = 5300;
   RestrictPointer = 5355;
   AliasedPointer = 5356;
   BindlessSamplerNV = 5398;
   BindlessImageNV = 5399;
   BoundSamplerNV = 5400;
   BoundImageNV = 5401;
   SIMTCallINTEL = 5599;
   ReferencedIndirectlyINTEL = 5602;
   ClobberINTEL = 5607;
   SideEffectsINTEL = 5608;
   VectorComputeVariableINTEL = 5624;
   FuncParamIOKindINTEL = 5625;
   VectorComputeFunctionINTEL = 5626;
   StackCallINTEL = 5627;
   GlobalVariableOffsetINTEL = 5628;
   CounterBuffer = 5634;
   UserSemantic = 5635;
   UserTypeGOOGLE = 5636;
   FunctionRoundingModeINTEL = 5822;
   FunctionDenormModeINTEL = 5823;
   RegisterINTEL = 5825;
   MemoryINTEL = 5826;
   NumbanksINTEL = 5827;
   BankwidthINTEL = 5828;
   MaxPrivateCopiesINTEL = 5829;
   SinglepumpINTEL = 5830;
   DoublepumpINTEL = 5831;
   MaxReplicatesINTEL = 5832;
   SimpleDualPortINTEL = 5833;
   MergeINTEL = 5834;
   BankBitsINTEL = 5835;
   ForcePow2DepthINTEL = 5836;
   BurstCoalesceINTEL = 5899;
   CacheSizeINTEL = 5900;
   DontStaticallyCoalesceINTEL = 5901;
   PrefetchINTEL = 5902;
   StallEnableINTEL = 5905;
   FuseLoopsInFunctionINTEL = 5907;
   BufferLocationINTEL = 5921;
   IOPipeStorageINTEL = 5944;
   FunctionFloatingPointModeINTEL = 6080;
   SingleElementVectorINTEL = 6085;
   VectorComputeCallableFunctionINTEL = 6087;
   MediaBlockIOINTEL = 6140;
  function GetStr(w:Word):RawByteString; static;
 end;

 BuiltIn=object //Value
  Const
   Position = 0;
   PointSize = 1;
   ClipDistance = 3;
   CullDistance = 4;
   VertexId = 5;
   InstanceId = 6;
   PrimitiveId = 7;
   InvocationId = 8;
   Layer = 9;
   ViewportIndex = 10;
   TessLevelOuter = 11;
   TessLevelInner = 12;
   TessCoord = 13;
   PatchVertices = 14;
   FragCoord = 15;
   PointCoord = 16;
   FrontFacing = 17;
   SampleId = 18;
   SamplePosition = 19;
   SampleMask = 20;
   FragDepth = 22;
   HelperInvocation = 23;
   NumWorkgroups = 24;
   WorkgroupSize = 25;
   WorkgroupId = 26;
   LocalInvocationId = 27;
   GlobalInvocationId = 28;
   LocalInvocationIndex = 29;
   WorkDim = 30;
   GlobalSize = 31;
   EnqueuedWorkgroupSize = 32;
   GlobalOffset = 33;
   GlobalLinearId = 34;
   SubgroupSize = 36;
   SubgroupMaxSize = 37;
   NumSubgroups = 38;
   NumEnqueuedSubgroups = 39;
   SubgroupId = 40;
   SubgroupLocalInvocationId = 41;
   VertexIndex = 42;
   InstanceIndex = 43;
   SubgroupEqMask = 4416;
   SubgroupGeMask = 4417;
   SubgroupGtMask = 4418;
   SubgroupLeMask = 4419;
   SubgroupLtMask = 4420;
   BaseVertex = 4424;
   BaseInstance = 4425;
   DrawIndex = 4426;
   PrimitiveShadingRateKHR = 4432;
   DeviceIndex = 4438;
   ViewIndex = 4440;
   ShadingRateKHR = 4444;
   BaryCoordNoPerspAMD = 4992;
   BaryCoordNoPerspCentroidAMD = 4993;
   BaryCoordNoPerspSampleAMD = 4994;
   BaryCoordSmoothAMD = 4995;
   BaryCoordSmoothCentroidAMD = 4996;
   BaryCoordSmoothSampleAMD = 4997;
   BaryCoordPullModelAMD = 4998;
   FragStencilRefEXT = 5014;
   ViewportMaskNV = 5253;
   SecondaryPositionNV = 5257;
   SecondaryViewportMaskNV = 5258;
   PositionPerViewNV = 5261;
   ViewportMaskPerViewNV = 5262;
   FullyCoveredEXT = 5264;
   TaskCountNV = 5274;
   PrimitiveCountNV = 5275;
   PrimitiveIndicesNV = 5276;
   ClipDistancePerViewNV = 5277;
   CullDistancePerViewNV = 5278;
   LayerPerViewNV = 5279;
   MeshViewCountNV = 5280;
   MeshViewIndicesNV = 5281;
   BaryCoordKHR = 5286;
   BaryCoordNoPerspKHR = 5287;
   FragSizeEXT = 5292;
   InvocationsPerPixelNV = 5293;
   LaunchIdKHR = 5319;
   LaunchSizeKHR = 5320;
   WorldRayOriginKHR = 5321;
   WorldRayDirectionKHR = 5322;
   ObjectRayOriginKHR = 5323;
   ObjectRayDirectionKHR = 5324;
   RayTminKHR = 5325;
   RayTmaxKHR = 5326;
   InstanceCustomIndexKHR = 5327;
   ObjectToWorldKHR = 5330;
   WorldToObjectKHR = 5331;
   HitTNV = 5332;
   HitKindKHR = 5333;
   CurrentRayTimeNV = 5334;
   IncomingRayFlagsKHR = 5351;
   RayGeometryIndexKHR = 5352;
   WarpsPerSMNV = 5374;
   SMCountNV = 5375;
   WarpIDNV = 5376;
   SMIDNV = 5377;
  function GetStr(w:Word):RawByteString; static;
 end;

 SelectionControl=object //Bit
  Const
   None = 0;
   Flatten = 1;
   DontFlatten = 2;
 end;

 LoopControl=object //Bit
  Const
   None = 0;
   Unroll = 1;
   DontUnroll = 2;
   DependencyInfinite = 4;
   DependencyLength = 8;
   MinIterations = 16;
   MaxIterations = 32;
   IterationMultiple = 64;
   PeelCount = 128;
   PartialCount = 256;
   InitiationIntervalINTEL = 65536;
   MaxConcurrencyINTEL = 131072;
   DependencyArrayINTEL = 262144;
   PipelineEnableINTEL = 524288;
   LoopCoalesceINTEL = 1048576;
   MaxInterleavingINTEL = 2097152;
   SpeculatedIterationsINTEL = 4194304;
   NoFusionINTEL = 8388608;
 end;

 FunctionControl=object //Bit
  Const
   None = 0;
   Inline_ = 1;
   DontInline = 2;
   Pure = 4;
   Const_ = 8;
   OptNoneINTEL = 65536;
 end;

 MemorySemantics=object //Bit
  Const
   None = 0;
   Acquire = 2;
   Release = 4;
   AcquireRelease = 8;
   SequentiallyConsistent = 16;
   UniformMemory = 64;
   SubgroupMemory = 128;
   WorkgroupMemory = 256;
   CrossWorkgroupMemory = 512;
   AtomicCounterMemory = 1024;
   ImageMemory = 2048;
   OutputMemory = 4096;
   MakeAvailable = 8192;
   MakeVisible = 16384;
   Volatile = 32768;
 end;

 MemoryAccess=object //Bit
  Const
   None = 0;
   Volatile = 1;
   Aligned = 2;
   Nontemporal = 4;
   MakePointerAvailable = 8;
   MakePointerVisible = 16;
   NonPrivatePointer = 32;
 end;

 Scope=object //Value
  Const
   CrossDevice = 0;
   Device = 1;
   Workgroup = 2;
   Subgroup = 3;
   Invocation = 4;
   QueueFamily = 5;
   ShaderCallKHR = 6;
  function GetStr(w:Word):RawByteString; static;
 end;

 GroupOperation=object //Value
  Const
   Reduce = 0;
   InclusiveScan = 1;
   ExclusiveScan = 2;
   ClusteredReduce = 3;
   PartitionedReduceNV = 6;
   PartitionedInclusiveScanNV = 7;
   PartitionedExclusiveScanNV = 8;
  function GetStr(w:Word):RawByteString; static;
 end;

 KernelEnqueueFlags=object //Value
  Const
   NoWait = 0;
   WaitKernel = 1;
   WaitWorkGroup = 2;
  function GetStr(w:Word):RawByteString; static;
 end;

 KernelProfilingInfo=object //Bit
  Const
   None = 0;
   CmdExecTime = 1;
 end;

 Capability=object //Value
  Const
   Matrix = 0;
   Shader = 1;
   Geometry = 2;
   Tessellation = 3;
   Addresses = 4;
   Linkage = 5;
   Kernel = 6;
   Vector16 = 7;
   Float16Buffer = 8;
   Float16 = 9;
   Float64 = 10;
   Int64 = 11;
   Int64Atomics = 12;
   ImageBasic = 13;
   ImageReadWrite = 14;
   ImageMipmap = 15;
   Pipes = 17;
   Groups = 18;
   DeviceEnqueue = 19;
   LiteralSampler = 20;
   AtomicStorage = 21;
   Int16 = 22;
   TessellationPointSize = 23;
   GeometryPointSize = 24;
   ImageGatherExtended = 25;
   StorageImageMultisample = 27;
   UniformBufferArrayDynamicIndexing = 28;
   SampledImageArrayDynamicIndexing = 29;
   StorageBufferArrayDynamicIndexing = 30;
   StorageImageArrayDynamicIndexing = 31;
   ClipDistance = 32;
   CullDistance = 33;
   ImageCubeArray = 34;
   SampleRateShading = 35;
   ImageRect = 36;
   SampledRect = 37;
   GenericPointer = 38;
   Int8 = 39;
   InputAttachment = 40;
   SparseResidency = 41;
   MinLod = 42;
   Sampled1D = 43;
   Image1D = 44;
   SampledCubeArray = 45;
   SampledBuffer = 46;
   ImageBuffer = 47;
   ImageMSArray = 48;
   StorageImageExtendedFormats = 49;
   ImageQuery = 50;
   DerivativeControl = 51;
   InterpolationFunction = 52;
   TransformFeedback = 53;
   GeometryStreams = 54;
   StorageImageReadWithoutFormat = 55;
   StorageImageWriteWithoutFormat = 56;
   MultiViewport = 57;
   SubgroupDispatch = 58;
   NamedBarrier = 59;
   PipeStorage = 60;
   GroupNonUniform = 61;
   GroupNonUniformVote = 62;
   GroupNonUniformArithmetic = 63;
   GroupNonUniformBallot = 64;
   GroupNonUniformShuffle = 65;
   GroupNonUniformShuffleRelative = 66;
   GroupNonUniformClustered = 67;
   GroupNonUniformQuad = 68;
   ShaderLayer = 69;
   ShaderViewportIndex = 70;
   UniformDecoration = 71;
   FragmentShadingRateKHR = 4422;
   SubgroupBallotKHR = 4423;
   DrawParameters = 4427;
   WorkgroupMemoryExplicitLayoutKHR = 4428;
   WorkgroupMemoryExplicitLayout8BitAccessKHR = 4429;
   WorkgroupMemoryExplicitLayout16BitAccessKHR = 4430;
   SubgroupVoteKHR = 4431;
   StorageBuffer16BitAccess = 4433;
   StorageUniform16 = 4434;
   StoragePushConstant16 = 4435;
   StorageInputOutput16 = 4436;
   DeviceGroup = 4437;
   MultiView = 4439;
   VariablePointersStorageBuffer = 4441;
   VariablePointers = 4442;
   AtomicStorageOps = 4445;
   SampleMaskPostDepthCoverage = 4447;
   StorageBuffer8BitAccess = 4448;
   UniformAndStorageBuffer8BitAccess = 4449;
   StoragePushConstant8 = 4450;
   DenormPreserve = 4464;
   DenormFlushToZero = 4465;
   SignedZeroInfNanPreserve = 4466;
   RoundingModeRTE = 4467;
   RoundingModeRTZ = 4468;
   RayQueryProvisionalKHR = 4471;
   RayQueryKHR = 4472;
   RayTraversalPrimitiveCullingKHR = 4478;
   RayTracingKHR = 4479;
   Float16ImageAMD = 5008;
   ImageGatherBiasLodAMD = 5009;
   FragmentMaskAMD = 5010;
   StencilExportEXT = 5013;
   ImageReadWriteLodAMD = 5015;
   Int64ImageEXT = 5016;
   ShaderClockKHR = 5055;
   SampleMaskOverrideCoverageNV = 5249;
   GeometryShaderPassthroughNV = 5251;
   ShaderViewportIndexLayerNV = 5254;
   ShaderViewportMaskNV = 5255;
   ShaderStereoViewNV = 5259;
   PerViewAttributesNV = 5260;
   FragmentFullyCoveredEXT = 5265;
   MeshShadingNV = 5266;
   ImageFootprintNV = 5282;
   FragmentBarycentricKHR = 5284;
   ComputeDerivativeGroupQuadsNV = 5288;
   ShadingRateNV = 5291;
   GroupNonUniformPartitionedNV = 5297;
   ShaderNonUniform = 5301;
   RuntimeDescriptorArray = 5302;
   InputAttachmentArrayDynamicIndexing = 5303;
   UniformTexelBufferArrayDynamicIndexing = 5304;
   StorageTexelBufferArrayDynamicIndexing = 5305;
   UniformBufferArrayNonUniformIndexing = 5306;
   SampledImageArrayNonUniformIndexing = 5307;
   StorageBufferArrayNonUniformIndexing = 5308;
   StorageImageArrayNonUniformIndexing = 5309;
   InputAttachmentArrayNonUniformIndexing = 5310;
   UniformTexelBufferArrayNonUniformIndexing = 5311;
   StorageTexelBufferArrayNonUniformIndexing = 5312;
   RayTracingNV = 5340;
   RayTracingMotionBlurNV = 5341;
   VulkanMemoryModel = 5345;
   VulkanMemoryModelDeviceScope = 5346;
   PhysicalStorageBufferAddresses = 5347;
   ComputeDerivativeGroupLinearNV = 5350;
   RayTracingProvisionalKHR = 5353;
   CooperativeMatrixNV = 5357;
   FragmentShaderSampleInterlockEXT = 5363;
   FragmentShaderShadingRateInterlockEXT = 5372;
   ShaderSMBuiltinsNV = 5373;
   FragmentShaderPixelInterlockEXT = 5378;
   DemoteToHelperInvocation = 5379;
   BindlessTextureNV = 5390;
   SubgroupShuffleINTEL = 5568;
   SubgroupBufferBlockIOINTEL = 5569;
   SubgroupImageBlockIOINTEL = 5570;
   SubgroupImageMediaBlockIOINTEL = 5579;
   RoundToInfinityINTEL = 5582;
   FloatingPointModeINTEL = 5583;
   IntegerFunctions2INTEL = 5584;
   FunctionPointersINTEL = 5603;
   IndirectReferencesINTEL = 5604;
   AsmINTEL = 5606;
   AtomicFloat32MinMaxEXT = 5612;
   AtomicFloat64MinMaxEXT = 5613;
   AtomicFloat16MinMaxEXT = 5616;
   VectorComputeINTEL = 5617;
   VectorAnyINTEL = 5619;
   ExpectAssumeKHR = 5629;
   SubgroupAvcMotionEstimationINTEL = 5696;
   SubgroupAvcMotionEstimationIntraINTEL = 5697;
   SubgroupAvcMotionEstimationChromaINTEL = 5698;
   VariableLengthArrayINTEL = 5817;
   FunctionFloatControlINTEL = 5821;
   FPGAMemoryAttributesINTEL = 5824;
   FPFastMathModeINTEL = 5837;
   ArbitraryPrecisionIntegersINTEL = 5844;
   ArbitraryPrecisionFloatingPointINTEL = 5845;
   UnstructuredLoopControlsINTEL = 5886;
   FPGALoopControlsINTEL = 5888;
   KernelAttributesINTEL = 5892;
   FPGAKernelAttributesINTEL = 5897;
   FPGAMemoryAccessesINTEL = 5898;
   FPGAClusterAttributesINTEL = 5904;
   LoopFuseINTEL = 5906;
   FPGABufferLocationINTEL = 5920;
   ArbitraryPrecisionFixedPointINTEL = 5922;
   USMStorageClassesINTEL = 5935;
   IOPipesINTEL = 5943;
   BlockingPipesINTEL = 5945;
   FPGARegINTEL = 5948;
   DotProductInputAll = 6016;
   DotProductInput4x8Bit = 6017;
   DotProductInput4x8BitPacked = 6018;
   DotProduct = 6019;
   BitInstructions = 6025;
   AtomicFloat32AddEXT = 6033;
   AtomicFloat64AddEXT = 6034;
   LongConstantCompositeINTEL = 6089;
   OptNoneINTEL = 6094;
   AtomicFloat16AddEXT = 6095;
   DebugInfoModuleINTEL = 6114;
  function GetStr(w:Word):RawByteString; static;
 end;

 RayFlags=object //Bit
  Const
   None = 0;
   OpaqueKHR = 1;
   NoOpaqueKHR = 2;
   TerminateOnFirstHitKHR = 4;
   SkipClosestHitShaderKHR = 8;
   CullBackFacingTrianglesKHR = 16;
   CullFrontFacingTrianglesKHR = 32;
   CullOpaqueKHR = 64;
   CullNoOpaqueKHR = 128;
   SkipTrianglesKHR = 256;
   SkipAABBsKHR = 512;
 end;

 RayQueryIntersection=object //Value
  Const
   RayQueryCandidateIntersectionKHR = 0;
   RayQueryCommittedIntersectionKHR = 1;
  function GetStr(w:Word):RawByteString; static;
 end;

 RayQueryCommittedIntersectionType=object //Value
  Const
   RayQueryCommittedIntersectionNoneKHR = 0;
   RayQueryCommittedIntersectionTriangleKHR = 1;
   RayQueryCommittedIntersectionGeneratedKHR = 2;
  function GetStr(w:Word):RawByteString; static;
 end;

 RayQueryCandidateIntersectionType=object //Value
  Const
   RayQueryCandidateIntersectionTriangleKHR = 0;
   RayQueryCandidateIntersectionAABBKHR = 1;
  function GetStr(w:Word):RawByteString; static;
 end;

 FragmentShadingRate=object //Bit
  Const
   None = 0;
   Vertical2Pixels = 1;
   Vertical4Pixels = 2;
   Horizontal2Pixels = 4;
   Horizontal4Pixels = 8;
 end;

 FPDenormMode=object //Value
  Const
   Preserve = 0;
   FlushToZero = 1;
  function GetStr(w:Word):RawByteString; static;
 end;

 FPOperationMode=object //Value
  Const
   IEEE = 0;
   ALT = 1;
  function GetStr(w:Word):RawByteString; static;
 end;

 QuantizationModes=object //Value
  Const
   TRN = 0;
   TRN_ZERO = 1;
   RND = 2;
   RND_ZERO = 3;
   RND_INF = 4;
   RND_MIN_INF = 5;
   RND_CONV = 6;
   RND_CONV_ODD = 7;
  function GetStr(w:Word):RawByteString; static;
 end;

 OverflowModes=object //Value
  Const
   WRAP = 0;
   SAT = 1;
   SAT_ZERO = 2;
   SAT_SYM = 3;
  function GetStr(w:Word):RawByteString; static;
 end;

 PackedVectorFormat=object //Value
  Const
   PackedVectorFormat4x8Bit = 0;
  function GetStr(w:Word):RawByteString; static;
 end;

 Op=object //Value
  Const
   OpNop = 0;
   OpUndef = 1;
   OpSourceContinued = 2;
   OpSource = 3;
   OpSourceExtension = 4;
   OpName = 5;
   OpMemberName = 6;
   OpString = 7;
   OpLine = 8;
   OpExtension = 10;
   OpExtInstImport = 11;
   OpExtInst = 12;
   OpMemoryModel = 14;
   OpEntryPoint = 15;
   OpExecutionMode = 16;
   OpCapability = 17;
   OpTypeVoid = 19;
   OpTypeBool = 20;
   OpTypeInt = 21;
   OpTypeFloat = 22;
   OpTypeVector = 23;
   OpTypeMatrix = 24;
   OpTypeImage = 25;
   OpTypeSampler = 26;
   OpTypeSampledImage = 27;
   OpTypeArray = 28;
   OpTypeRuntimeArray = 29;
   OpTypeStruct = 30;
   OpTypeOpaque = 31;
   OpTypePointer = 32;
   OpTypeFunction = 33;
   OpTypeEvent = 34;
   OpTypeDeviceEvent = 35;
   OpTypeReserveId = 36;
   OpTypeQueue = 37;
   OpTypePipe = 38;
   OpTypeForwardPointer = 39;
   OpConstantTrue = 41;
   OpConstantFalse = 42;
   OpConstant = 43;
   OpConstantComposite = 44;
   OpConstantSampler = 45;
   OpConstantNull = 46;
   OpSpecConstantTrue = 48;
   OpSpecConstantFalse = 49;
   OpSpecConstant = 50;
   OpSpecConstantComposite = 51;
   OpSpecConstantOp = 52;
   OpFunction = 54;
   OpFunctionParameter = 55;
   OpFunctionEnd = 56;
   OpFunctionCall = 57;
   OpVariable = 59;
   OpImageTexelPointer = 60;
   OpLoad = 61;
   OpStore = 62;
   OpCopyMemory = 63;
   OpCopyMemorySized = 64;
   OpAccessChain = 65;
   OpInBoundsAccessChain = 66;
   OpPtrAccessChain = 67;
   OpArrayLength = 68;
   OpGenericPtrMemSemantics = 69;
   OpInBoundsPtrAccessChain = 70;
   OpDecorate = 71;
   OpMemberDecorate = 72;
   OpDecorationGroup = 73;
   OpGroupDecorate = 74;
   OpGroupMemberDecorate = 75;
   OpVectorExtractDynamic = 77;
   OpVectorInsertDynamic = 78;
   OpVectorShuffle = 79;
   OpCompositeConstruct = 80;
   OpCompositeExtract = 81;
   OpCompositeInsert = 82;
   OpCopyObject = 83;
   OpTranspose = 84;
   OpSampledImage = 86;
   OpImageSampleImplicitLod = 87;
   OpImageSampleExplicitLod = 88;
   OpImageSampleDrefImplicitLod = 89;
   OpImageSampleDrefExplicitLod = 90;
   OpImageSampleProjImplicitLod = 91;
   OpImageSampleProjExplicitLod = 92;
   OpImageSampleProjDrefImplicitLod = 93;
   OpImageSampleProjDrefExplicitLod = 94;
   OpImageFetch = 95;
   OpImageGather = 96;
   OpImageDrefGather = 97;
   OpImageRead = 98;
   OpImageWrite = 99;
   OpImage = 100;
   OpImageQueryFormat = 101;
   OpImageQueryOrder = 102;
   OpImageQuerySizeLod = 103;
   OpImageQuerySize = 104;
   OpImageQueryLod = 105;
   OpImageQueryLevels = 106;
   OpImageQuerySamples = 107;
   OpConvertFToU = 109;
   OpConvertFToS = 110;
   OpConvertSToF = 111;
   OpConvertUToF = 112;
   OpUConvert = 113;
   OpSConvert = 114;
   OpFConvert = 115;
   OpQuantizeToF16 = 116;
   OpConvertPtrToU = 117;
   OpSatConvertSToU = 118;
   OpSatConvertUToS = 119;
   OpConvertUToPtr = 120;
   OpPtrCastToGeneric = 121;
   OpGenericCastToPtr = 122;
   OpGenericCastToPtrExplicit = 123;
   OpBitcast = 124;
   OpSNegate = 126;
   OpFNegate = 127;
   OpIAdd = 128;
   OpFAdd = 129;
   OpISub = 130;
   OpFSub = 131;
   OpIMul = 132;
   OpFMul = 133;
   OpUDiv = 134;
   OpSDiv = 135;
   OpFDiv = 136;
   OpUMod = 137;
   OpSRem = 138;
   OpSMod = 139;
   OpFRem = 140;
   OpFMod = 141;
   OpVectorTimesScalar = 142;
   OpMatrixTimesScalar = 143;
   OpVectorTimesMatrix = 144;
   OpMatrixTimesVector = 145;
   OpMatrixTimesMatrix = 146;
   OpOuterProduct = 147;
   OpDot = 148;
   OpIAddCarry = 149;
   OpISubBorrow = 150;
   OpUMulExtended = 151;
   OpSMulExtended = 152;
   OpAny = 154;
   OpAll = 155;
   OpIsNan = 156;
   OpIsInf = 157;
   OpIsFinite = 158;
   OpIsNormal = 159;
   OpSignBitSet = 160;
   OpLessOrGreater = 161;
   OpOrdered = 162;
   OpUnordered = 163;
   OpLogicalEqual = 164;
   OpLogicalNotEqual = 165;
   OpLogicalOr = 166;
   OpLogicalAnd = 167;
   OpLogicalNot = 168;
   OpSelect = 169;
   OpIEqual = 170;
   OpINotEqual = 171;
   OpUGreaterThan = 172;
   OpSGreaterThan = 173;
   OpUGreaterThanEqual = 174;
   OpSGreaterThanEqual = 175;
   OpULessThan = 176;
   OpSLessThan = 177;
   OpULessThanEqual = 178;
   OpSLessThanEqual = 179;
   OpFOrdEqual = 180;
   OpFUnordEqual = 181;
   OpFOrdNotEqual = 182;
   OpFUnordNotEqual = 183;
   OpFOrdLessThan = 184;
   OpFUnordLessThan = 185;
   OpFOrdGreaterThan = 186;
   OpFUnordGreaterThan = 187;
   OpFOrdLessThanEqual = 188;
   OpFUnordLessThanEqual = 189;
   OpFOrdGreaterThanEqual = 190;
   OpFUnordGreaterThanEqual = 191;
   OpShiftRightLogical = 194;
   OpShiftRightArithmetic = 195;
   OpShiftLeftLogical = 196;
   OpBitwiseOr = 197;
   OpBitwiseXor = 198;
   OpBitwiseAnd = 199;
   OpNot = 200;
   OpBitFieldInsert = 201;
   OpBitFieldSExtract = 202;
   OpBitFieldUExtract = 203;
   OpBitReverse = 204;
   OpBitCount = 205;
   OpDPdx = 207;
   OpDPdy = 208;
   OpFwidth = 209;
   OpDPdxFine = 210;
   OpDPdyFine = 211;
   OpFwidthFine = 212;
   OpDPdxCoarse = 213;
   OpDPdyCoarse = 214;
   OpFwidthCoarse = 215;
   OpEmitVertex = 218;
   OpEndPrimitive = 219;
   OpEmitStreamVertex = 220;
   OpEndStreamPrimitive = 221;
   OpControlBarrier = 224;
   OpMemoryBarrier = 225;
   OpAtomicLoad = 227;
   OpAtomicStore = 228;
   OpAtomicExchange = 229;
   OpAtomicCompareExchange = 230;
   OpAtomicCompareExchangeWeak = 231;
   OpAtomicIIncrement = 232;
   OpAtomicIDecrement = 233;
   OpAtomicIAdd = 234;
   OpAtomicISub = 235;
   OpAtomicSMin = 236;
   OpAtomicUMin = 237;
   OpAtomicSMax = 238;
   OpAtomicUMax = 239;
   OpAtomicAnd = 240;
   OpAtomicOr = 241;
   OpAtomicXor = 242;
   OpPhi = 245;
   OpLoopMerge = 246;
   OpSelectionMerge = 247;
   OpLabel = 248;
   OpBranch = 249;
   OpBranchConditional = 250;
   OpSwitch = 251;
   OpKill = 252;
   OpReturn = 253;
   OpReturnValue = 254;
   OpUnreachable = 255;
   OpLifetimeStart = 256;
   OpLifetimeStop = 257;
   OpGroupAsyncCopy = 259;
   OpGroupWaitEvents = 260;
   OpGroupAll = 261;
   OpGroupAny = 262;
   OpGroupBroadcast = 263;
   OpGroupIAdd = 264;
   OpGroupFAdd = 265;
   OpGroupFMin = 266;
   OpGroupUMin = 267;
   OpGroupSMin = 268;
   OpGroupFMax = 269;
   OpGroupUMax = 270;
   OpGroupSMax = 271;
   OpReadPipe = 274;
   OpWritePipe = 275;
   OpReservedReadPipe = 276;
   OpReservedWritePipe = 277;
   OpReserveReadPipePackets = 278;
   OpReserveWritePipePackets = 279;
   OpCommitReadPipe = 280;
   OpCommitWritePipe = 281;
   OpIsValidReserveId = 282;
   OpGetNumPipePackets = 283;
   OpGetMaxPipePackets = 284;
   OpGroupReserveReadPipePackets = 285;
   OpGroupReserveWritePipePackets = 286;
   OpGroupCommitReadPipe = 287;
   OpGroupCommitWritePipe = 288;
   OpEnqueueMarker = 291;
   OpEnqueueKernel = 292;
   OpGetKernelNDrangeSubGroupCount = 293;
   OpGetKernelNDrangeMaxSubGroupSize = 294;
   OpGetKernelWorkGroupSize = 295;
   OpGetKernelPreferredWorkGroupSizeMultiple = 296;
   OpRetainEvent = 297;
   OpReleaseEvent = 298;
   OpCreateUserEvent = 299;
   OpIsValidEvent = 300;
   OpSetUserEventStatus = 301;
   OpCaptureEventProfilingInfo = 302;
   OpGetDefaultQueue = 303;
   OpBuildNDRange = 304;
   OpImageSparseSampleImplicitLod = 305;
   OpImageSparseSampleExplicitLod = 306;
   OpImageSparseSampleDrefImplicitLod = 307;
   OpImageSparseSampleDrefExplicitLod = 308;
   OpImageSparseSampleProjImplicitLod = 309;
   OpImageSparseSampleProjExplicitLod = 310;
   OpImageSparseSampleProjDrefImplicitLod = 311;
   OpImageSparseSampleProjDrefExplicitLod = 312;
   OpImageSparseFetch = 313;
   OpImageSparseGather = 314;
   OpImageSparseDrefGather = 315;
   OpImageSparseTexelsResident = 316;
   OpNoLine = 317;
   OpAtomicFlagTestAndSet = 318;
   OpAtomicFlagClear = 319;
   OpImageSparseRead = 320;
   OpSizeOf = 321;
   OpTypePipeStorage = 322;
   OpConstantPipeStorage = 323;
   OpCreatePipeFromPipeStorage = 324;
   OpGetKernelLocalSizeForSubgroupCount = 325;
   OpGetKernelMaxNumSubgroups = 326;
   OpTypeNamedBarrier = 327;
   OpNamedBarrierInitialize = 328;
   OpMemoryNamedBarrier = 329;
   OpModuleProcessed = 330;
   OpExecutionModeId = 331;
   OpDecorateId = 332;
   OpGroupNonUniformElect = 333;
   OpGroupNonUniformAll = 334;
   OpGroupNonUniformAny = 335;
   OpGroupNonUniformAllEqual = 336;
   OpGroupNonUniformBroadcast = 337;
   OpGroupNonUniformBroadcastFirst = 338;
   OpGroupNonUniformBallot = 339;
   OpGroupNonUniformInverseBallot = 340;
   OpGroupNonUniformBallotBitExtract = 341;
   OpGroupNonUniformBallotBitCount = 342;
   OpGroupNonUniformBallotFindLSB = 343;
   OpGroupNonUniformBallotFindMSB = 344;
   OpGroupNonUniformShuffle = 345;
   OpGroupNonUniformShuffleXor = 346;
   OpGroupNonUniformShuffleUp = 347;
   OpGroupNonUniformShuffleDown = 348;
   OpGroupNonUniformIAdd = 349;
   OpGroupNonUniformFAdd = 350;
   OpGroupNonUniformIMul = 351;
   OpGroupNonUniformFMul = 352;
   OpGroupNonUniformSMin = 353;
   OpGroupNonUniformUMin = 354;
   OpGroupNonUniformFMin = 355;
   OpGroupNonUniformSMax = 356;
   OpGroupNonUniformUMax = 357;
   OpGroupNonUniformFMax = 358;
   OpGroupNonUniformBitwiseAnd = 359;
   OpGroupNonUniformBitwiseOr = 360;
   OpGroupNonUniformBitwiseXor = 361;
   OpGroupNonUniformLogicalAnd = 362;
   OpGroupNonUniformLogicalOr = 363;
   OpGroupNonUniformLogicalXor = 364;
   OpGroupNonUniformQuadBroadcast = 365;
   OpGroupNonUniformQuadSwap = 366;
   OpCopyLogical = 400;
   OpPtrEqual = 401;
   OpPtrNotEqual = 402;
   OpPtrDiff = 403;
   OpTerminateInvocation = 4416;
   OpSubgroupBallotKHR = 4421;
   OpSubgroupFirstInvocationKHR = 4422;
   OpSubgroupAllKHR = 4428;
   OpSubgroupAnyKHR = 4429;
   OpSubgroupAllEqualKHR = 4430;
   OpSubgroupReadInvocationKHR = 4432;
   OpTraceRayKHR = 4445;
   OpExecuteCallableKHR = 4446;
   OpConvertUToAccelerationStructureKHR = 4447;
   OpIgnoreIntersectionKHR = 4448;
   OpTerminateRayKHR = 4449;
   OpSDot = 4450;
   OpUDot = 4451;
   OpSUDot = 4452;
   OpSDotAccSat = 4453;
   OpUDotAccSat = 4454;
   OpSUDotAccSat = 4455;
   OpTypeRayQueryKHR = 4472;
   OpRayQueryInitializeKHR = 4473;
   OpRayQueryTerminateKHR = 4474;
   OpRayQueryGenerateIntersectionKHR = 4475;
   OpRayQueryConfirmIntersectionKHR = 4476;
   OpRayQueryProceedKHR = 4477;
   OpRayQueryGetIntersectionTypeKHR = 4479;
   OpGroupIAddNonUniformAMD = 5000;
   OpGroupFAddNonUniformAMD = 5001;
   OpGroupFMinNonUniformAMD = 5002;
   OpGroupUMinNonUniformAMD = 5003;
   OpGroupSMinNonUniformAMD = 5004;
   OpGroupFMaxNonUniformAMD = 5005;
   OpGroupUMaxNonUniformAMD = 5006;
   OpGroupSMaxNonUniformAMD = 5007;
   OpFragmentMaskFetchAMD = 5011;
   OpFragmentFetchAMD = 5012;
   OpReadClockKHR = 5056;
   OpImageSampleFootprintNV = 5283;
   OpGroupNonUniformPartitionNV = 5296;
   OpWritePackedPrimitiveIndices4x8NV = 5299;
   OpReportIntersectionKHR = 5334;
   OpIgnoreIntersectionNV = 5335;
   OpTerminateRayNV = 5336;
   OpTraceNV = 5337;
   OpTraceMotionNV = 5338;
   OpTraceRayMotionNV = 5339;
   OpTypeAccelerationStructureKHR = 5341;
   OpExecuteCallableNV = 5344;
   OpTypeCooperativeMatrixNV = 5358;
   OpCooperativeMatrixLoadNV = 5359;
   OpCooperativeMatrixStoreNV = 5360;
   OpCooperativeMatrixMulAddNV = 5361;
   OpCooperativeMatrixLengthNV = 5362;
   OpBeginInvocationInterlockEXT = 5364;
   OpEndInvocationInterlockEXT = 5365;
   OpDemoteToHelperInvocation = 5380;
   OpIsHelperInvocationEXT = 5381;
   OpConvertUToImageNV = 5391;
   OpConvertUToSamplerNV = 5392;
   OpConvertImageToUNV = 5393;
   OpConvertSamplerToUNV = 5394;
   OpConvertUToSampledImageNV = 5395;
   OpConvertSampledImageToUNV = 5396;
   OpSamplerImageAddressingModeNV = 5397;
   OpSubgroupShuffleINTEL = 5571;
   OpSubgroupShuffleDownINTEL = 5572;
   OpSubgroupShuffleUpINTEL = 5573;
   OpSubgroupShuffleXorINTEL = 5574;
   OpSubgroupBlockReadINTEL = 5575;
   OpSubgroupBlockWriteINTEL = 5576;
   OpSubgroupImageBlockReadINTEL = 5577;
   OpSubgroupImageBlockWriteINTEL = 5578;
   OpSubgroupImageMediaBlockReadINTEL = 5580;
   OpSubgroupImageMediaBlockWriteINTEL = 5581;
   OpUCountLeadingZerosINTEL = 5585;
   OpUCountTrailingZerosINTEL = 5586;
   OpAbsISubINTEL = 5587;
   OpAbsUSubINTEL = 5588;
   OpIAddSatINTEL = 5589;
   OpUAddSatINTEL = 5590;
   OpIAverageINTEL = 5591;
   OpUAverageINTEL = 5592;
   OpIAverageRoundedINTEL = 5593;
   OpUAverageRoundedINTEL = 5594;
   OpISubSatINTEL = 5595;
   OpUSubSatINTEL = 5596;
   OpIMul32x16INTEL = 5597;
   OpUMul32x16INTEL = 5598;
   OpConstantFunctionPointerINTEL = 5600;
   OpFunctionPointerCallINTEL = 5601;
   OpAsmTargetINTEL = 5609;
   OpAsmINTEL = 5610;
   OpAsmCallINTEL = 5611;
   OpAtomicFMinEXT = 5614;
   OpAtomicFMaxEXT = 5615;
   OpAssumeTrueKHR = 5630;
   OpExpectKHR = 5631;
   OpDecorateString = 5632;
   OpMemberDecorateString = 5633;
   OpVmeImageINTEL = 5699;
   OpTypeVmeImageINTEL = 5700;
   OpTypeAvcImePayloadINTEL = 5701;
   OpTypeAvcRefPayloadINTEL = 5702;
   OpTypeAvcSicPayloadINTEL = 5703;
   OpTypeAvcMcePayloadINTEL = 5704;
   OpTypeAvcMceResultINTEL = 5705;
   OpTypeAvcImeResultINTEL = 5706;
   OpTypeAvcImeResultSingleReferenceStreamoutINTEL = 5707;
   OpTypeAvcImeResultDualReferenceStreamoutINTEL = 5708;
   OpTypeAvcImeSingleReferenceStreaminINTEL = 5709;
   OpTypeAvcImeDualReferenceStreaminINTEL = 5710;
   OpTypeAvcRefResultINTEL = 5711;
   OpTypeAvcSicResultINTEL = 5712;
   OpSubgroupAvcMceGetDefaultInterBaseMultiReferencePenaltyINTEL = 5713;
   OpSubgroupAvcMceSetInterBaseMultiReferencePenaltyINTEL = 5714;
   OpSubgroupAvcMceGetDefaultInterShapePenaltyINTEL = 5715;
   OpSubgroupAvcMceSetInterShapePenaltyINTEL = 5716;
   OpSubgroupAvcMceGetDefaultInterDirectionPenaltyINTEL = 5717;
   OpSubgroupAvcMceSetInterDirectionPenaltyINTEL = 5718;
   OpSubgroupAvcMceGetDefaultIntraLumaShapePenaltyINTEL = 5719;
   OpSubgroupAvcMceGetDefaultInterMotionVectorCostTableINTEL = 5720;
   OpSubgroupAvcMceGetDefaultHighPenaltyCostTableINTEL = 5721;
   OpSubgroupAvcMceGetDefaultMediumPenaltyCostTableINTEL = 5722;
   OpSubgroupAvcMceGetDefaultLowPenaltyCostTableINTEL = 5723;
   OpSubgroupAvcMceSetMotionVectorCostFunctionINTEL = 5724;
   OpSubgroupAvcMceGetDefaultIntraLumaModePenaltyINTEL = 5725;
   OpSubgroupAvcMceGetDefaultNonDcLumaIntraPenaltyINTEL = 5726;
   OpSubgroupAvcMceGetDefaultIntraChromaModeBasePenaltyINTEL = 5727;
   OpSubgroupAvcMceSetAcOnlyHaarINTEL = 5728;
   OpSubgroupAvcMceSetSourceInterlacedFieldPolarityINTEL = 5729;
   OpSubgroupAvcMceSetSingleReferenceInterlacedFieldPolarityINTEL = 5730;
   OpSubgroupAvcMceSetDualReferenceInterlacedFieldPolaritiesINTEL = 5731;
   OpSubgroupAvcMceConvertToImePayloadINTEL = 5732;
   OpSubgroupAvcMceConvertToImeResultINTEL = 5733;
   OpSubgroupAvcMceConvertToRefPayloadINTEL = 5734;
   OpSubgroupAvcMceConvertToRefResultINTEL = 5735;
   OpSubgroupAvcMceConvertToSicPayloadINTEL = 5736;
   OpSubgroupAvcMceConvertToSicResultINTEL = 5737;
   OpSubgroupAvcMceGetMotionVectorsINTEL = 5738;
   OpSubgroupAvcMceGetInterDistortionsINTEL = 5739;
   OpSubgroupAvcMceGetBestInterDistortionsINTEL = 5740;
   OpSubgroupAvcMceGetInterMajorShapeINTEL = 5741;
   OpSubgroupAvcMceGetInterMinorShapeINTEL = 5742;
   OpSubgroupAvcMceGetInterDirectionsINTEL = 5743;
   OpSubgroupAvcMceGetInterMotionVectorCountINTEL = 5744;
   OpSubgroupAvcMceGetInterReferenceIdsINTEL = 5745;
   OpSubgroupAvcMceGetInterReferenceInterlacedFieldPolaritiesINTEL = 5746;
   OpSubgroupAvcImeInitializeINTEL = 5747;
   OpSubgroupAvcImeSetSingleReferenceINTEL = 5748;
   OpSubgroupAvcImeSetDualReferenceINTEL = 5749;
   OpSubgroupAvcImeRefWindowSizeINTEL = 5750;
   OpSubgroupAvcImeAdjustRefOffsetINTEL = 5751;
   OpSubgroupAvcImeConvertToMcePayloadINTEL = 5752;
   OpSubgroupAvcImeSetMaxMotionVectorCountINTEL = 5753;
   OpSubgroupAvcImeSetUnidirectionalMixDisableINTEL = 5754;
   OpSubgroupAvcImeSetEarlySearchTerminationThresholdINTEL = 5755;
   OpSubgroupAvcImeSetWeightedSadINTEL = 5756;
   OpSubgroupAvcImeEvaluateWithSingleReferenceINTEL = 5757;
   OpSubgroupAvcImeEvaluateWithDualReferenceINTEL = 5758;
   OpSubgroupAvcImeEvaluateWithSingleReferenceStreaminINTEL = 5759;
   OpSubgroupAvcImeEvaluateWithDualReferenceStreaminINTEL = 5760;
   OpSubgroupAvcImeEvaluateWithSingleReferenceStreamoutINTEL = 5761;
   OpSubgroupAvcImeEvaluateWithDualReferenceStreamoutINTEL = 5762;
   OpSubgroupAvcImeEvaluateWithSingleReferenceStreaminoutINTEL = 5763;
   OpSubgroupAvcImeEvaluateWithDualReferenceStreaminoutINTEL = 5764;
   OpSubgroupAvcImeConvertToMceResultINTEL = 5765;
   OpSubgroupAvcImeGetSingleReferenceStreaminINTEL = 5766;
   OpSubgroupAvcImeGetDualReferenceStreaminINTEL = 5767;
   OpSubgroupAvcImeStripSingleReferenceStreamoutINTEL = 5768;
   OpSubgroupAvcImeStripDualReferenceStreamoutINTEL = 5769;
   OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeMotionVectorsINTEL = 5770;
   OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeDistortionsINTEL = 5771;
   OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeReferenceIdsINTEL = 5772;
   OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeMotionVectorsINTEL = 5773;
   OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeDistortionsINTEL = 5774;
   OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeReferenceIdsINTEL = 5775;
   OpSubgroupAvcImeGetBorderReachedINTEL = 5776;
   OpSubgroupAvcImeGetTruncatedSearchIndicationINTEL = 5777;
   OpSubgroupAvcImeGetUnidirectionalEarlySearchTerminationINTEL = 5778;
   OpSubgroupAvcImeGetWeightingPatternMinimumMotionVectorINTEL = 5779;
   OpSubgroupAvcImeGetWeightingPatternMinimumDistortionINTEL = 5780;
   OpSubgroupAvcFmeInitializeINTEL = 5781;
   OpSubgroupAvcBmeInitializeINTEL = 5782;
   OpSubgroupAvcRefConvertToMcePayloadINTEL = 5783;
   OpSubgroupAvcRefSetBidirectionalMixDisableINTEL = 5784;
   OpSubgroupAvcRefSetBilinearFilterEnableINTEL = 5785;
   OpSubgroupAvcRefEvaluateWithSingleReferenceINTEL = 5786;
   OpSubgroupAvcRefEvaluateWithDualReferenceINTEL = 5787;
   OpSubgroupAvcRefEvaluateWithMultiReferenceINTEL = 5788;
   OpSubgroupAvcRefEvaluateWithMultiReferenceInterlacedINTEL = 5789;
   OpSubgroupAvcRefConvertToMceResultINTEL = 5790;
   OpSubgroupAvcSicInitializeINTEL = 5791;
   OpSubgroupAvcSicConfigureSkcINTEL = 5792;
   OpSubgroupAvcSicConfigureIpeLumaINTEL = 5793;
   OpSubgroupAvcSicConfigureIpeLumaChromaINTEL = 5794;
   OpSubgroupAvcSicGetMotionVectorMaskINTEL = 5795;
   OpSubgroupAvcSicConvertToMcePayloadINTEL = 5796;
   OpSubgroupAvcSicSetIntraLumaShapePenaltyINTEL = 5797;
   OpSubgroupAvcSicSetIntraLumaModeCostFunctionINTEL = 5798;
   OpSubgroupAvcSicSetIntraChromaModeCostFunctionINTEL = 5799;
   OpSubgroupAvcSicSetBilinearFilterEnableINTEL = 5800;
   OpSubgroupAvcSicSetSkcForwardTransformEnableINTEL = 5801;
   OpSubgroupAvcSicSetBlockBasedRawSkipSadINTEL = 5802;
   OpSubgroupAvcSicEvaluateIpeINTEL = 5803;
   OpSubgroupAvcSicEvaluateWithSingleReferenceINTEL = 5804;
   OpSubgroupAvcSicEvaluateWithDualReferenceINTEL = 5805;
   OpSubgroupAvcSicEvaluateWithMultiReferenceINTEL = 5806;
   OpSubgroupAvcSicEvaluateWithMultiReferenceInterlacedINTEL = 5807;
   OpSubgroupAvcSicConvertToMceResultINTEL = 5808;
   OpSubgroupAvcSicGetIpeLumaShapeINTEL = 5809;
   OpSubgroupAvcSicGetBestIpeLumaDistortionINTEL = 5810;
   OpSubgroupAvcSicGetBestIpeChromaDistortionINTEL = 5811;
   OpSubgroupAvcSicGetPackedIpeLumaModesINTEL = 5812;
   OpSubgroupAvcSicGetIpeChromaModeINTEL = 5813;
   OpSubgroupAvcSicGetPackedSkcLumaCountThresholdINTEL = 5814;
   OpSubgroupAvcSicGetPackedSkcLumaSumThresholdINTEL = 5815;
   OpSubgroupAvcSicGetInterRawSadsINTEL = 5816;
   OpVariableLengthArrayINTEL = 5818;
   OpSaveMemoryINTEL = 5819;
   OpRestoreMemoryINTEL = 5820;
   OpArbitraryFloatSinCosPiINTEL = 5840;
   OpArbitraryFloatCastINTEL = 5841;
   OpArbitraryFloatCastFromIntINTEL = 5842;
   OpArbitraryFloatCastToIntINTEL = 5843;
   OpArbitraryFloatAddINTEL = 5846;
   OpArbitraryFloatSubINTEL = 5847;
   OpArbitraryFloatMulINTEL = 5848;
   OpArbitraryFloatDivINTEL = 5849;
   OpArbitraryFloatGTINTEL = 5850;
   OpArbitraryFloatGEINTEL = 5851;
   OpArbitraryFloatLTINTEL = 5852;
   OpArbitraryFloatLEINTEL = 5853;
   OpArbitraryFloatEQINTEL = 5854;
   OpArbitraryFloatRecipINTEL = 5855;
   OpArbitraryFloatRSqrtINTEL = 5856;
   OpArbitraryFloatCbrtINTEL = 5857;
   OpArbitraryFloatHypotINTEL = 5858;
   OpArbitraryFloatSqrtINTEL = 5859;
   OpArbitraryFloatLogINTEL = 5860;
   OpArbitraryFloatLog2INTEL = 5861;
   OpArbitraryFloatLog10INTEL = 5862;
   OpArbitraryFloatLog1pINTEL = 5863;
   OpArbitraryFloatExpINTEL = 5864;
   OpArbitraryFloatExp2INTEL = 5865;
   OpArbitraryFloatExp10INTEL = 5866;
   OpArbitraryFloatExpm1INTEL = 5867;
   OpArbitraryFloatSinINTEL = 5868;
   OpArbitraryFloatCosINTEL = 5869;
   OpArbitraryFloatSinCosINTEL = 5870;
   OpArbitraryFloatSinPiINTEL = 5871;
   OpArbitraryFloatCosPiINTEL = 5872;
   OpArbitraryFloatASinINTEL = 5873;
   OpArbitraryFloatASinPiINTEL = 5874;
   OpArbitraryFloatACosINTEL = 5875;
   OpArbitraryFloatACosPiINTEL = 5876;
   OpArbitraryFloatATanINTEL = 5877;
   OpArbitraryFloatATanPiINTEL = 5878;
   OpArbitraryFloatATan2INTEL = 5879;
   OpArbitraryFloatPowINTEL = 5880;
   OpArbitraryFloatPowRINTEL = 5881;
   OpArbitraryFloatPowNINTEL = 5882;
   OpLoopControlINTEL = 5887;
   OpFixedSqrtINTEL = 5923;
   OpFixedRecipINTEL = 5924;
   OpFixedRsqrtINTEL = 5925;
   OpFixedSinINTEL = 5926;
   OpFixedCosINTEL = 5927;
   OpFixedSinCosINTEL = 5928;
   OpFixedSinPiINTEL = 5929;
   OpFixedCosPiINTEL = 5930;
   OpFixedSinCosPiINTEL = 5931;
   OpFixedLogINTEL = 5932;
   OpFixedExpINTEL = 5933;
   OpPtrCastToCrossWorkgroupINTEL = 5934;
   OpCrossWorkgroupCastToPtrINTEL = 5938;
   OpReadPipeBlockingINTEL = 5946;
   OpWritePipeBlockingINTEL = 5947;
   OpFPGARegINTEL = 5949;
   OpRayQueryGetRayTMinKHR = 6016;
   OpRayQueryGetRayFlagsKHR = 6017;
   OpRayQueryGetIntersectionTKHR = 6018;
   OpRayQueryGetIntersectionInstanceCustomIndexKHR = 6019;
   OpRayQueryGetIntersectionInstanceIdKHR = 6020;
   OpRayQueryGetIntersectionInstanceShaderBindingTableRecordOffsetKHR = 6021;
   OpRayQueryGetIntersectionGeometryIndexKHR = 6022;
   OpRayQueryGetIntersectionPrimitiveIndexKHR = 6023;
   OpRayQueryGetIntersectionBarycentricsKHR = 6024;
   OpRayQueryGetIntersectionFrontFaceKHR = 6025;
   OpRayQueryGetIntersectionCandidateAABBOpaqueKHR = 6026;
   OpRayQueryGetIntersectionObjectRayDirectionKHR = 6027;
   OpRayQueryGetIntersectionObjectRayOriginKHR = 6028;
   OpRayQueryGetWorldRayDirectionKHR = 6029;
   OpRayQueryGetWorldRayOriginKHR = 6030;
   OpRayQueryGetIntersectionObjectToWorldKHR = 6031;
   OpRayQueryGetIntersectionWorldToObjectKHR = 6032;
   OpAtomicFAddEXT = 6035;
   OpTypeBufferSurfaceINTEL = 6086;
   OpTypeStructContinuedINTEL = 6090;
   OpConstantCompositeContinuedINTEL = 6091;
   OpSpecConstantCompositeContinuedINTEL = 6092;
  function GetStr(w:Word):RawByteString; static;
  type
   TOpInfo=packed record
    op_min:Word;
    op_max:Word;
    result:Boolean;
    rstype:Boolean;
    align:Word;
   end;
  function GetInfo(w:Word):TOpInfo; static;
 end;

 GlslOp=object //extinst.glsl.std.450
  Const
   Round = 1;
   RoundEven = 2;
   Trunc = 3;
   FAbs = 4;
   SAbs = 5;
   FSign = 6;
   SSign = 7;
   Floor = 8;
   Ceil = 9;
   Fract = 10;
   Radians = 11;
   Degrees = 12;
   Sin = 13;
   Cos = 14;
   Tan = 15;
   Asin = 16;
   Acos = 17;
   Atan = 18;
   Sinh = 19;
   Cosh = 20;
   Tanh = 21;
   Asinh = 22;
   Acosh = 23;
   Atanh = 24;
   Atan2 = 25;
   Pow = 26;
   Exp = 27;
   Log = 28;
   Exp2 = 29;
   Log2 = 30;
   Sqrt = 31;
   InverseSqrt = 32;
   Determinant = 33;
   MatrixInverse = 34;
   Modf = 35;
   ModfStruct = 36;
   FMin = 37;
   UMin = 38;
   SMin = 39;
   FMax = 40;
   UMax = 41;
   SMax = 42;
   FClamp = 43;
   UClamp = 44;
   SClamp = 45;
   FMix = 46;
   IMix = 47;
   Step = 48;
   SmoothStep = 49;
   Fma = 50;
   Frexp = 51;
   FrexpStruct = 52;
   Ldexp = 53;
   PackSnorm4x8 = 54;
   PackUnorm4x8 = 55;
   PackSnorm2x16 = 56;
   PackUnorm2x16 = 57;
   PackHalf2x16 = 58;
   PackDouble2x32 = 59;
   UnpackSnorm2x16 = 60;
   UnpackUnorm2x16 = 61;
   UnpackHalf2x16 = 62;
   UnpackSnorm4x8 = 63;
   UnpackUnorm4x8 = 64;
   UnpackDouble2x32 = 65;
   Length = 66;
   Distance = 67;
   Cross = 68;
   Normalize = 69;
   FaceForward = 70;
   Reflect = 71;
   Refract = 72;
   FindILsb = 73;
   FindSMsb = 74;
   FindUMsb = 75;
   InterpolateAtCentroid = 76;
   InterpolateAtSample = 77;
   InterpolateAtOffset = 78;
   NMin = 79;
   NMax = 80;
   NClamp = 81;
  function GetStr(w:Word):RawByteString; static;
  type
   TOpInfo=packed record
    op_min:Word;
    op_max:Word;
    result:Boolean;
    rstype:Boolean;
    align:Word;
   end;
  function GetInfo(w:Word):TOpInfo; static;
 end;

implementation

function SourceLanguage.GetStr(w:Word):RawByteString;
begin
 Result:='???';
 Case w of
  Unknown:Result:='Unknown';
  ESSL:Result:='ESSL';
  GLSL:Result:='GLSL';
  OpenCL_C:Result:='OpenCL_C';
  OpenCL_CPP:Result:='OpenCL_CPP';
  HLSL:Result:='HLSL';
  CPP_for_OpenCL:Result:='CPP_for_OpenCL';
 end;
end;

function ExecutionModel.GetStr(w:Word):RawByteString;
begin
 Result:='???';
 Case w of
  Vertex:Result:='Vertex';
  TessellationControl:Result:='TessellationControl';
  TessellationEvaluation:Result:='TessellationEvaluation';
  Geometry:Result:='Geometry';
  Fragment:Result:='Fragment';
  GLCompute:Result:='GLCompute';
  Kernel:Result:='Kernel';
  TaskNV:Result:='TaskNV';
  MeshNV:Result:='MeshNV';
  RayGenerationKHR:Result:='RayGenerationKHR';
  IntersectionKHR:Result:='IntersectionKHR';
  AnyHitKHR:Result:='AnyHitKHR';
  ClosestHitKHR:Result:='ClosestHitKHR';
  MissKHR:Result:='MissKHR';
  CallableKHR:Result:='CallableKHR';
 end;
end;

function AddressingModel.GetStr(w:Word):RawByteString;
begin
 Result:='???';
 Case w of
  Logical:Result:='Logical';
  Physical32:Result:='Physical32';
  Physical64:Result:='Physical64';
  PhysicalStorageBuffer64:Result:='PhysicalStorageBuffer64';
 end;
end;

function MemoryModel.GetStr(w:Word):RawByteString;
begin
 Result:='???';
 Case w of
  Simple:Result:='Simple';
  GLSL450:Result:='GLSL450';
  OpenCL:Result:='OpenCL';
  Vulkan:Result:='Vulkan';
 end;
end;

function ExecutionMode.GetStr(w:Word):RawByteString;
begin
 Result:='???';
 Case w of
  Invocations:Result:='Invocations';
  SpacingEqual:Result:='SpacingEqual';
  SpacingFractionalEven:Result:='SpacingFractionalEven';
  SpacingFractionalOdd:Result:='SpacingFractionalOdd';
  VertexOrderCw:Result:='VertexOrderCw';
  VertexOrderCcw:Result:='VertexOrderCcw';
  PixelCenterInteger:Result:='PixelCenterInteger';
  OriginUpperLeft:Result:='OriginUpperLeft';
  OriginLowerLeft:Result:='OriginLowerLeft';
  EarlyFragmentTests:Result:='EarlyFragmentTests';
  PointMode:Result:='PointMode';
  Xfb:Result:='Xfb';
  DepthReplacing:Result:='DepthReplacing';
  DepthGreater:Result:='DepthGreater';
  DepthLess:Result:='DepthLess';
  DepthUnchanged:Result:='DepthUnchanged';
  LocalSize:Result:='LocalSize';
  LocalSizeHint:Result:='LocalSizeHint';
  InputPoints:Result:='InputPoints';
  InputLines:Result:='InputLines';
  InputLinesAdjacency:Result:='InputLinesAdjacency';
  Triangles:Result:='Triangles';
  InputTrianglesAdjacency:Result:='InputTrianglesAdjacency';
  Quads:Result:='Quads';
  Isolines:Result:='Isolines';
  OutputVertices:Result:='OutputVertices';
  OutputPoints:Result:='OutputPoints';
  OutputLineStrip:Result:='OutputLineStrip';
  OutputTriangleStrip:Result:='OutputTriangleStrip';
  VecTypeHint:Result:='VecTypeHint';
  ContractionOff:Result:='ContractionOff';
  Initializer:Result:='Initializer';
  Finalizer:Result:='Finalizer';
  SubgroupSize:Result:='SubgroupSize';
  SubgroupsPerWorkgroup:Result:='SubgroupsPerWorkgroup';
  SubgroupsPerWorkgroupId:Result:='SubgroupsPerWorkgroupId';
  LocalSizeId:Result:='LocalSizeId';
  LocalSizeHintId:Result:='LocalSizeHintId';
  SubgroupUniformControlFlowKHR:Result:='SubgroupUniformControlFlowKHR';
  PostDepthCoverage:Result:='PostDepthCoverage';
  DenormPreserve:Result:='DenormPreserve';
  DenormFlushToZero:Result:='DenormFlushToZero';
  SignedZeroInfNanPreserve:Result:='SignedZeroInfNanPreserve';
  RoundingModeRTE:Result:='RoundingModeRTE';
  RoundingModeRTZ:Result:='RoundingModeRTZ';
  StencilRefReplacingEXT:Result:='StencilRefReplacingEXT';
  OutputLinesNV:Result:='OutputLinesNV';
  OutputPrimitivesNV:Result:='OutputPrimitivesNV';
  DerivativeGroupQuadsNV:Result:='DerivativeGroupQuadsNV';
  DerivativeGroupLinearNV:Result:='DerivativeGroupLinearNV';
  OutputTrianglesNV:Result:='OutputTrianglesNV';
  PixelInterlockOrderedEXT:Result:='PixelInterlockOrderedEXT';
  PixelInterlockUnorderedEXT:Result:='PixelInterlockUnorderedEXT';
  SampleInterlockOrderedEXT:Result:='SampleInterlockOrderedEXT';
  SampleInterlockUnorderedEXT:Result:='SampleInterlockUnorderedEXT';
  ShadingRateInterlockOrderedEXT:Result:='ShadingRateInterlockOrderedEXT';
  ShadingRateInterlockUnorderedEXT:Result:='ShadingRateInterlockUnorderedEXT';
  SharedLocalMemorySizeINTEL:Result:='SharedLocalMemorySizeINTEL';
  RoundingModeRTPINTEL:Result:='RoundingModeRTPINTEL';
  RoundingModeRTNINTEL:Result:='RoundingModeRTNINTEL';
  FloatingPointModeALTINTEL:Result:='FloatingPointModeALTINTEL';
  FloatingPointModeIEEEINTEL:Result:='FloatingPointModeIEEEINTEL';
  MaxWorkgroupSizeINTEL:Result:='MaxWorkgroupSizeINTEL';
  MaxWorkDimINTEL:Result:='MaxWorkDimINTEL';
  NoGlobalOffsetINTEL:Result:='NoGlobalOffsetINTEL';
  NumSIMDWorkitemsINTEL:Result:='NumSIMDWorkitemsINTEL';
  SchedulerTargetFmaxMhzINTEL:Result:='SchedulerTargetFmaxMhzINTEL';
 end;
end;

function StorageClass.GetStr(w:Word):RawByteString;
begin
 Result:='???';
 Case w of
  UniformConstant:Result:='UniformConstant';
  Input:Result:='Input';
  Uniform:Result:='Uniform';
  Output:Result:='Output';
  Workgroup:Result:='Workgroup';
  CrossWorkgroup:Result:='CrossWorkgroup';
  Private_:Result:='Private';
  Function_:Result:='Function';
  Generic_:Result:='Generic';
  PushConstant:Result:='PushConstant';
  AtomicCounter:Result:='AtomicCounter';
  Image:Result:='Image';
  StorageBuffer:Result:='StorageBuffer';
  CallableDataKHR:Result:='CallableDataKHR';
  IncomingCallableDataKHR:Result:='IncomingCallableDataKHR';
  RayPayloadKHR:Result:='RayPayloadKHR';
  HitAttributeKHR:Result:='HitAttributeKHR';
  IncomingRayPayloadKHR:Result:='IncomingRayPayloadKHR';
  ShaderRecordBufferKHR:Result:='ShaderRecordBufferKHR';
  PhysicalStorageBuffer:Result:='PhysicalStorageBuffer';
  CodeSectionINTEL:Result:='CodeSectionINTEL';
  DeviceOnlyINTEL:Result:='DeviceOnlyINTEL';
  HostOnlyINTEL:Result:='HostOnlyINTEL';
 end;
end;

function Dim.GetStr(w:Word):RawByteString;
begin
 Result:='???';
 Case w of
  Dim1D:Result:='Dim1D';
  Dim2D:Result:='Dim2D';
  Dim3D:Result:='Dim3D';
  Cube:Result:='Cube';
  Rect:Result:='Rect';
  Buffer:Result:='Buffer';
  SubpassData:Result:='SubpassData';
 end;
end;

function SamplerAddressingMode.GetStr(w:Word):RawByteString;
begin
 Result:='???';
 Case w of
  None:Result:='None';
  ClampToEdge:Result:='ClampToEdge';
  Clamp:Result:='Clamp';
  Repeat_:Result:='Repeat';
  RepeatMirrored:Result:='RepeatMirrored';
 end;
end;

function SamplerFilterMode.GetStr(w:Word):RawByteString;
begin
 Result:='???';
 Case w of
  Nearest:Result:='Nearest';
  Linear:Result:='Linear';
 end;
end;

function ImageFormat.GetStr(w:Word):RawByteString;
begin
 Result:='???';
 Case w of
  Unknown:Result:='Unknown';
  Rgba32f:Result:='Rgba32f';
  Rgba16f:Result:='Rgba16f';
  R32f:Result:='R32f';
  Rgba8:Result:='Rgba8';
  Rgba8Snorm:Result:='Rgba8Snorm';
  Rg32f:Result:='Rg32f';
  Rg16f:Result:='Rg16f';
  R11fG11fB10f:Result:='R11fG11fB10f';
  R16f:Result:='R16f';
  Rgba16:Result:='Rgba16';
  Rgb10A2:Result:='Rgb10A2';
  Rg16:Result:='Rg16';
  Rg8:Result:='Rg8';
  R16:Result:='R16';
  R8:Result:='R8';
  Rgba16Snorm:Result:='Rgba16Snorm';
  Rg16Snorm:Result:='Rg16Snorm';
  Rg8Snorm:Result:='Rg8Snorm';
  R16Snorm:Result:='R16Snorm';
  R8Snorm:Result:='R8Snorm';
  Rgba32i:Result:='Rgba32i';
  Rgba16i:Result:='Rgba16i';
  Rgba8i:Result:='Rgba8i';
  R32i:Result:='R32i';
  Rg32i:Result:='Rg32i';
  Rg16i:Result:='Rg16i';
  Rg8i:Result:='Rg8i';
  R16i:Result:='R16i';
  R8i:Result:='R8i';
  Rgba32ui:Result:='Rgba32ui';
  Rgba16ui:Result:='Rgba16ui';
  Rgba8ui:Result:='Rgba8ui';
  R32ui:Result:='R32ui';
  Rgb10a2ui:Result:='Rgb10a2ui';
  Rg32ui:Result:='Rg32ui';
  Rg16ui:Result:='Rg16ui';
  Rg8ui:Result:='Rg8ui';
  R16ui:Result:='R16ui';
  R8ui:Result:='R8ui';
  R64ui:Result:='R64ui';
  R64i:Result:='R64i';
 end;
end;

function ImageChannelOrder.GetStr(w:Word):RawByteString;
begin
 Result:='???';
 Case w of
  R:Result:='R';
  A:Result:='A';
  RG:Result:='RG';
  RA:Result:='RA';
  RGB:Result:='RGB';
  RGBA:Result:='RGBA';
  BGRA:Result:='BGRA';
  ARGB:Result:='ARGB';
  Intensity:Result:='Intensity';
  Luminance:Result:='Luminance';
  Rx:Result:='Rx';
  RGx:Result:='RGx';
  RGBx:Result:='RGBx';
  Depth:Result:='Depth';
  DepthStencil:Result:='DepthStencil';
  sRGB:Result:='sRGB';
  sRGBx:Result:='sRGBx';
  sRGBA:Result:='sRGBA';
  sBGRA:Result:='sBGRA';
  ABGR:Result:='ABGR';
 end;
end;

function ImageChannelDataType.GetStr(w:Word):RawByteString;
begin
 Result:='???';
 Case w of
  SnormInt8:Result:='SnormInt8';
  SnormInt16:Result:='SnormInt16';
  UnormInt8:Result:='UnormInt8';
  UnormInt16:Result:='UnormInt16';
  UnormShort565:Result:='UnormShort565';
  UnormShort555:Result:='UnormShort555';
  UnormInt101010:Result:='UnormInt101010';
  SignedInt8:Result:='SignedInt8';
  SignedInt16:Result:='SignedInt16';
  SignedInt32:Result:='SignedInt32';
  UnsignedInt8:Result:='UnsignedInt8';
  UnsignedInt16:Result:='UnsignedInt16';
  UnsignedInt32:Result:='UnsignedInt32';
  HalfFloat:Result:='HalfFloat';
  Float:Result:='Float';
  UnormInt24:Result:='UnormInt24';
  UnormInt101010_2:Result:='UnormInt101010_2';
 end;
end;

function FPRoundingMode.GetStr(w:Word):RawByteString;
begin
 Result:='???';
 Case w of
  RTE:Result:='RTE';
  RTZ:Result:='RTZ';
  RTP:Result:='RTP';
  RTN:Result:='RTN';
 end;
end;

function LinkageType.GetStr(w:Word):RawByteString;
begin
 Result:='???';
 Case w of
  Export_:Result:='Export';
  Import:Result:='Import';
  LinkOnceODR:Result:='LinkOnceODR';
 end;
end;

function AccessQualifier.GetStr(w:Word):RawByteString;
begin
 Result:='???';
 Case w of
  ReadOnly:Result:='ReadOnly';
  WriteOnly:Result:='WriteOnly';
  ReadWrite:Result:='ReadWrite';
 end;
end;

function FunctionParameterAttribute.GetStr(w:Word):RawByteString;
begin
 Result:='???';
 Case w of
  Zext:Result:='Zext';
  Sext:Result:='Sext';
  ByVal:Result:='ByVal';
  Sret:Result:='Sret';
  NoAlias:Result:='NoAlias';
  NoCapture:Result:='NoCapture';
  NoWrite:Result:='NoWrite';
  NoReadWrite:Result:='NoReadWrite';
 end;
end;

function Decoration.GetStr(w:Word):RawByteString;
begin
 Result:='???';
 Case w of
  RelaxedPrecision:Result:='RelaxedPrecision';
  SpecId:Result:='SpecId';
  Block:Result:='Block';
  BufferBlock:Result:='BufferBlock';
  RowMajor:Result:='RowMajor';
  ColMajor:Result:='ColMajor';
  ArrayStride:Result:='ArrayStride';
  MatrixStride:Result:='MatrixStride';
  GLSLShared:Result:='GLSLShared';
  GLSLPacked:Result:='GLSLPacked';
  CPacked:Result:='CPacked';
  BuiltIn:Result:='BuiltIn';
  NoPerspective:Result:='NoPerspective';
  Flat:Result:='Flat';
  Patch:Result:='Patch';
  Centroid:Result:='Centroid';
  Sample:Result:='Sample';
  Invariant:Result:='Invariant';
  Restrict:Result:='Restrict';
  Aliased:Result:='Aliased';
  Volatile:Result:='Volatile';
  Constant:Result:='Constant';
  Coherent:Result:='Coherent';
  NonWritable:Result:='NonWritable';
  NonReadable:Result:='NonReadable';
  Uniform:Result:='Uniform';
  UniformId:Result:='UniformId';
  SaturatedConversion:Result:='SaturatedConversion';
  Stream:Result:='Stream';
  Location:Result:='Location';
  Component:Result:='Component';
  Index:Result:='Index';
  Binding:Result:='Binding';
  DescriptorSet:Result:='DescriptorSet';
  Offset:Result:='Offset';
  XfbBuffer:Result:='XfbBuffer';
  XfbStride:Result:='XfbStride';
  FuncParamAttr:Result:='FuncParamAttr';
  FPRoundingMode:Result:='FPRoundingMode';
  FPFastMathMode:Result:='FPFastMathMode';
  LinkageAttributes:Result:='LinkageAttributes';
  NoContraction:Result:='NoContraction';
  InputAttachmentIndex:Result:='InputAttachmentIndex';
  Alignment:Result:='Alignment';
  MaxByteOffset:Result:='MaxByteOffset';
  AlignmentId:Result:='AlignmentId';
  MaxByteOffsetId:Result:='MaxByteOffsetId';
  NoSignedWrap:Result:='NoSignedWrap';
  NoUnsignedWrap:Result:='NoUnsignedWrap';
  ExplicitInterpAMD:Result:='ExplicitInterpAMD';
  OverrideCoverageNV:Result:='OverrideCoverageNV';
  PassthroughNV:Result:='PassthroughNV';
  ViewportRelativeNV:Result:='ViewportRelativeNV';
  SecondaryViewportRelativeNV:Result:='SecondaryViewportRelativeNV';
  PerPrimitiveNV:Result:='PerPrimitiveNV';
  PerViewNV:Result:='PerViewNV';
  PerTaskNV:Result:='PerTaskNV';
  PerVertexKHR:Result:='PerVertexKHR';
  NonUniform:Result:='NonUniform';
  RestrictPointer:Result:='RestrictPointer';
  AliasedPointer:Result:='AliasedPointer';
  BindlessSamplerNV:Result:='BindlessSamplerNV';
  BindlessImageNV:Result:='BindlessImageNV';
  BoundSamplerNV:Result:='BoundSamplerNV';
  BoundImageNV:Result:='BoundImageNV';
  SIMTCallINTEL:Result:='SIMTCallINTEL';
  ReferencedIndirectlyINTEL:Result:='ReferencedIndirectlyINTEL';
  ClobberINTEL:Result:='ClobberINTEL';
  SideEffectsINTEL:Result:='SideEffectsINTEL';
  VectorComputeVariableINTEL:Result:='VectorComputeVariableINTEL';
  FuncParamIOKindINTEL:Result:='FuncParamIOKindINTEL';
  VectorComputeFunctionINTEL:Result:='VectorComputeFunctionINTEL';
  StackCallINTEL:Result:='StackCallINTEL';
  GlobalVariableOffsetINTEL:Result:='GlobalVariableOffsetINTEL';
  CounterBuffer:Result:='CounterBuffer';
  UserSemantic:Result:='UserSemantic';
  UserTypeGOOGLE:Result:='UserTypeGOOGLE';
  FunctionRoundingModeINTEL:Result:='FunctionRoundingModeINTEL';
  FunctionDenormModeINTEL:Result:='FunctionDenormModeINTEL';
  RegisterINTEL:Result:='RegisterINTEL';
  MemoryINTEL:Result:='MemoryINTEL';
  NumbanksINTEL:Result:='NumbanksINTEL';
  BankwidthINTEL:Result:='BankwidthINTEL';
  MaxPrivateCopiesINTEL:Result:='MaxPrivateCopiesINTEL';
  SinglepumpINTEL:Result:='SinglepumpINTEL';
  DoublepumpINTEL:Result:='DoublepumpINTEL';
  MaxReplicatesINTEL:Result:='MaxReplicatesINTEL';
  SimpleDualPortINTEL:Result:='SimpleDualPortINTEL';
  MergeINTEL:Result:='MergeINTEL';
  BankBitsINTEL:Result:='BankBitsINTEL';
  ForcePow2DepthINTEL:Result:='ForcePow2DepthINTEL';
  BurstCoalesceINTEL:Result:='BurstCoalesceINTEL';
  CacheSizeINTEL:Result:='CacheSizeINTEL';
  DontStaticallyCoalesceINTEL:Result:='DontStaticallyCoalesceINTEL';
  PrefetchINTEL:Result:='PrefetchINTEL';
  StallEnableINTEL:Result:='StallEnableINTEL';
  FuseLoopsInFunctionINTEL:Result:='FuseLoopsInFunctionINTEL';
  BufferLocationINTEL:Result:='BufferLocationINTEL';
  IOPipeStorageINTEL:Result:='IOPipeStorageINTEL';
  FunctionFloatingPointModeINTEL:Result:='FunctionFloatingPointModeINTEL';
  SingleElementVectorINTEL:Result:='SingleElementVectorINTEL';
  VectorComputeCallableFunctionINTEL:Result:='VectorComputeCallableFunctionINTEL';
  MediaBlockIOINTEL:Result:='MediaBlockIOINTEL';
 end;
end;

function BuiltIn.GetStr(w:Word):RawByteString;
begin
 Result:='???';
 Case w of
  Position:Result:='Position';
  PointSize:Result:='PointSize';
  ClipDistance:Result:='ClipDistance';
  CullDistance:Result:='CullDistance';
  VertexId:Result:='VertexId';
  InstanceId:Result:='InstanceId';
  PrimitiveId:Result:='PrimitiveId';
  InvocationId:Result:='InvocationId';
  Layer:Result:='Layer';
  ViewportIndex:Result:='ViewportIndex';
  TessLevelOuter:Result:='TessLevelOuter';
  TessLevelInner:Result:='TessLevelInner';
  TessCoord:Result:='TessCoord';
  PatchVertices:Result:='PatchVertices';
  FragCoord:Result:='FragCoord';
  PointCoord:Result:='PointCoord';
  FrontFacing:Result:='FrontFacing';
  SampleId:Result:='SampleId';
  SamplePosition:Result:='SamplePosition';
  SampleMask:Result:='SampleMask';
  FragDepth:Result:='FragDepth';
  HelperInvocation:Result:='HelperInvocation';
  NumWorkgroups:Result:='NumWorkgroups';
  WorkgroupSize:Result:='WorkgroupSize';
  WorkgroupId:Result:='WorkgroupId';
  LocalInvocationId:Result:='LocalInvocationId';
  GlobalInvocationId:Result:='GlobalInvocationId';
  LocalInvocationIndex:Result:='LocalInvocationIndex';
  WorkDim:Result:='WorkDim';
  GlobalSize:Result:='GlobalSize';
  EnqueuedWorkgroupSize:Result:='EnqueuedWorkgroupSize';
  GlobalOffset:Result:='GlobalOffset';
  GlobalLinearId:Result:='GlobalLinearId';
  SubgroupSize:Result:='SubgroupSize';
  SubgroupMaxSize:Result:='SubgroupMaxSize';
  NumSubgroups:Result:='NumSubgroups';
  NumEnqueuedSubgroups:Result:='NumEnqueuedSubgroups';
  SubgroupId:Result:='SubgroupId';
  SubgroupLocalInvocationId:Result:='SubgroupLocalInvocationId';
  VertexIndex:Result:='VertexIndex';
  InstanceIndex:Result:='InstanceIndex';
  SubgroupEqMask:Result:='SubgroupEqMask';
  SubgroupGeMask:Result:='SubgroupGeMask';
  SubgroupGtMask:Result:='SubgroupGtMask';
  SubgroupLeMask:Result:='SubgroupLeMask';
  SubgroupLtMask:Result:='SubgroupLtMask';
  BaseVertex:Result:='BaseVertex';
  BaseInstance:Result:='BaseInstance';
  DrawIndex:Result:='DrawIndex';
  PrimitiveShadingRateKHR:Result:='PrimitiveShadingRateKHR';
  DeviceIndex:Result:='DeviceIndex';
  ViewIndex:Result:='ViewIndex';
  ShadingRateKHR:Result:='ShadingRateKHR';
  BaryCoordNoPerspAMD:Result:='BaryCoordNoPerspAMD';
  BaryCoordNoPerspCentroidAMD:Result:='BaryCoordNoPerspCentroidAMD';
  BaryCoordNoPerspSampleAMD:Result:='BaryCoordNoPerspSampleAMD';
  BaryCoordSmoothAMD:Result:='BaryCoordSmoothAMD';
  BaryCoordSmoothCentroidAMD:Result:='BaryCoordSmoothCentroidAMD';
  BaryCoordSmoothSampleAMD:Result:='BaryCoordSmoothSampleAMD';
  BaryCoordPullModelAMD:Result:='BaryCoordPullModelAMD';
  FragStencilRefEXT:Result:='FragStencilRefEXT';
  ViewportMaskNV:Result:='ViewportMaskNV';
  SecondaryPositionNV:Result:='SecondaryPositionNV';
  SecondaryViewportMaskNV:Result:='SecondaryViewportMaskNV';
  PositionPerViewNV:Result:='PositionPerViewNV';
  ViewportMaskPerViewNV:Result:='ViewportMaskPerViewNV';
  FullyCoveredEXT:Result:='FullyCoveredEXT';
  TaskCountNV:Result:='TaskCountNV';
  PrimitiveCountNV:Result:='PrimitiveCountNV';
  PrimitiveIndicesNV:Result:='PrimitiveIndicesNV';
  ClipDistancePerViewNV:Result:='ClipDistancePerViewNV';
  CullDistancePerViewNV:Result:='CullDistancePerViewNV';
  LayerPerViewNV:Result:='LayerPerViewNV';
  MeshViewCountNV:Result:='MeshViewCountNV';
  MeshViewIndicesNV:Result:='MeshViewIndicesNV';
  BaryCoordKHR:Result:='BaryCoordKHR';
  BaryCoordNoPerspKHR:Result:='BaryCoordNoPerspKHR';
  FragSizeEXT:Result:='FragSizeEXT';
  InvocationsPerPixelNV:Result:='InvocationsPerPixelNV';
  LaunchIdKHR:Result:='LaunchIdKHR';
  LaunchSizeKHR:Result:='LaunchSizeKHR';
  WorldRayOriginKHR:Result:='WorldRayOriginKHR';
  WorldRayDirectionKHR:Result:='WorldRayDirectionKHR';
  ObjectRayOriginKHR:Result:='ObjectRayOriginKHR';
  ObjectRayDirectionKHR:Result:='ObjectRayDirectionKHR';
  RayTminKHR:Result:='RayTminKHR';
  RayTmaxKHR:Result:='RayTmaxKHR';
  InstanceCustomIndexKHR:Result:='InstanceCustomIndexKHR';
  ObjectToWorldKHR:Result:='ObjectToWorldKHR';
  WorldToObjectKHR:Result:='WorldToObjectKHR';
  HitTNV:Result:='HitTNV';
  HitKindKHR:Result:='HitKindKHR';
  CurrentRayTimeNV:Result:='CurrentRayTimeNV';
  IncomingRayFlagsKHR:Result:='IncomingRayFlagsKHR';
  RayGeometryIndexKHR:Result:='RayGeometryIndexKHR';
  WarpsPerSMNV:Result:='WarpsPerSMNV';
  SMCountNV:Result:='SMCountNV';
  WarpIDNV:Result:='WarpIDNV';
  SMIDNV:Result:='SMIDNV';
 end;
end;

function Scope.GetStr(w:Word):RawByteString;
begin
 Result:='???';
 Case w of
  CrossDevice:Result:='CrossDevice';
  Device:Result:='Device';
  Workgroup:Result:='Workgroup';
  Subgroup:Result:='Subgroup';
  Invocation:Result:='Invocation';
  QueueFamily:Result:='QueueFamily';
  ShaderCallKHR:Result:='ShaderCallKHR';
 end;
end;

function GroupOperation.GetStr(w:Word):RawByteString;
begin
 Result:='???';
 Case w of
  Reduce:Result:='Reduce';
  InclusiveScan:Result:='InclusiveScan';
  ExclusiveScan:Result:='ExclusiveScan';
  ClusteredReduce:Result:='ClusteredReduce';
  PartitionedReduceNV:Result:='PartitionedReduceNV';
  PartitionedInclusiveScanNV:Result:='PartitionedInclusiveScanNV';
  PartitionedExclusiveScanNV:Result:='PartitionedExclusiveScanNV';
 end;
end;

function KernelEnqueueFlags.GetStr(w:Word):RawByteString;
begin
 Result:='???';
 Case w of
  NoWait:Result:='NoWait';
  WaitKernel:Result:='WaitKernel';
  WaitWorkGroup:Result:='WaitWorkGroup';
 end;
end;

function Capability.GetStr(w:Word):RawByteString;
begin
 Result:='???';
 Case w of
  Matrix:Result:='Matrix';
  Shader:Result:='Shader';
  Geometry:Result:='Geometry';
  Tessellation:Result:='Tessellation';
  Addresses:Result:='Addresses';
  Linkage:Result:='Linkage';
  Kernel:Result:='Kernel';
  Vector16:Result:='Vector16';
  Float16Buffer:Result:='Float16Buffer';
  Float16:Result:='Float16';
  Float64:Result:='Float64';
  Int64:Result:='Int64';
  Int64Atomics:Result:='Int64Atomics';
  ImageBasic:Result:='ImageBasic';
  ImageReadWrite:Result:='ImageReadWrite';
  ImageMipmap:Result:='ImageMipmap';
  Pipes:Result:='Pipes';
  Groups:Result:='Groups';
  DeviceEnqueue:Result:='DeviceEnqueue';
  LiteralSampler:Result:='LiteralSampler';
  AtomicStorage:Result:='AtomicStorage';
  Int16:Result:='Int16';
  TessellationPointSize:Result:='TessellationPointSize';
  GeometryPointSize:Result:='GeometryPointSize';
  ImageGatherExtended:Result:='ImageGatherExtended';
  StorageImageMultisample:Result:='StorageImageMultisample';
  UniformBufferArrayDynamicIndexing:Result:='UniformBufferArrayDynamicIndexing';
  SampledImageArrayDynamicIndexing:Result:='SampledImageArrayDynamicIndexing';
  StorageBufferArrayDynamicIndexing:Result:='StorageBufferArrayDynamicIndexing';
  StorageImageArrayDynamicIndexing:Result:='StorageImageArrayDynamicIndexing';
  ClipDistance:Result:='ClipDistance';
  CullDistance:Result:='CullDistance';
  ImageCubeArray:Result:='ImageCubeArray';
  SampleRateShading:Result:='SampleRateShading';
  ImageRect:Result:='ImageRect';
  SampledRect:Result:='SampledRect';
  GenericPointer:Result:='GenericPointer';
  Int8:Result:='Int8';
  InputAttachment:Result:='InputAttachment';
  SparseResidency:Result:='SparseResidency';
  MinLod:Result:='MinLod';
  Sampled1D:Result:='Sampled1D';
  Image1D:Result:='Image1D';
  SampledCubeArray:Result:='SampledCubeArray';
  SampledBuffer:Result:='SampledBuffer';
  ImageBuffer:Result:='ImageBuffer';
  ImageMSArray:Result:='ImageMSArray';
  StorageImageExtendedFormats:Result:='StorageImageExtendedFormats';
  ImageQuery:Result:='ImageQuery';
  DerivativeControl:Result:='DerivativeControl';
  InterpolationFunction:Result:='InterpolationFunction';
  TransformFeedback:Result:='TransformFeedback';
  GeometryStreams:Result:='GeometryStreams';
  StorageImageReadWithoutFormat:Result:='StorageImageReadWithoutFormat';
  StorageImageWriteWithoutFormat:Result:='StorageImageWriteWithoutFormat';
  MultiViewport:Result:='MultiViewport';
  SubgroupDispatch:Result:='SubgroupDispatch';
  NamedBarrier:Result:='NamedBarrier';
  PipeStorage:Result:='PipeStorage';
  GroupNonUniform:Result:='GroupNonUniform';
  GroupNonUniformVote:Result:='GroupNonUniformVote';
  GroupNonUniformArithmetic:Result:='GroupNonUniformArithmetic';
  GroupNonUniformBallot:Result:='GroupNonUniformBallot';
  GroupNonUniformShuffle:Result:='GroupNonUniformShuffle';
  GroupNonUniformShuffleRelative:Result:='GroupNonUniformShuffleRelative';
  GroupNonUniformClustered:Result:='GroupNonUniformClustered';
  GroupNonUniformQuad:Result:='GroupNonUniformQuad';
  ShaderLayer:Result:='ShaderLayer';
  ShaderViewportIndex:Result:='ShaderViewportIndex';
  UniformDecoration:Result:='UniformDecoration';
  FragmentShadingRateKHR:Result:='FragmentShadingRateKHR';
  SubgroupBallotKHR:Result:='SubgroupBallotKHR';
  DrawParameters:Result:='DrawParameters';
  WorkgroupMemoryExplicitLayoutKHR:Result:='WorkgroupMemoryExplicitLayoutKHR';
  WorkgroupMemoryExplicitLayout8BitAccessKHR:Result:='WorkgroupMemoryExplicitLayout8BitAccessKHR';
  WorkgroupMemoryExplicitLayout16BitAccessKHR:Result:='WorkgroupMemoryExplicitLayout16BitAccessKHR';
  SubgroupVoteKHR:Result:='SubgroupVoteKHR';
  StorageBuffer16BitAccess:Result:='StorageBuffer16BitAccess';
  StorageUniform16:Result:='StorageUniform16';
  StoragePushConstant16:Result:='StoragePushConstant16';
  StorageInputOutput16:Result:='StorageInputOutput16';
  DeviceGroup:Result:='DeviceGroup';
  MultiView:Result:='MultiView';
  VariablePointersStorageBuffer:Result:='VariablePointersStorageBuffer';
  VariablePointers:Result:='VariablePointers';
  AtomicStorageOps:Result:='AtomicStorageOps';
  SampleMaskPostDepthCoverage:Result:='SampleMaskPostDepthCoverage';
  StorageBuffer8BitAccess:Result:='StorageBuffer8BitAccess';
  UniformAndStorageBuffer8BitAccess:Result:='UniformAndStorageBuffer8BitAccess';
  StoragePushConstant8:Result:='StoragePushConstant8';
  DenormPreserve:Result:='DenormPreserve';
  DenormFlushToZero:Result:='DenormFlushToZero';
  SignedZeroInfNanPreserve:Result:='SignedZeroInfNanPreserve';
  RoundingModeRTE:Result:='RoundingModeRTE';
  RoundingModeRTZ:Result:='RoundingModeRTZ';
  RayQueryProvisionalKHR:Result:='RayQueryProvisionalKHR';
  RayQueryKHR:Result:='RayQueryKHR';
  RayTraversalPrimitiveCullingKHR:Result:='RayTraversalPrimitiveCullingKHR';
  RayTracingKHR:Result:='RayTracingKHR';
  Float16ImageAMD:Result:='Float16ImageAMD';
  ImageGatherBiasLodAMD:Result:='ImageGatherBiasLodAMD';
  FragmentMaskAMD:Result:='FragmentMaskAMD';
  StencilExportEXT:Result:='StencilExportEXT';
  ImageReadWriteLodAMD:Result:='ImageReadWriteLodAMD';
  Int64ImageEXT:Result:='Int64ImageEXT';
  ShaderClockKHR:Result:='ShaderClockKHR';
  SampleMaskOverrideCoverageNV:Result:='SampleMaskOverrideCoverageNV';
  GeometryShaderPassthroughNV:Result:='GeometryShaderPassthroughNV';
  ShaderViewportIndexLayerNV:Result:='ShaderViewportIndexLayerNV';
  ShaderViewportMaskNV:Result:='ShaderViewportMaskNV';
  ShaderStereoViewNV:Result:='ShaderStereoViewNV';
  PerViewAttributesNV:Result:='PerViewAttributesNV';
  FragmentFullyCoveredEXT:Result:='FragmentFullyCoveredEXT';
  MeshShadingNV:Result:='MeshShadingNV';
  ImageFootprintNV:Result:='ImageFootprintNV';
  FragmentBarycentricKHR:Result:='FragmentBarycentricKHR';
  ComputeDerivativeGroupQuadsNV:Result:='ComputeDerivativeGroupQuadsNV';
  ShadingRateNV:Result:='ShadingRateNV';
  GroupNonUniformPartitionedNV:Result:='GroupNonUniformPartitionedNV';
  ShaderNonUniform:Result:='ShaderNonUniform';
  RuntimeDescriptorArray:Result:='RuntimeDescriptorArray';
  InputAttachmentArrayDynamicIndexing:Result:='InputAttachmentArrayDynamicIndexing';
  UniformTexelBufferArrayDynamicIndexing:Result:='UniformTexelBufferArrayDynamicIndexing';
  StorageTexelBufferArrayDynamicIndexing:Result:='StorageTexelBufferArrayDynamicIndexing';
  UniformBufferArrayNonUniformIndexing:Result:='UniformBufferArrayNonUniformIndexing';
  SampledImageArrayNonUniformIndexing:Result:='SampledImageArrayNonUniformIndexing';
  StorageBufferArrayNonUniformIndexing:Result:='StorageBufferArrayNonUniformIndexing';
  StorageImageArrayNonUniformIndexing:Result:='StorageImageArrayNonUniformIndexing';
  InputAttachmentArrayNonUniformIndexing:Result:='InputAttachmentArrayNonUniformIndexing';
  UniformTexelBufferArrayNonUniformIndexing:Result:='UniformTexelBufferArrayNonUniformIndexing';
  StorageTexelBufferArrayNonUniformIndexing:Result:='StorageTexelBufferArrayNonUniformIndexing';
  RayTracingNV:Result:='RayTracingNV';
  RayTracingMotionBlurNV:Result:='RayTracingMotionBlurNV';
  VulkanMemoryModel:Result:='VulkanMemoryModel';
  VulkanMemoryModelDeviceScope:Result:='VulkanMemoryModelDeviceScope';
  PhysicalStorageBufferAddresses:Result:='PhysicalStorageBufferAddresses';
  ComputeDerivativeGroupLinearNV:Result:='ComputeDerivativeGroupLinearNV';
  RayTracingProvisionalKHR:Result:='RayTracingProvisionalKHR';
  CooperativeMatrixNV:Result:='CooperativeMatrixNV';
  FragmentShaderSampleInterlockEXT:Result:='FragmentShaderSampleInterlockEXT';
  FragmentShaderShadingRateInterlockEXT:Result:='FragmentShaderShadingRateInterlockEXT';
  ShaderSMBuiltinsNV:Result:='ShaderSMBuiltinsNV';
  FragmentShaderPixelInterlockEXT:Result:='FragmentShaderPixelInterlockEXT';
  DemoteToHelperInvocation:Result:='DemoteToHelperInvocation';
  BindlessTextureNV:Result:='BindlessTextureNV';
  SubgroupShuffleINTEL:Result:='SubgroupShuffleINTEL';
  SubgroupBufferBlockIOINTEL:Result:='SubgroupBufferBlockIOINTEL';
  SubgroupImageBlockIOINTEL:Result:='SubgroupImageBlockIOINTEL';
  SubgroupImageMediaBlockIOINTEL:Result:='SubgroupImageMediaBlockIOINTEL';
  RoundToInfinityINTEL:Result:='RoundToInfinityINTEL';
  FloatingPointModeINTEL:Result:='FloatingPointModeINTEL';
  IntegerFunctions2INTEL:Result:='IntegerFunctions2INTEL';
  FunctionPointersINTEL:Result:='FunctionPointersINTEL';
  IndirectReferencesINTEL:Result:='IndirectReferencesINTEL';
  AsmINTEL:Result:='AsmINTEL';
  AtomicFloat32MinMaxEXT:Result:='AtomicFloat32MinMaxEXT';
  AtomicFloat64MinMaxEXT:Result:='AtomicFloat64MinMaxEXT';
  AtomicFloat16MinMaxEXT:Result:='AtomicFloat16MinMaxEXT';
  VectorComputeINTEL:Result:='VectorComputeINTEL';
  VectorAnyINTEL:Result:='VectorAnyINTEL';
  ExpectAssumeKHR:Result:='ExpectAssumeKHR';
  SubgroupAvcMotionEstimationINTEL:Result:='SubgroupAvcMotionEstimationINTEL';
  SubgroupAvcMotionEstimationIntraINTEL:Result:='SubgroupAvcMotionEstimationIntraINTEL';
  SubgroupAvcMotionEstimationChromaINTEL:Result:='SubgroupAvcMotionEstimationChromaINTEL';
  VariableLengthArrayINTEL:Result:='VariableLengthArrayINTEL';
  FunctionFloatControlINTEL:Result:='FunctionFloatControlINTEL';
  FPGAMemoryAttributesINTEL:Result:='FPGAMemoryAttributesINTEL';
  FPFastMathModeINTEL:Result:='FPFastMathModeINTEL';
  ArbitraryPrecisionIntegersINTEL:Result:='ArbitraryPrecisionIntegersINTEL';
  ArbitraryPrecisionFloatingPointINTEL:Result:='ArbitraryPrecisionFloatingPointINTEL';
  UnstructuredLoopControlsINTEL:Result:='UnstructuredLoopControlsINTEL';
  FPGALoopControlsINTEL:Result:='FPGALoopControlsINTEL';
  KernelAttributesINTEL:Result:='KernelAttributesINTEL';
  FPGAKernelAttributesINTEL:Result:='FPGAKernelAttributesINTEL';
  FPGAMemoryAccessesINTEL:Result:='FPGAMemoryAccessesINTEL';
  FPGAClusterAttributesINTEL:Result:='FPGAClusterAttributesINTEL';
  LoopFuseINTEL:Result:='LoopFuseINTEL';
  FPGABufferLocationINTEL:Result:='FPGABufferLocationINTEL';
  ArbitraryPrecisionFixedPointINTEL:Result:='ArbitraryPrecisionFixedPointINTEL';
  USMStorageClassesINTEL:Result:='USMStorageClassesINTEL';
  IOPipesINTEL:Result:='IOPipesINTEL';
  BlockingPipesINTEL:Result:='BlockingPipesINTEL';
  FPGARegINTEL:Result:='FPGARegINTEL';
  DotProductInputAll:Result:='DotProductInputAll';
  DotProductInput4x8Bit:Result:='DotProductInput4x8Bit';
  DotProductInput4x8BitPacked:Result:='DotProductInput4x8BitPacked';
  DotProduct:Result:='DotProduct';
  BitInstructions:Result:='BitInstructions';
  AtomicFloat32AddEXT:Result:='AtomicFloat32AddEXT';
  AtomicFloat64AddEXT:Result:='AtomicFloat64AddEXT';
  LongConstantCompositeINTEL:Result:='LongConstantCompositeINTEL';
  OptNoneINTEL:Result:='OptNoneINTEL';
  AtomicFloat16AddEXT:Result:='AtomicFloat16AddEXT';
  DebugInfoModuleINTEL:Result:='DebugInfoModuleINTEL';
 end;
end;

function RayQueryIntersection.GetStr(w:Word):RawByteString;
begin
 Result:='???';
 Case w of
  RayQueryCandidateIntersectionKHR:Result:='RayQueryCandidateIntersectionKHR';
  RayQueryCommittedIntersectionKHR:Result:='RayQueryCommittedIntersectionKHR';
 end;
end;

function RayQueryCommittedIntersectionType.GetStr(w:Word):RawByteString;
begin
 Result:='???';
 Case w of
  RayQueryCommittedIntersectionNoneKHR:Result:='RayQueryCommittedIntersectionNoneKHR';
  RayQueryCommittedIntersectionTriangleKHR:Result:='RayQueryCommittedIntersectionTriangleKHR';
  RayQueryCommittedIntersectionGeneratedKHR:Result:='RayQueryCommittedIntersectionGeneratedKHR';
 end;
end;

function RayQueryCandidateIntersectionType.GetStr(w:Word):RawByteString;
begin
 Result:='???';
 Case w of
  RayQueryCandidateIntersectionTriangleKHR:Result:='RayQueryCandidateIntersectionTriangleKHR';
  RayQueryCandidateIntersectionAABBKHR:Result:='RayQueryCandidateIntersectionAABBKHR';
 end;
end;

function FPDenormMode.GetStr(w:Word):RawByteString;
begin
 Result:='???';
 Case w of
  Preserve:Result:='Preserve';
  FlushToZero:Result:='FlushToZero';
 end;
end;

function FPOperationMode.GetStr(w:Word):RawByteString;
begin
 Result:='???';
 Case w of
  IEEE:Result:='IEEE';
  ALT:Result:='ALT';
 end;
end;

function QuantizationModes.GetStr(w:Word):RawByteString;
begin
 Result:='???';
 Case w of
  TRN:Result:='TRN';
  TRN_ZERO:Result:='TRN_ZERO';
  RND:Result:='RND';
  RND_ZERO:Result:='RND_ZERO';
  RND_INF:Result:='RND_INF';
  RND_MIN_INF:Result:='RND_MIN_INF';
  RND_CONV:Result:='RND_CONV';
  RND_CONV_ODD:Result:='RND_CONV_ODD';
 end;
end;

function OverflowModes.GetStr(w:Word):RawByteString;
begin
 Result:='???';
 Case w of
  WRAP:Result:='WRAP';
  SAT:Result:='SAT';
  SAT_ZERO:Result:='SAT_ZERO';
  SAT_SYM:Result:='SAT_SYM';
 end;
end;

function PackedVectorFormat.GetStr(w:Word):RawByteString;
begin
 Result:='???';
 Case w of
  PackedVectorFormat4x8Bit:Result:='PackedVectorFormat4x8Bit';
 end;
end;

function Op.GetStr(w:Word):RawByteString;
begin
 Result:='???';
 Case w of
  OpNop:Result:='OpNop';
  OpUndef:Result:='OpUndef';
  OpSourceContinued:Result:='OpSourceContinued';
  OpSource:Result:='OpSource';
  OpSourceExtension:Result:='OpSourceExtension';
  OpName:Result:='OpName';
  OpMemberName:Result:='OpMemberName';
  OpString:Result:='OpString';
  OpLine:Result:='OpLine';
  OpExtension:Result:='OpExtension';
  OpExtInstImport:Result:='OpExtInstImport';
  OpExtInst:Result:='OpExtInst';
  OpMemoryModel:Result:='OpMemoryModel';
  OpEntryPoint:Result:='OpEntryPoint';
  OpExecutionMode:Result:='OpExecutionMode';
  OpCapability:Result:='OpCapability';
  OpTypeVoid:Result:='OpTypeVoid';
  OpTypeBool:Result:='OpTypeBool';
  OpTypeInt:Result:='OpTypeInt';
  OpTypeFloat:Result:='OpTypeFloat';
  OpTypeVector:Result:='OpTypeVector';
  OpTypeMatrix:Result:='OpTypeMatrix';
  OpTypeImage:Result:='OpTypeImage';
  OpTypeSampler:Result:='OpTypeSampler';
  OpTypeSampledImage:Result:='OpTypeSampledImage';
  OpTypeArray:Result:='OpTypeArray';
  OpTypeRuntimeArray:Result:='OpTypeRuntimeArray';
  OpTypeStruct:Result:='OpTypeStruct';
  OpTypeOpaque:Result:='OpTypeOpaque';
  OpTypePointer:Result:='OpTypePointer';
  OpTypeFunction:Result:='OpTypeFunction';
  OpTypeEvent:Result:='OpTypeEvent';
  OpTypeDeviceEvent:Result:='OpTypeDeviceEvent';
  OpTypeReserveId:Result:='OpTypeReserveId';
  OpTypeQueue:Result:='OpTypeQueue';
  OpTypePipe:Result:='OpTypePipe';
  OpTypeForwardPointer:Result:='OpTypeForwardPointer';
  OpConstantTrue:Result:='OpConstantTrue';
  OpConstantFalse:Result:='OpConstantFalse';
  OpConstant:Result:='OpConstant';
  OpConstantComposite:Result:='OpConstantComposite';
  OpConstantSampler:Result:='OpConstantSampler';
  OpConstantNull:Result:='OpConstantNull';
  OpSpecConstantTrue:Result:='OpSpecConstantTrue';
  OpSpecConstantFalse:Result:='OpSpecConstantFalse';
  OpSpecConstant:Result:='OpSpecConstant';
  OpSpecConstantComposite:Result:='OpSpecConstantComposite';
  OpSpecConstantOp:Result:='OpSpecConstantOp';
  OpFunction:Result:='OpFunction';
  OpFunctionParameter:Result:='OpFunctionParameter';
  OpFunctionEnd:Result:='OpFunctionEnd';
  OpFunctionCall:Result:='OpFunctionCall';
  OpVariable:Result:='OpVariable';
  OpImageTexelPointer:Result:='OpImageTexelPointer';
  OpLoad:Result:='OpLoad';
  OpStore:Result:='OpStore';
  OpCopyMemory:Result:='OpCopyMemory';
  OpCopyMemorySized:Result:='OpCopyMemorySized';
  OpAccessChain:Result:='OpAccessChain';
  OpInBoundsAccessChain:Result:='OpInBoundsAccessChain';
  OpPtrAccessChain:Result:='OpPtrAccessChain';
  OpArrayLength:Result:='OpArrayLength';
  OpGenericPtrMemSemantics:Result:='OpGenericPtrMemSemantics';
  OpInBoundsPtrAccessChain:Result:='OpInBoundsPtrAccessChain';
  OpDecorate:Result:='OpDecorate';
  OpMemberDecorate:Result:='OpMemberDecorate';
  OpDecorationGroup:Result:='OpDecorationGroup';
  OpGroupDecorate:Result:='OpGroupDecorate';
  OpGroupMemberDecorate:Result:='OpGroupMemberDecorate';
  OpVectorExtractDynamic:Result:='OpVectorExtractDynamic';
  OpVectorInsertDynamic:Result:='OpVectorInsertDynamic';
  OpVectorShuffle:Result:='OpVectorShuffle';
  OpCompositeConstruct:Result:='OpCompositeConstruct';
  OpCompositeExtract:Result:='OpCompositeExtract';
  OpCompositeInsert:Result:='OpCompositeInsert';
  OpCopyObject:Result:='OpCopyObject';
  OpTranspose:Result:='OpTranspose';
  OpSampledImage:Result:='OpSampledImage';
  OpImageSampleImplicitLod:Result:='OpImageSampleImplicitLod';
  OpImageSampleExplicitLod:Result:='OpImageSampleExplicitLod';
  OpImageSampleDrefImplicitLod:Result:='OpImageSampleDrefImplicitLod';
  OpImageSampleDrefExplicitLod:Result:='OpImageSampleDrefExplicitLod';
  OpImageSampleProjImplicitLod:Result:='OpImageSampleProjImplicitLod';
  OpImageSampleProjExplicitLod:Result:='OpImageSampleProjExplicitLod';
  OpImageSampleProjDrefImplicitLod:Result:='OpImageSampleProjDrefImplicitLod';
  OpImageSampleProjDrefExplicitLod:Result:='OpImageSampleProjDrefExplicitLod';
  OpImageFetch:Result:='OpImageFetch';
  OpImageGather:Result:='OpImageGather';
  OpImageDrefGather:Result:='OpImageDrefGather';
  OpImageRead:Result:='OpImageRead';
  OpImageWrite:Result:='OpImageWrite';
  OpImage:Result:='OpImage';
  OpImageQueryFormat:Result:='OpImageQueryFormat';
  OpImageQueryOrder:Result:='OpImageQueryOrder';
  OpImageQuerySizeLod:Result:='OpImageQuerySizeLod';
  OpImageQuerySize:Result:='OpImageQuerySize';
  OpImageQueryLod:Result:='OpImageQueryLod';
  OpImageQueryLevels:Result:='OpImageQueryLevels';
  OpImageQuerySamples:Result:='OpImageQuerySamples';
  OpConvertFToU:Result:='OpConvertFToU';
  OpConvertFToS:Result:='OpConvertFToS';
  OpConvertSToF:Result:='OpConvertSToF';
  OpConvertUToF:Result:='OpConvertUToF';
  OpUConvert:Result:='OpUConvert';
  OpSConvert:Result:='OpSConvert';
  OpFConvert:Result:='OpFConvert';
  OpQuantizeToF16:Result:='OpQuantizeToF16';
  OpConvertPtrToU:Result:='OpConvertPtrToU';
  OpSatConvertSToU:Result:='OpSatConvertSToU';
  OpSatConvertUToS:Result:='OpSatConvertUToS';
  OpConvertUToPtr:Result:='OpConvertUToPtr';
  OpPtrCastToGeneric:Result:='OpPtrCastToGeneric';
  OpGenericCastToPtr:Result:='OpGenericCastToPtr';
  OpGenericCastToPtrExplicit:Result:='OpGenericCastToPtrExplicit';
  OpBitcast:Result:='OpBitcast';
  OpSNegate:Result:='OpSNegate';
  OpFNegate:Result:='OpFNegate';
  OpIAdd:Result:='OpIAdd';
  OpFAdd:Result:='OpFAdd';
  OpISub:Result:='OpISub';
  OpFSub:Result:='OpFSub';
  OpIMul:Result:='OpIMul';
  OpFMul:Result:='OpFMul';
  OpUDiv:Result:='OpUDiv';
  OpSDiv:Result:='OpSDiv';
  OpFDiv:Result:='OpFDiv';
  OpUMod:Result:='OpUMod';
  OpSRem:Result:='OpSRem';
  OpSMod:Result:='OpSMod';
  OpFRem:Result:='OpFRem';
  OpFMod:Result:='OpFMod';
  OpVectorTimesScalar:Result:='OpVectorTimesScalar';
  OpMatrixTimesScalar:Result:='OpMatrixTimesScalar';
  OpVectorTimesMatrix:Result:='OpVectorTimesMatrix';
  OpMatrixTimesVector:Result:='OpMatrixTimesVector';
  OpMatrixTimesMatrix:Result:='OpMatrixTimesMatrix';
  OpOuterProduct:Result:='OpOuterProduct';
  OpDot:Result:='OpDot';
  OpIAddCarry:Result:='OpIAddCarry';
  OpISubBorrow:Result:='OpISubBorrow';
  OpUMulExtended:Result:='OpUMulExtended';
  OpSMulExtended:Result:='OpSMulExtended';
  OpAny:Result:='OpAny';
  OpAll:Result:='OpAll';
  OpIsNan:Result:='OpIsNan';
  OpIsInf:Result:='OpIsInf';
  OpIsFinite:Result:='OpIsFinite';
  OpIsNormal:Result:='OpIsNormal';
  OpSignBitSet:Result:='OpSignBitSet';
  OpLessOrGreater:Result:='OpLessOrGreater';
  OpOrdered:Result:='OpOrdered';
  OpUnordered:Result:='OpUnordered';
  OpLogicalEqual:Result:='OpLogicalEqual';
  OpLogicalNotEqual:Result:='OpLogicalNotEqual';
  OpLogicalOr:Result:='OpLogicalOr';
  OpLogicalAnd:Result:='OpLogicalAnd';
  OpLogicalNot:Result:='OpLogicalNot';
  OpSelect:Result:='OpSelect';
  OpIEqual:Result:='OpIEqual';
  OpINotEqual:Result:='OpINotEqual';
  OpUGreaterThan:Result:='OpUGreaterThan';
  OpSGreaterThan:Result:='OpSGreaterThan';
  OpUGreaterThanEqual:Result:='OpUGreaterThanEqual';
  OpSGreaterThanEqual:Result:='OpSGreaterThanEqual';
  OpULessThan:Result:='OpULessThan';
  OpSLessThan:Result:='OpSLessThan';
  OpULessThanEqual:Result:='OpULessThanEqual';
  OpSLessThanEqual:Result:='OpSLessThanEqual';
  OpFOrdEqual:Result:='OpFOrdEqual';
  OpFUnordEqual:Result:='OpFUnordEqual';
  OpFOrdNotEqual:Result:='OpFOrdNotEqual';
  OpFUnordNotEqual:Result:='OpFUnordNotEqual';
  OpFOrdLessThan:Result:='OpFOrdLessThan';
  OpFUnordLessThan:Result:='OpFUnordLessThan';
  OpFOrdGreaterThan:Result:='OpFOrdGreaterThan';
  OpFUnordGreaterThan:Result:='OpFUnordGreaterThan';
  OpFOrdLessThanEqual:Result:='OpFOrdLessThanEqual';
  OpFUnordLessThanEqual:Result:='OpFUnordLessThanEqual';
  OpFOrdGreaterThanEqual:Result:='OpFOrdGreaterThanEqual';
  OpFUnordGreaterThanEqual:Result:='OpFUnordGreaterThanEqual';
  OpShiftRightLogical:Result:='OpShiftRightLogical';
  OpShiftRightArithmetic:Result:='OpShiftRightArithmetic';
  OpShiftLeftLogical:Result:='OpShiftLeftLogical';
  OpBitwiseOr:Result:='OpBitwiseOr';
  OpBitwiseXor:Result:='OpBitwiseXor';
  OpBitwiseAnd:Result:='OpBitwiseAnd';
  OpNot:Result:='OpNot';
  OpBitFieldInsert:Result:='OpBitFieldInsert';
  OpBitFieldSExtract:Result:='OpBitFieldSExtract';
  OpBitFieldUExtract:Result:='OpBitFieldUExtract';
  OpBitReverse:Result:='OpBitReverse';
  OpBitCount:Result:='OpBitCount';
  OpDPdx:Result:='OpDPdx';
  OpDPdy:Result:='OpDPdy';
  OpFwidth:Result:='OpFwidth';
  OpDPdxFine:Result:='OpDPdxFine';
  OpDPdyFine:Result:='OpDPdyFine';
  OpFwidthFine:Result:='OpFwidthFine';
  OpDPdxCoarse:Result:='OpDPdxCoarse';
  OpDPdyCoarse:Result:='OpDPdyCoarse';
  OpFwidthCoarse:Result:='OpFwidthCoarse';
  OpEmitVertex:Result:='OpEmitVertex';
  OpEndPrimitive:Result:='OpEndPrimitive';
  OpEmitStreamVertex:Result:='OpEmitStreamVertex';
  OpEndStreamPrimitive:Result:='OpEndStreamPrimitive';
  OpControlBarrier:Result:='OpControlBarrier';
  OpMemoryBarrier:Result:='OpMemoryBarrier';
  OpAtomicLoad:Result:='OpAtomicLoad';
  OpAtomicStore:Result:='OpAtomicStore';
  OpAtomicExchange:Result:='OpAtomicExchange';
  OpAtomicCompareExchange:Result:='OpAtomicCompareExchange';
  OpAtomicCompareExchangeWeak:Result:='OpAtomicCompareExchangeWeak';
  OpAtomicIIncrement:Result:='OpAtomicIIncrement';
  OpAtomicIDecrement:Result:='OpAtomicIDecrement';
  OpAtomicIAdd:Result:='OpAtomicIAdd';
  OpAtomicISub:Result:='OpAtomicISub';
  OpAtomicSMin:Result:='OpAtomicSMin';
  OpAtomicUMin:Result:='OpAtomicUMin';
  OpAtomicSMax:Result:='OpAtomicSMax';
  OpAtomicUMax:Result:='OpAtomicUMax';
  OpAtomicAnd:Result:='OpAtomicAnd';
  OpAtomicOr:Result:='OpAtomicOr';
  OpAtomicXor:Result:='OpAtomicXor';
  OpPhi:Result:='OpPhi';
  OpLoopMerge:Result:='OpLoopMerge';
  OpSelectionMerge:Result:='OpSelectionMerge';
  OpLabel:Result:='OpLabel';
  OpBranch:Result:='OpBranch';
  OpBranchConditional:Result:='OpBranchConditional';
  OpSwitch:Result:='OpSwitch';
  OpKill:Result:='OpKill';
  OpReturn:Result:='OpReturn';
  OpReturnValue:Result:='OpReturnValue';
  OpUnreachable:Result:='OpUnreachable';
  OpLifetimeStart:Result:='OpLifetimeStart';
  OpLifetimeStop:Result:='OpLifetimeStop';
  OpGroupAsyncCopy:Result:='OpGroupAsyncCopy';
  OpGroupWaitEvents:Result:='OpGroupWaitEvents';
  OpGroupAll:Result:='OpGroupAll';
  OpGroupAny:Result:='OpGroupAny';
  OpGroupBroadcast:Result:='OpGroupBroadcast';
  OpGroupIAdd:Result:='OpGroupIAdd';
  OpGroupFAdd:Result:='OpGroupFAdd';
  OpGroupFMin:Result:='OpGroupFMin';
  OpGroupUMin:Result:='OpGroupUMin';
  OpGroupSMin:Result:='OpGroupSMin';
  OpGroupFMax:Result:='OpGroupFMax';
  OpGroupUMax:Result:='OpGroupUMax';
  OpGroupSMax:Result:='OpGroupSMax';
  OpReadPipe:Result:='OpReadPipe';
  OpWritePipe:Result:='OpWritePipe';
  OpReservedReadPipe:Result:='OpReservedReadPipe';
  OpReservedWritePipe:Result:='OpReservedWritePipe';
  OpReserveReadPipePackets:Result:='OpReserveReadPipePackets';
  OpReserveWritePipePackets:Result:='OpReserveWritePipePackets';
  OpCommitReadPipe:Result:='OpCommitReadPipe';
  OpCommitWritePipe:Result:='OpCommitWritePipe';
  OpIsValidReserveId:Result:='OpIsValidReserveId';
  OpGetNumPipePackets:Result:='OpGetNumPipePackets';
  OpGetMaxPipePackets:Result:='OpGetMaxPipePackets';
  OpGroupReserveReadPipePackets:Result:='OpGroupReserveReadPipePackets';
  OpGroupReserveWritePipePackets:Result:='OpGroupReserveWritePipePackets';
  OpGroupCommitReadPipe:Result:='OpGroupCommitReadPipe';
  OpGroupCommitWritePipe:Result:='OpGroupCommitWritePipe';
  OpEnqueueMarker:Result:='OpEnqueueMarker';
  OpEnqueueKernel:Result:='OpEnqueueKernel';
  OpGetKernelNDrangeSubGroupCount:Result:='OpGetKernelNDrangeSubGroupCount';
  OpGetKernelNDrangeMaxSubGroupSize:Result:='OpGetKernelNDrangeMaxSubGroupSize';
  OpGetKernelWorkGroupSize:Result:='OpGetKernelWorkGroupSize';
  OpGetKernelPreferredWorkGroupSizeMultiple:Result:='OpGetKernelPreferredWorkGroupSizeMultiple';
  OpRetainEvent:Result:='OpRetainEvent';
  OpReleaseEvent:Result:='OpReleaseEvent';
  OpCreateUserEvent:Result:='OpCreateUserEvent';
  OpIsValidEvent:Result:='OpIsValidEvent';
  OpSetUserEventStatus:Result:='OpSetUserEventStatus';
  OpCaptureEventProfilingInfo:Result:='OpCaptureEventProfilingInfo';
  OpGetDefaultQueue:Result:='OpGetDefaultQueue';
  OpBuildNDRange:Result:='OpBuildNDRange';
  OpImageSparseSampleImplicitLod:Result:='OpImageSparseSampleImplicitLod';
  OpImageSparseSampleExplicitLod:Result:='OpImageSparseSampleExplicitLod';
  OpImageSparseSampleDrefImplicitLod:Result:='OpImageSparseSampleDrefImplicitLod';
  OpImageSparseSampleDrefExplicitLod:Result:='OpImageSparseSampleDrefExplicitLod';
  OpImageSparseSampleProjImplicitLod:Result:='OpImageSparseSampleProjImplicitLod';
  OpImageSparseSampleProjExplicitLod:Result:='OpImageSparseSampleProjExplicitLod';
  OpImageSparseSampleProjDrefImplicitLod:Result:='OpImageSparseSampleProjDrefImplicitLod';
  OpImageSparseSampleProjDrefExplicitLod:Result:='OpImageSparseSampleProjDrefExplicitLod';
  OpImageSparseFetch:Result:='OpImageSparseFetch';
  OpImageSparseGather:Result:='OpImageSparseGather';
  OpImageSparseDrefGather:Result:='OpImageSparseDrefGather';
  OpImageSparseTexelsResident:Result:='OpImageSparseTexelsResident';
  OpNoLine:Result:='OpNoLine';
  OpAtomicFlagTestAndSet:Result:='OpAtomicFlagTestAndSet';
  OpAtomicFlagClear:Result:='OpAtomicFlagClear';
  OpImageSparseRead:Result:='OpImageSparseRead';
  OpSizeOf:Result:='OpSizeOf';
  OpTypePipeStorage:Result:='OpTypePipeStorage';
  OpConstantPipeStorage:Result:='OpConstantPipeStorage';
  OpCreatePipeFromPipeStorage:Result:='OpCreatePipeFromPipeStorage';
  OpGetKernelLocalSizeForSubgroupCount:Result:='OpGetKernelLocalSizeForSubgroupCount';
  OpGetKernelMaxNumSubgroups:Result:='OpGetKernelMaxNumSubgroups';
  OpTypeNamedBarrier:Result:='OpTypeNamedBarrier';
  OpNamedBarrierInitialize:Result:='OpNamedBarrierInitialize';
  OpMemoryNamedBarrier:Result:='OpMemoryNamedBarrier';
  OpModuleProcessed:Result:='OpModuleProcessed';
  OpExecutionModeId:Result:='OpExecutionModeId';
  OpDecorateId:Result:='OpDecorateId';
  OpGroupNonUniformElect:Result:='OpGroupNonUniformElect';
  OpGroupNonUniformAll:Result:='OpGroupNonUniformAll';
  OpGroupNonUniformAny:Result:='OpGroupNonUniformAny';
  OpGroupNonUniformAllEqual:Result:='OpGroupNonUniformAllEqual';
  OpGroupNonUniformBroadcast:Result:='OpGroupNonUniformBroadcast';
  OpGroupNonUniformBroadcastFirst:Result:='OpGroupNonUniformBroadcastFirst';
  OpGroupNonUniformBallot:Result:='OpGroupNonUniformBallot';
  OpGroupNonUniformInverseBallot:Result:='OpGroupNonUniformInverseBallot';
  OpGroupNonUniformBallotBitExtract:Result:='OpGroupNonUniformBallotBitExtract';
  OpGroupNonUniformBallotBitCount:Result:='OpGroupNonUniformBallotBitCount';
  OpGroupNonUniformBallotFindLSB:Result:='OpGroupNonUniformBallotFindLSB';
  OpGroupNonUniformBallotFindMSB:Result:='OpGroupNonUniformBallotFindMSB';
  OpGroupNonUniformShuffle:Result:='OpGroupNonUniformShuffle';
  OpGroupNonUniformShuffleXor:Result:='OpGroupNonUniformShuffleXor';
  OpGroupNonUniformShuffleUp:Result:='OpGroupNonUniformShuffleUp';
  OpGroupNonUniformShuffleDown:Result:='OpGroupNonUniformShuffleDown';
  OpGroupNonUniformIAdd:Result:='OpGroupNonUniformIAdd';
  OpGroupNonUniformFAdd:Result:='OpGroupNonUniformFAdd';
  OpGroupNonUniformIMul:Result:='OpGroupNonUniformIMul';
  OpGroupNonUniformFMul:Result:='OpGroupNonUniformFMul';
  OpGroupNonUniformSMin:Result:='OpGroupNonUniformSMin';
  OpGroupNonUniformUMin:Result:='OpGroupNonUniformUMin';
  OpGroupNonUniformFMin:Result:='OpGroupNonUniformFMin';
  OpGroupNonUniformSMax:Result:='OpGroupNonUniformSMax';
  OpGroupNonUniformUMax:Result:='OpGroupNonUniformUMax';
  OpGroupNonUniformFMax:Result:='OpGroupNonUniformFMax';
  OpGroupNonUniformBitwiseAnd:Result:='OpGroupNonUniformBitwiseAnd';
  OpGroupNonUniformBitwiseOr:Result:='OpGroupNonUniformBitwiseOr';
  OpGroupNonUniformBitwiseXor:Result:='OpGroupNonUniformBitwiseXor';
  OpGroupNonUniformLogicalAnd:Result:='OpGroupNonUniformLogicalAnd';
  OpGroupNonUniformLogicalOr:Result:='OpGroupNonUniformLogicalOr';
  OpGroupNonUniformLogicalXor:Result:='OpGroupNonUniformLogicalXor';
  OpGroupNonUniformQuadBroadcast:Result:='OpGroupNonUniformQuadBroadcast';
  OpGroupNonUniformQuadSwap:Result:='OpGroupNonUniformQuadSwap';
  OpCopyLogical:Result:='OpCopyLogical';
  OpPtrEqual:Result:='OpPtrEqual';
  OpPtrNotEqual:Result:='OpPtrNotEqual';
  OpPtrDiff:Result:='OpPtrDiff';
  OpTerminateInvocation:Result:='OpTerminateInvocation';
  OpSubgroupBallotKHR:Result:='OpSubgroupBallotKHR';
  OpSubgroupFirstInvocationKHR:Result:='OpSubgroupFirstInvocationKHR';
  OpSubgroupAllKHR:Result:='OpSubgroupAllKHR';
  OpSubgroupAnyKHR:Result:='OpSubgroupAnyKHR';
  OpSubgroupAllEqualKHR:Result:='OpSubgroupAllEqualKHR';
  OpSubgroupReadInvocationKHR:Result:='OpSubgroupReadInvocationKHR';
  OpTraceRayKHR:Result:='OpTraceRayKHR';
  OpExecuteCallableKHR:Result:='OpExecuteCallableKHR';
  OpConvertUToAccelerationStructureKHR:Result:='OpConvertUToAccelerationStructureKHR';
  OpIgnoreIntersectionKHR:Result:='OpIgnoreIntersectionKHR';
  OpTerminateRayKHR:Result:='OpTerminateRayKHR';
  OpSDot:Result:='OpSDot';
  OpUDot:Result:='OpUDot';
  OpSUDot:Result:='OpSUDot';
  OpSDotAccSat:Result:='OpSDotAccSat';
  OpUDotAccSat:Result:='OpUDotAccSat';
  OpSUDotAccSat:Result:='OpSUDotAccSat';
  OpTypeRayQueryKHR:Result:='OpTypeRayQueryKHR';
  OpRayQueryInitializeKHR:Result:='OpRayQueryInitializeKHR';
  OpRayQueryTerminateKHR:Result:='OpRayQueryTerminateKHR';
  OpRayQueryGenerateIntersectionKHR:Result:='OpRayQueryGenerateIntersectionKHR';
  OpRayQueryConfirmIntersectionKHR:Result:='OpRayQueryConfirmIntersectionKHR';
  OpRayQueryProceedKHR:Result:='OpRayQueryProceedKHR';
  OpRayQueryGetIntersectionTypeKHR:Result:='OpRayQueryGetIntersectionTypeKHR';
  OpGroupIAddNonUniformAMD:Result:='OpGroupIAddNonUniformAMD';
  OpGroupFAddNonUniformAMD:Result:='OpGroupFAddNonUniformAMD';
  OpGroupFMinNonUniformAMD:Result:='OpGroupFMinNonUniformAMD';
  OpGroupUMinNonUniformAMD:Result:='OpGroupUMinNonUniformAMD';
  OpGroupSMinNonUniformAMD:Result:='OpGroupSMinNonUniformAMD';
  OpGroupFMaxNonUniformAMD:Result:='OpGroupFMaxNonUniformAMD';
  OpGroupUMaxNonUniformAMD:Result:='OpGroupUMaxNonUniformAMD';
  OpGroupSMaxNonUniformAMD:Result:='OpGroupSMaxNonUniformAMD';
  OpFragmentMaskFetchAMD:Result:='OpFragmentMaskFetchAMD';
  OpFragmentFetchAMD:Result:='OpFragmentFetchAMD';
  OpReadClockKHR:Result:='OpReadClockKHR';
  OpImageSampleFootprintNV:Result:='OpImageSampleFootprintNV';
  OpGroupNonUniformPartitionNV:Result:='OpGroupNonUniformPartitionNV';
  OpWritePackedPrimitiveIndices4x8NV:Result:='OpWritePackedPrimitiveIndices4x8NV';
  OpReportIntersectionKHR:Result:='OpReportIntersectionKHR';
  OpIgnoreIntersectionNV:Result:='OpIgnoreIntersectionNV';
  OpTerminateRayNV:Result:='OpTerminateRayNV';
  OpTraceNV:Result:='OpTraceNV';
  OpTraceMotionNV:Result:='OpTraceMotionNV';
  OpTraceRayMotionNV:Result:='OpTraceRayMotionNV';
  OpTypeAccelerationStructureKHR:Result:='OpTypeAccelerationStructureKHR';
  OpExecuteCallableNV:Result:='OpExecuteCallableNV';
  OpTypeCooperativeMatrixNV:Result:='OpTypeCooperativeMatrixNV';
  OpCooperativeMatrixLoadNV:Result:='OpCooperativeMatrixLoadNV';
  OpCooperativeMatrixStoreNV:Result:='OpCooperativeMatrixStoreNV';
  OpCooperativeMatrixMulAddNV:Result:='OpCooperativeMatrixMulAddNV';
  OpCooperativeMatrixLengthNV:Result:='OpCooperativeMatrixLengthNV';
  OpBeginInvocationInterlockEXT:Result:='OpBeginInvocationInterlockEXT';
  OpEndInvocationInterlockEXT:Result:='OpEndInvocationInterlockEXT';
  OpDemoteToHelperInvocation:Result:='OpDemoteToHelperInvocation';
  OpIsHelperInvocationEXT:Result:='OpIsHelperInvocationEXT';
  OpConvertUToImageNV:Result:='OpConvertUToImageNV';
  OpConvertUToSamplerNV:Result:='OpConvertUToSamplerNV';
  OpConvertImageToUNV:Result:='OpConvertImageToUNV';
  OpConvertSamplerToUNV:Result:='OpConvertSamplerToUNV';
  OpConvertUToSampledImageNV:Result:='OpConvertUToSampledImageNV';
  OpConvertSampledImageToUNV:Result:='OpConvertSampledImageToUNV';
  OpSamplerImageAddressingModeNV:Result:='OpSamplerImageAddressingModeNV';
  OpSubgroupShuffleINTEL:Result:='OpSubgroupShuffleINTEL';
  OpSubgroupShuffleDownINTEL:Result:='OpSubgroupShuffleDownINTEL';
  OpSubgroupShuffleUpINTEL:Result:='OpSubgroupShuffleUpINTEL';
  OpSubgroupShuffleXorINTEL:Result:='OpSubgroupShuffleXorINTEL';
  OpSubgroupBlockReadINTEL:Result:='OpSubgroupBlockReadINTEL';
  OpSubgroupBlockWriteINTEL:Result:='OpSubgroupBlockWriteINTEL';
  OpSubgroupImageBlockReadINTEL:Result:='OpSubgroupImageBlockReadINTEL';
  OpSubgroupImageBlockWriteINTEL:Result:='OpSubgroupImageBlockWriteINTEL';
  OpSubgroupImageMediaBlockReadINTEL:Result:='OpSubgroupImageMediaBlockReadINTEL';
  OpSubgroupImageMediaBlockWriteINTEL:Result:='OpSubgroupImageMediaBlockWriteINTEL';
  OpUCountLeadingZerosINTEL:Result:='OpUCountLeadingZerosINTEL';
  OpUCountTrailingZerosINTEL:Result:='OpUCountTrailingZerosINTEL';
  OpAbsISubINTEL:Result:='OpAbsISubINTEL';
  OpAbsUSubINTEL:Result:='OpAbsUSubINTEL';
  OpIAddSatINTEL:Result:='OpIAddSatINTEL';
  OpUAddSatINTEL:Result:='OpUAddSatINTEL';
  OpIAverageINTEL:Result:='OpIAverageINTEL';
  OpUAverageINTEL:Result:='OpUAverageINTEL';
  OpIAverageRoundedINTEL:Result:='OpIAverageRoundedINTEL';
  OpUAverageRoundedINTEL:Result:='OpUAverageRoundedINTEL';
  OpISubSatINTEL:Result:='OpISubSatINTEL';
  OpUSubSatINTEL:Result:='OpUSubSatINTEL';
  OpIMul32x16INTEL:Result:='OpIMul32x16INTEL';
  OpUMul32x16INTEL:Result:='OpUMul32x16INTEL';
  OpConstantFunctionPointerINTEL:Result:='OpConstantFunctionPointerINTEL';
  OpFunctionPointerCallINTEL:Result:='OpFunctionPointerCallINTEL';
  OpAsmTargetINTEL:Result:='OpAsmTargetINTEL';
  OpAsmINTEL:Result:='OpAsmINTEL';
  OpAsmCallINTEL:Result:='OpAsmCallINTEL';
  OpAtomicFMinEXT:Result:='OpAtomicFMinEXT';
  OpAtomicFMaxEXT:Result:='OpAtomicFMaxEXT';
  OpAssumeTrueKHR:Result:='OpAssumeTrueKHR';
  OpExpectKHR:Result:='OpExpectKHR';
  OpDecorateString:Result:='OpDecorateString';
  OpMemberDecorateString:Result:='OpMemberDecorateString';
  OpVmeImageINTEL:Result:='OpVmeImageINTEL';
  OpTypeVmeImageINTEL:Result:='OpTypeVmeImageINTEL';
  OpTypeAvcImePayloadINTEL:Result:='OpTypeAvcImePayloadINTEL';
  OpTypeAvcRefPayloadINTEL:Result:='OpTypeAvcRefPayloadINTEL';
  OpTypeAvcSicPayloadINTEL:Result:='OpTypeAvcSicPayloadINTEL';
  OpTypeAvcMcePayloadINTEL:Result:='OpTypeAvcMcePayloadINTEL';
  OpTypeAvcMceResultINTEL:Result:='OpTypeAvcMceResultINTEL';
  OpTypeAvcImeResultINTEL:Result:='OpTypeAvcImeResultINTEL';
  OpTypeAvcImeResultSingleReferenceStreamoutINTEL:Result:='OpTypeAvcImeResultSingleReferenceStreamoutINTEL';
  OpTypeAvcImeResultDualReferenceStreamoutINTEL:Result:='OpTypeAvcImeResultDualReferenceStreamoutINTEL';
  OpTypeAvcImeSingleReferenceStreaminINTEL:Result:='OpTypeAvcImeSingleReferenceStreaminINTEL';
  OpTypeAvcImeDualReferenceStreaminINTEL:Result:='OpTypeAvcImeDualReferenceStreaminINTEL';
  OpTypeAvcRefResultINTEL:Result:='OpTypeAvcRefResultINTEL';
  OpTypeAvcSicResultINTEL:Result:='OpTypeAvcSicResultINTEL';
  OpSubgroupAvcMceGetDefaultInterBaseMultiReferencePenaltyINTEL:Result:='OpSubgroupAvcMceGetDefaultInterBaseMultiReferencePenaltyINTEL';
  OpSubgroupAvcMceSetInterBaseMultiReferencePenaltyINTEL:Result:='OpSubgroupAvcMceSetInterBaseMultiReferencePenaltyINTEL';
  OpSubgroupAvcMceGetDefaultInterShapePenaltyINTEL:Result:='OpSubgroupAvcMceGetDefaultInterShapePenaltyINTEL';
  OpSubgroupAvcMceSetInterShapePenaltyINTEL:Result:='OpSubgroupAvcMceSetInterShapePenaltyINTEL';
  OpSubgroupAvcMceGetDefaultInterDirectionPenaltyINTEL:Result:='OpSubgroupAvcMceGetDefaultInterDirectionPenaltyINTEL';
  OpSubgroupAvcMceSetInterDirectionPenaltyINTEL:Result:='OpSubgroupAvcMceSetInterDirectionPenaltyINTEL';
  OpSubgroupAvcMceGetDefaultIntraLumaShapePenaltyINTEL:Result:='OpSubgroupAvcMceGetDefaultIntraLumaShapePenaltyINTEL';
  OpSubgroupAvcMceGetDefaultInterMotionVectorCostTableINTEL:Result:='OpSubgroupAvcMceGetDefaultInterMotionVectorCostTableINTEL';
  OpSubgroupAvcMceGetDefaultHighPenaltyCostTableINTEL:Result:='OpSubgroupAvcMceGetDefaultHighPenaltyCostTableINTEL';
  OpSubgroupAvcMceGetDefaultMediumPenaltyCostTableINTEL:Result:='OpSubgroupAvcMceGetDefaultMediumPenaltyCostTableINTEL';
  OpSubgroupAvcMceGetDefaultLowPenaltyCostTableINTEL:Result:='OpSubgroupAvcMceGetDefaultLowPenaltyCostTableINTEL';
  OpSubgroupAvcMceSetMotionVectorCostFunctionINTEL:Result:='OpSubgroupAvcMceSetMotionVectorCostFunctionINTEL';
  OpSubgroupAvcMceGetDefaultIntraLumaModePenaltyINTEL:Result:='OpSubgroupAvcMceGetDefaultIntraLumaModePenaltyINTEL';
  OpSubgroupAvcMceGetDefaultNonDcLumaIntraPenaltyINTEL:Result:='OpSubgroupAvcMceGetDefaultNonDcLumaIntraPenaltyINTEL';
  OpSubgroupAvcMceGetDefaultIntraChromaModeBasePenaltyINTEL:Result:='OpSubgroupAvcMceGetDefaultIntraChromaModeBasePenaltyINTEL';
  OpSubgroupAvcMceSetAcOnlyHaarINTEL:Result:='OpSubgroupAvcMceSetAcOnlyHaarINTEL';
  OpSubgroupAvcMceSetSourceInterlacedFieldPolarityINTEL:Result:='OpSubgroupAvcMceSetSourceInterlacedFieldPolarityINTEL';
  OpSubgroupAvcMceSetSingleReferenceInterlacedFieldPolarityINTEL:Result:='OpSubgroupAvcMceSetSingleReferenceInterlacedFieldPolarityINTEL';
  OpSubgroupAvcMceSetDualReferenceInterlacedFieldPolaritiesINTEL:Result:='OpSubgroupAvcMceSetDualReferenceInterlacedFieldPolaritiesINTEL';
  OpSubgroupAvcMceConvertToImePayloadINTEL:Result:='OpSubgroupAvcMceConvertToImePayloadINTEL';
  OpSubgroupAvcMceConvertToImeResultINTEL:Result:='OpSubgroupAvcMceConvertToImeResultINTEL';
  OpSubgroupAvcMceConvertToRefPayloadINTEL:Result:='OpSubgroupAvcMceConvertToRefPayloadINTEL';
  OpSubgroupAvcMceConvertToRefResultINTEL:Result:='OpSubgroupAvcMceConvertToRefResultINTEL';
  OpSubgroupAvcMceConvertToSicPayloadINTEL:Result:='OpSubgroupAvcMceConvertToSicPayloadINTEL';
  OpSubgroupAvcMceConvertToSicResultINTEL:Result:='OpSubgroupAvcMceConvertToSicResultINTEL';
  OpSubgroupAvcMceGetMotionVectorsINTEL:Result:='OpSubgroupAvcMceGetMotionVectorsINTEL';
  OpSubgroupAvcMceGetInterDistortionsINTEL:Result:='OpSubgroupAvcMceGetInterDistortionsINTEL';
  OpSubgroupAvcMceGetBestInterDistortionsINTEL:Result:='OpSubgroupAvcMceGetBestInterDistortionsINTEL';
  OpSubgroupAvcMceGetInterMajorShapeINTEL:Result:='OpSubgroupAvcMceGetInterMajorShapeINTEL';
  OpSubgroupAvcMceGetInterMinorShapeINTEL:Result:='OpSubgroupAvcMceGetInterMinorShapeINTEL';
  OpSubgroupAvcMceGetInterDirectionsINTEL:Result:='OpSubgroupAvcMceGetInterDirectionsINTEL';
  OpSubgroupAvcMceGetInterMotionVectorCountINTEL:Result:='OpSubgroupAvcMceGetInterMotionVectorCountINTEL';
  OpSubgroupAvcMceGetInterReferenceIdsINTEL:Result:='OpSubgroupAvcMceGetInterReferenceIdsINTEL';
  OpSubgroupAvcMceGetInterReferenceInterlacedFieldPolaritiesINTEL:Result:='OpSubgroupAvcMceGetInterReferenceInterlacedFieldPolaritiesINTEL';
  OpSubgroupAvcImeInitializeINTEL:Result:='OpSubgroupAvcImeInitializeINTEL';
  OpSubgroupAvcImeSetSingleReferenceINTEL:Result:='OpSubgroupAvcImeSetSingleReferenceINTEL';
  OpSubgroupAvcImeSetDualReferenceINTEL:Result:='OpSubgroupAvcImeSetDualReferenceINTEL';
  OpSubgroupAvcImeRefWindowSizeINTEL:Result:='OpSubgroupAvcImeRefWindowSizeINTEL';
  OpSubgroupAvcImeAdjustRefOffsetINTEL:Result:='OpSubgroupAvcImeAdjustRefOffsetINTEL';
  OpSubgroupAvcImeConvertToMcePayloadINTEL:Result:='OpSubgroupAvcImeConvertToMcePayloadINTEL';
  OpSubgroupAvcImeSetMaxMotionVectorCountINTEL:Result:='OpSubgroupAvcImeSetMaxMotionVectorCountINTEL';
  OpSubgroupAvcImeSetUnidirectionalMixDisableINTEL:Result:='OpSubgroupAvcImeSetUnidirectionalMixDisableINTEL';
  OpSubgroupAvcImeSetEarlySearchTerminationThresholdINTEL:Result:='OpSubgroupAvcImeSetEarlySearchTerminationThresholdINTEL';
  OpSubgroupAvcImeSetWeightedSadINTEL:Result:='OpSubgroupAvcImeSetWeightedSadINTEL';
  OpSubgroupAvcImeEvaluateWithSingleReferenceINTEL:Result:='OpSubgroupAvcImeEvaluateWithSingleReferenceINTEL';
  OpSubgroupAvcImeEvaluateWithDualReferenceINTEL:Result:='OpSubgroupAvcImeEvaluateWithDualReferenceINTEL';
  OpSubgroupAvcImeEvaluateWithSingleReferenceStreaminINTEL:Result:='OpSubgroupAvcImeEvaluateWithSingleReferenceStreaminINTEL';
  OpSubgroupAvcImeEvaluateWithDualReferenceStreaminINTEL:Result:='OpSubgroupAvcImeEvaluateWithDualReferenceStreaminINTEL';
  OpSubgroupAvcImeEvaluateWithSingleReferenceStreamoutINTEL:Result:='OpSubgroupAvcImeEvaluateWithSingleReferenceStreamoutINTEL';
  OpSubgroupAvcImeEvaluateWithDualReferenceStreamoutINTEL:Result:='OpSubgroupAvcImeEvaluateWithDualReferenceStreamoutINTEL';
  OpSubgroupAvcImeEvaluateWithSingleReferenceStreaminoutINTEL:Result:='OpSubgroupAvcImeEvaluateWithSingleReferenceStreaminoutINTEL';
  OpSubgroupAvcImeEvaluateWithDualReferenceStreaminoutINTEL:Result:='OpSubgroupAvcImeEvaluateWithDualReferenceStreaminoutINTEL';
  OpSubgroupAvcImeConvertToMceResultINTEL:Result:='OpSubgroupAvcImeConvertToMceResultINTEL';
  OpSubgroupAvcImeGetSingleReferenceStreaminINTEL:Result:='OpSubgroupAvcImeGetSingleReferenceStreaminINTEL';
  OpSubgroupAvcImeGetDualReferenceStreaminINTEL:Result:='OpSubgroupAvcImeGetDualReferenceStreaminINTEL';
  OpSubgroupAvcImeStripSingleReferenceStreamoutINTEL:Result:='OpSubgroupAvcImeStripSingleReferenceStreamoutINTEL';
  OpSubgroupAvcImeStripDualReferenceStreamoutINTEL:Result:='OpSubgroupAvcImeStripDualReferenceStreamoutINTEL';
  OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeMotionVectorsINTEL:Result:='OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeMotionVectorsINTEL';
  OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeDistortionsINTEL:Result:='OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeDistortionsINTEL';
  OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeReferenceIdsINTEL:Result:='OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeReferenceIdsINTEL';
  OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeMotionVectorsINTEL:Result:='OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeMotionVectorsINTEL';
  OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeDistortionsINTEL:Result:='OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeDistortionsINTEL';
  OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeReferenceIdsINTEL:Result:='OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeReferenceIdsINTEL';
  OpSubgroupAvcImeGetBorderReachedINTEL:Result:='OpSubgroupAvcImeGetBorderReachedINTEL';
  OpSubgroupAvcImeGetTruncatedSearchIndicationINTEL:Result:='OpSubgroupAvcImeGetTruncatedSearchIndicationINTEL';
  OpSubgroupAvcImeGetUnidirectionalEarlySearchTerminationINTEL:Result:='OpSubgroupAvcImeGetUnidirectionalEarlySearchTerminationINTEL';
  OpSubgroupAvcImeGetWeightingPatternMinimumMotionVectorINTEL:Result:='OpSubgroupAvcImeGetWeightingPatternMinimumMotionVectorINTEL';
  OpSubgroupAvcImeGetWeightingPatternMinimumDistortionINTEL:Result:='OpSubgroupAvcImeGetWeightingPatternMinimumDistortionINTEL';
  OpSubgroupAvcFmeInitializeINTEL:Result:='OpSubgroupAvcFmeInitializeINTEL';
  OpSubgroupAvcBmeInitializeINTEL:Result:='OpSubgroupAvcBmeInitializeINTEL';
  OpSubgroupAvcRefConvertToMcePayloadINTEL:Result:='OpSubgroupAvcRefConvertToMcePayloadINTEL';
  OpSubgroupAvcRefSetBidirectionalMixDisableINTEL:Result:='OpSubgroupAvcRefSetBidirectionalMixDisableINTEL';
  OpSubgroupAvcRefSetBilinearFilterEnableINTEL:Result:='OpSubgroupAvcRefSetBilinearFilterEnableINTEL';
  OpSubgroupAvcRefEvaluateWithSingleReferenceINTEL:Result:='OpSubgroupAvcRefEvaluateWithSingleReferenceINTEL';
  OpSubgroupAvcRefEvaluateWithDualReferenceINTEL:Result:='OpSubgroupAvcRefEvaluateWithDualReferenceINTEL';
  OpSubgroupAvcRefEvaluateWithMultiReferenceINTEL:Result:='OpSubgroupAvcRefEvaluateWithMultiReferenceINTEL';
  OpSubgroupAvcRefEvaluateWithMultiReferenceInterlacedINTEL:Result:='OpSubgroupAvcRefEvaluateWithMultiReferenceInterlacedINTEL';
  OpSubgroupAvcRefConvertToMceResultINTEL:Result:='OpSubgroupAvcRefConvertToMceResultINTEL';
  OpSubgroupAvcSicInitializeINTEL:Result:='OpSubgroupAvcSicInitializeINTEL';
  OpSubgroupAvcSicConfigureSkcINTEL:Result:='OpSubgroupAvcSicConfigureSkcINTEL';
  OpSubgroupAvcSicConfigureIpeLumaINTEL:Result:='OpSubgroupAvcSicConfigureIpeLumaINTEL';
  OpSubgroupAvcSicConfigureIpeLumaChromaINTEL:Result:='OpSubgroupAvcSicConfigureIpeLumaChromaINTEL';
  OpSubgroupAvcSicGetMotionVectorMaskINTEL:Result:='OpSubgroupAvcSicGetMotionVectorMaskINTEL';
  OpSubgroupAvcSicConvertToMcePayloadINTEL:Result:='OpSubgroupAvcSicConvertToMcePayloadINTEL';
  OpSubgroupAvcSicSetIntraLumaShapePenaltyINTEL:Result:='OpSubgroupAvcSicSetIntraLumaShapePenaltyINTEL';
  OpSubgroupAvcSicSetIntraLumaModeCostFunctionINTEL:Result:='OpSubgroupAvcSicSetIntraLumaModeCostFunctionINTEL';
  OpSubgroupAvcSicSetIntraChromaModeCostFunctionINTEL:Result:='OpSubgroupAvcSicSetIntraChromaModeCostFunctionINTEL';
  OpSubgroupAvcSicSetBilinearFilterEnableINTEL:Result:='OpSubgroupAvcSicSetBilinearFilterEnableINTEL';
  OpSubgroupAvcSicSetSkcForwardTransformEnableINTEL:Result:='OpSubgroupAvcSicSetSkcForwardTransformEnableINTEL';
  OpSubgroupAvcSicSetBlockBasedRawSkipSadINTEL:Result:='OpSubgroupAvcSicSetBlockBasedRawSkipSadINTEL';
  OpSubgroupAvcSicEvaluateIpeINTEL:Result:='OpSubgroupAvcSicEvaluateIpeINTEL';
  OpSubgroupAvcSicEvaluateWithSingleReferenceINTEL:Result:='OpSubgroupAvcSicEvaluateWithSingleReferenceINTEL';
  OpSubgroupAvcSicEvaluateWithDualReferenceINTEL:Result:='OpSubgroupAvcSicEvaluateWithDualReferenceINTEL';
  OpSubgroupAvcSicEvaluateWithMultiReferenceINTEL:Result:='OpSubgroupAvcSicEvaluateWithMultiReferenceINTEL';
  OpSubgroupAvcSicEvaluateWithMultiReferenceInterlacedINTEL:Result:='OpSubgroupAvcSicEvaluateWithMultiReferenceInterlacedINTEL';
  OpSubgroupAvcSicConvertToMceResultINTEL:Result:='OpSubgroupAvcSicConvertToMceResultINTEL';
  OpSubgroupAvcSicGetIpeLumaShapeINTEL:Result:='OpSubgroupAvcSicGetIpeLumaShapeINTEL';
  OpSubgroupAvcSicGetBestIpeLumaDistortionINTEL:Result:='OpSubgroupAvcSicGetBestIpeLumaDistortionINTEL';
  OpSubgroupAvcSicGetBestIpeChromaDistortionINTEL:Result:='OpSubgroupAvcSicGetBestIpeChromaDistortionINTEL';
  OpSubgroupAvcSicGetPackedIpeLumaModesINTEL:Result:='OpSubgroupAvcSicGetPackedIpeLumaModesINTEL';
  OpSubgroupAvcSicGetIpeChromaModeINTEL:Result:='OpSubgroupAvcSicGetIpeChromaModeINTEL';
  OpSubgroupAvcSicGetPackedSkcLumaCountThresholdINTEL:Result:='OpSubgroupAvcSicGetPackedSkcLumaCountThresholdINTEL';
  OpSubgroupAvcSicGetPackedSkcLumaSumThresholdINTEL:Result:='OpSubgroupAvcSicGetPackedSkcLumaSumThresholdINTEL';
  OpSubgroupAvcSicGetInterRawSadsINTEL:Result:='OpSubgroupAvcSicGetInterRawSadsINTEL';
  OpVariableLengthArrayINTEL:Result:='OpVariableLengthArrayINTEL';
  OpSaveMemoryINTEL:Result:='OpSaveMemoryINTEL';
  OpRestoreMemoryINTEL:Result:='OpRestoreMemoryINTEL';
  OpArbitraryFloatSinCosPiINTEL:Result:='OpArbitraryFloatSinCosPiINTEL';
  OpArbitraryFloatCastINTEL:Result:='OpArbitraryFloatCastINTEL';
  OpArbitraryFloatCastFromIntINTEL:Result:='OpArbitraryFloatCastFromIntINTEL';
  OpArbitraryFloatCastToIntINTEL:Result:='OpArbitraryFloatCastToIntINTEL';
  OpArbitraryFloatAddINTEL:Result:='OpArbitraryFloatAddINTEL';
  OpArbitraryFloatSubINTEL:Result:='OpArbitraryFloatSubINTEL';
  OpArbitraryFloatMulINTEL:Result:='OpArbitraryFloatMulINTEL';
  OpArbitraryFloatDivINTEL:Result:='OpArbitraryFloatDivINTEL';
  OpArbitraryFloatGTINTEL:Result:='OpArbitraryFloatGTINTEL';
  OpArbitraryFloatGEINTEL:Result:='OpArbitraryFloatGEINTEL';
  OpArbitraryFloatLTINTEL:Result:='OpArbitraryFloatLTINTEL';
  OpArbitraryFloatLEINTEL:Result:='OpArbitraryFloatLEINTEL';
  OpArbitraryFloatEQINTEL:Result:='OpArbitraryFloatEQINTEL';
  OpArbitraryFloatRecipINTEL:Result:='OpArbitraryFloatRecipINTEL';
  OpArbitraryFloatRSqrtINTEL:Result:='OpArbitraryFloatRSqrtINTEL';
  OpArbitraryFloatCbrtINTEL:Result:='OpArbitraryFloatCbrtINTEL';
  OpArbitraryFloatHypotINTEL:Result:='OpArbitraryFloatHypotINTEL';
  OpArbitraryFloatSqrtINTEL:Result:='OpArbitraryFloatSqrtINTEL';
  OpArbitraryFloatLogINTEL:Result:='OpArbitraryFloatLogINTEL';
  OpArbitraryFloatLog2INTEL:Result:='OpArbitraryFloatLog2INTEL';
  OpArbitraryFloatLog10INTEL:Result:='OpArbitraryFloatLog10INTEL';
  OpArbitraryFloatLog1pINTEL:Result:='OpArbitraryFloatLog1pINTEL';
  OpArbitraryFloatExpINTEL:Result:='OpArbitraryFloatExpINTEL';
  OpArbitraryFloatExp2INTEL:Result:='OpArbitraryFloatExp2INTEL';
  OpArbitraryFloatExp10INTEL:Result:='OpArbitraryFloatExp10INTEL';
  OpArbitraryFloatExpm1INTEL:Result:='OpArbitraryFloatExpm1INTEL';
  OpArbitraryFloatSinINTEL:Result:='OpArbitraryFloatSinINTEL';
  OpArbitraryFloatCosINTEL:Result:='OpArbitraryFloatCosINTEL';
  OpArbitraryFloatSinCosINTEL:Result:='OpArbitraryFloatSinCosINTEL';
  OpArbitraryFloatSinPiINTEL:Result:='OpArbitraryFloatSinPiINTEL';
  OpArbitraryFloatCosPiINTEL:Result:='OpArbitraryFloatCosPiINTEL';
  OpArbitraryFloatASinINTEL:Result:='OpArbitraryFloatASinINTEL';
  OpArbitraryFloatASinPiINTEL:Result:='OpArbitraryFloatASinPiINTEL';
  OpArbitraryFloatACosINTEL:Result:='OpArbitraryFloatACosINTEL';
  OpArbitraryFloatACosPiINTEL:Result:='OpArbitraryFloatACosPiINTEL';
  OpArbitraryFloatATanINTEL:Result:='OpArbitraryFloatATanINTEL';
  OpArbitraryFloatATanPiINTEL:Result:='OpArbitraryFloatATanPiINTEL';
  OpArbitraryFloatATan2INTEL:Result:='OpArbitraryFloatATan2INTEL';
  OpArbitraryFloatPowINTEL:Result:='OpArbitraryFloatPowINTEL';
  OpArbitraryFloatPowRINTEL:Result:='OpArbitraryFloatPowRINTEL';
  OpArbitraryFloatPowNINTEL:Result:='OpArbitraryFloatPowNINTEL';
  OpLoopControlINTEL:Result:='OpLoopControlINTEL';
  OpFixedSqrtINTEL:Result:='OpFixedSqrtINTEL';
  OpFixedRecipINTEL:Result:='OpFixedRecipINTEL';
  OpFixedRsqrtINTEL:Result:='OpFixedRsqrtINTEL';
  OpFixedSinINTEL:Result:='OpFixedSinINTEL';
  OpFixedCosINTEL:Result:='OpFixedCosINTEL';
  OpFixedSinCosINTEL:Result:='OpFixedSinCosINTEL';
  OpFixedSinPiINTEL:Result:='OpFixedSinPiINTEL';
  OpFixedCosPiINTEL:Result:='OpFixedCosPiINTEL';
  OpFixedSinCosPiINTEL:Result:='OpFixedSinCosPiINTEL';
  OpFixedLogINTEL:Result:='OpFixedLogINTEL';
  OpFixedExpINTEL:Result:='OpFixedExpINTEL';
  OpPtrCastToCrossWorkgroupINTEL:Result:='OpPtrCastToCrossWorkgroupINTEL';
  OpCrossWorkgroupCastToPtrINTEL:Result:='OpCrossWorkgroupCastToPtrINTEL';
  OpReadPipeBlockingINTEL:Result:='OpReadPipeBlockingINTEL';
  OpWritePipeBlockingINTEL:Result:='OpWritePipeBlockingINTEL';
  OpFPGARegINTEL:Result:='OpFPGARegINTEL';
  OpRayQueryGetRayTMinKHR:Result:='OpRayQueryGetRayTMinKHR';
  OpRayQueryGetRayFlagsKHR:Result:='OpRayQueryGetRayFlagsKHR';
  OpRayQueryGetIntersectionTKHR:Result:='OpRayQueryGetIntersectionTKHR';
  OpRayQueryGetIntersectionInstanceCustomIndexKHR:Result:='OpRayQueryGetIntersectionInstanceCustomIndexKHR';
  OpRayQueryGetIntersectionInstanceIdKHR:Result:='OpRayQueryGetIntersectionInstanceIdKHR';
  OpRayQueryGetIntersectionInstanceShaderBindingTableRecordOffsetKHR:Result:='OpRayQueryGetIntersectionInstanceShaderBindingTableRecordOffsetKHR';
  OpRayQueryGetIntersectionGeometryIndexKHR:Result:='OpRayQueryGetIntersectionGeometryIndexKHR';
  OpRayQueryGetIntersectionPrimitiveIndexKHR:Result:='OpRayQueryGetIntersectionPrimitiveIndexKHR';
  OpRayQueryGetIntersectionBarycentricsKHR:Result:='OpRayQueryGetIntersectionBarycentricsKHR';
  OpRayQueryGetIntersectionFrontFaceKHR:Result:='OpRayQueryGetIntersectionFrontFaceKHR';
  OpRayQueryGetIntersectionCandidateAABBOpaqueKHR:Result:='OpRayQueryGetIntersectionCandidateAABBOpaqueKHR';
  OpRayQueryGetIntersectionObjectRayDirectionKHR:Result:='OpRayQueryGetIntersectionObjectRayDirectionKHR';
  OpRayQueryGetIntersectionObjectRayOriginKHR:Result:='OpRayQueryGetIntersectionObjectRayOriginKHR';
  OpRayQueryGetWorldRayDirectionKHR:Result:='OpRayQueryGetWorldRayDirectionKHR';
  OpRayQueryGetWorldRayOriginKHR:Result:='OpRayQueryGetWorldRayOriginKHR';
  OpRayQueryGetIntersectionObjectToWorldKHR:Result:='OpRayQueryGetIntersectionObjectToWorldKHR';
  OpRayQueryGetIntersectionWorldToObjectKHR:Result:='OpRayQueryGetIntersectionWorldToObjectKHR';
  OpAtomicFAddEXT:Result:='OpAtomicFAddEXT';
  OpTypeBufferSurfaceINTEL:Result:='OpTypeBufferSurfaceINTEL';
  OpTypeStructContinuedINTEL:Result:='OpTypeStructContinuedINTEL';
  OpConstantCompositeContinuedINTEL:Result:='OpConstantCompositeContinuedINTEL';
  OpSpecConstantCompositeContinuedINTEL:Result:='OpSpecConstantCompositeContinuedINTEL';
 end;
end;

function Op.GetInfo(w:Word):TOpInfo; static;
begin
 Result:=Default(TOpInfo);
 Case w of
  OpNop:QWORD(Result):=$0000000000000000;
  OpUndef:QWORD(Result):=$0000010100020002;
  OpSourceContinued:QWORD(Result):=$0000000000010001;
  OpSource:QWORD(Result):=$0000000000040002;
  OpSourceExtension:QWORD(Result):=$0000000000010001;
  OpName:QWORD(Result):=$0000000000020002;
  OpMemberName:QWORD(Result):=$0000000000030003;
  OpString:QWORD(Result):=$0000000100020002;
  OpLine:QWORD(Result):=$0000000000030003;
  OpExtension:QWORD(Result):=$0000000000010001;
  OpExtInstImport:QWORD(Result):=$0000000100020002;
  OpExtInst:QWORD(Result):=$00000101FFFF0004;
  OpMemoryModel:QWORD(Result):=$0000000000020002;
  OpEntryPoint:QWORD(Result):=$00000000FFFF0003;
  OpExecutionMode:QWORD(Result):=$0000000000020002;
  OpCapability:QWORD(Result):=$0000000000010001;
  OpTypeVoid:QWORD(Result):=$0000000100010001;
  OpTypeBool:QWORD(Result):=$0000000100010001;
  OpTypeInt:QWORD(Result):=$0000000100030003;
  OpTypeFloat:QWORD(Result):=$0000000100020002;
  OpTypeVector:QWORD(Result):=$0000000100030003;
  OpTypeMatrix:QWORD(Result):=$0000000100030003;
  OpTypeImage:QWORD(Result):=$0000000100090008;
  OpTypeSampler:QWORD(Result):=$0000000100010001;
  OpTypeSampledImage:QWORD(Result):=$0000000100020002;
  OpTypeArray:QWORD(Result):=$0000000100030003;
  OpTypeRuntimeArray:QWORD(Result):=$0000000100020002;
  OpTypeStruct:QWORD(Result):=$00000001FFFF0001;
  OpTypeOpaque:QWORD(Result):=$0000000100020002;
  OpTypePointer:QWORD(Result):=$0000000100030003;
  OpTypeFunction:QWORD(Result):=$00000001FFFF0002;
  OpTypeEvent:QWORD(Result):=$0000000100010001;
  OpTypeDeviceEvent:QWORD(Result):=$0000000100010001;
  OpTypeReserveId:QWORD(Result):=$0000000100010001;
  OpTypeQueue:QWORD(Result):=$0000000100010001;
  OpTypePipe:QWORD(Result):=$0000000100020002;
  OpTypeForwardPointer:QWORD(Result):=$0000000000020002;
  OpConstantTrue:QWORD(Result):=$0000010100020002;
  OpConstantFalse:QWORD(Result):=$0000010100020002;
  OpConstant:QWORD(Result):=$0000010100030003;
  OpConstantComposite:QWORD(Result):=$00000101FFFF0002;
  OpConstantSampler:QWORD(Result):=$0000010100050005;
  OpConstantNull:QWORD(Result):=$0000010100020002;
  OpSpecConstantTrue:QWORD(Result):=$0000010100020002;
  OpSpecConstantFalse:QWORD(Result):=$0000010100020002;
  OpSpecConstant:QWORD(Result):=$0000010100030003;
  OpSpecConstantComposite:QWORD(Result):=$00000101FFFF0002;
  OpSpecConstantOp:QWORD(Result):=$0000010100030003;
  OpFunction:QWORD(Result):=$0000010100040004;
  OpFunctionParameter:QWORD(Result):=$0000010100020002;
  OpFunctionEnd:QWORD(Result):=$0000000000000000;
  OpFunctionCall:QWORD(Result):=$00000101FFFF0003;
  OpVariable:QWORD(Result):=$0000010100040003;
  OpImageTexelPointer:QWORD(Result):=$0000010100050005;
  OpLoad:QWORD(Result):=$0000010100040003;
  OpStore:QWORD(Result):=$0000000000030002;
  OpCopyMemory:QWORD(Result):=$0000000000040002;
  OpCopyMemorySized:QWORD(Result):=$0000000000050003;
  OpAccessChain:QWORD(Result):=$00000101FFFF0003;
  OpInBoundsAccessChain:QWORD(Result):=$00000101FFFF0003;
  OpPtrAccessChain:QWORD(Result):=$00000101FFFF0004;
  OpArrayLength:QWORD(Result):=$0000010100040004;
  OpGenericPtrMemSemantics:QWORD(Result):=$0000010100030003;
  OpInBoundsPtrAccessChain:QWORD(Result):=$00000101FFFF0004;
  OpDecorate:QWORD(Result):=$0000000000020002;
  OpMemberDecorate:QWORD(Result):=$0000000000030003;
  OpDecorationGroup:QWORD(Result):=$0000000100010001;
  OpGroupDecorate:QWORD(Result):=$00000000FFFF0001;
  OpGroupMemberDecorate:QWORD(Result):=$00000000FFFF0001;
  OpVectorExtractDynamic:QWORD(Result):=$0000010100040004;
  OpVectorInsertDynamic:QWORD(Result):=$0000010100050005;
  OpVectorShuffle:QWORD(Result):=$00000101FFFF0004;
  OpCompositeConstruct:QWORD(Result):=$00000101FFFF0002;
  OpCompositeExtract:QWORD(Result):=$00000101FFFF0003;
  OpCompositeInsert:QWORD(Result):=$00000101FFFF0004;
  OpCopyObject:QWORD(Result):=$0000010100030003;
  OpTranspose:QWORD(Result):=$0000010100030003;
  OpSampledImage:QWORD(Result):=$0000010100040004;
  OpImageSampleImplicitLod:QWORD(Result):=$0000010100050004;
  OpImageSampleExplicitLod:QWORD(Result):=$0000010100050005;
  OpImageSampleDrefImplicitLod:QWORD(Result):=$0000010100060005;
  OpImageSampleDrefExplicitLod:QWORD(Result):=$0000010100060006;
  OpImageSampleProjImplicitLod:QWORD(Result):=$0000010100050004;
  OpImageSampleProjExplicitLod:QWORD(Result):=$0000010100050005;
  OpImageSampleProjDrefImplicitLod:QWORD(Result):=$0000010100060005;
  OpImageSampleProjDrefExplicitLod:QWORD(Result):=$0000010100060006;
  OpImageFetch:QWORD(Result):=$0000010100050004;
  OpImageGather:QWORD(Result):=$0000010100060005;
  OpImageDrefGather:QWORD(Result):=$0000010100060005;
  OpImageRead:QWORD(Result):=$0000010100050004;
  OpImageWrite:QWORD(Result):=$0000000000040003;
  OpImage:QWORD(Result):=$0000010100030003;
  OpImageQueryFormat:QWORD(Result):=$0000010100030003;
  OpImageQueryOrder:QWORD(Result):=$0000010100030003;
  OpImageQuerySizeLod:QWORD(Result):=$0000010100040004;
  OpImageQuerySize:QWORD(Result):=$0000010100030003;
  OpImageQueryLod:QWORD(Result):=$0000010100040004;
  OpImageQueryLevels:QWORD(Result):=$0000010100030003;
  OpImageQuerySamples:QWORD(Result):=$0000010100030003;
  OpConvertFToU:QWORD(Result):=$0000010100030003;
  OpConvertFToS:QWORD(Result):=$0000010100030003;
  OpConvertSToF:QWORD(Result):=$0000010100030003;
  OpConvertUToF:QWORD(Result):=$0000010100030003;
  OpUConvert:QWORD(Result):=$0000010100030003;
  OpSConvert:QWORD(Result):=$0000010100030003;
  OpFConvert:QWORD(Result):=$0000010100030003;
  OpQuantizeToF16:QWORD(Result):=$0000010100030003;
  OpConvertPtrToU:QWORD(Result):=$0000010100030003;
  OpSatConvertSToU:QWORD(Result):=$0000010100030003;
  OpSatConvertUToS:QWORD(Result):=$0000010100030003;
  OpConvertUToPtr:QWORD(Result):=$0000010100030003;
  OpPtrCastToGeneric:QWORD(Result):=$0000010100030003;
  OpGenericCastToPtr:QWORD(Result):=$0000010100030003;
  OpGenericCastToPtrExplicit:QWORD(Result):=$0000010100040004;
  OpBitcast:QWORD(Result):=$0000010100030003;
  OpSNegate:QWORD(Result):=$0000010100030003;
  OpFNegate:QWORD(Result):=$0000010100030003;
  OpIAdd:QWORD(Result):=$0000010100040004;
  OpFAdd:QWORD(Result):=$0000010100040004;
  OpISub:QWORD(Result):=$0000010100040004;
  OpFSub:QWORD(Result):=$0000010100040004;
  OpIMul:QWORD(Result):=$0000010100040004;
  OpFMul:QWORD(Result):=$0000010100040004;
  OpUDiv:QWORD(Result):=$0000010100040004;
  OpSDiv:QWORD(Result):=$0000010100040004;
  OpFDiv:QWORD(Result):=$0000010100040004;
  OpUMod:QWORD(Result):=$0000010100040004;
  OpSRem:QWORD(Result):=$0000010100040004;
  OpSMod:QWORD(Result):=$0000010100040004;
  OpFRem:QWORD(Result):=$0000010100040004;
  OpFMod:QWORD(Result):=$0000010100040004;
  OpVectorTimesScalar:QWORD(Result):=$0000010100040004;
  OpMatrixTimesScalar:QWORD(Result):=$0000010100040004;
  OpVectorTimesMatrix:QWORD(Result):=$0000010100040004;
  OpMatrixTimesVector:QWORD(Result):=$0000010100040004;
  OpMatrixTimesMatrix:QWORD(Result):=$0000010100040004;
  OpOuterProduct:QWORD(Result):=$0000010100040004;
  OpDot:QWORD(Result):=$0000010100040004;
  OpIAddCarry:QWORD(Result):=$0000010100040004;
  OpISubBorrow:QWORD(Result):=$0000010100040004;
  OpUMulExtended:QWORD(Result):=$0000010100040004;
  OpSMulExtended:QWORD(Result):=$0000010100040004;
  OpAny:QWORD(Result):=$0000010100030003;
  OpAll:QWORD(Result):=$0000010100030003;
  OpIsNan:QWORD(Result):=$0000010100030003;
  OpIsInf:QWORD(Result):=$0000010100030003;
  OpIsFinite:QWORD(Result):=$0000010100030003;
  OpIsNormal:QWORD(Result):=$0000010100030003;
  OpSignBitSet:QWORD(Result):=$0000010100030003;
  OpLessOrGreater:QWORD(Result):=$0000010100040004;
  OpOrdered:QWORD(Result):=$0000010100040004;
  OpUnordered:QWORD(Result):=$0000010100040004;
  OpLogicalEqual:QWORD(Result):=$0000010100040004;
  OpLogicalNotEqual:QWORD(Result):=$0000010100040004;
  OpLogicalOr:QWORD(Result):=$0000010100040004;
  OpLogicalAnd:QWORD(Result):=$0000010100040004;
  OpLogicalNot:QWORD(Result):=$0000010100030003;
  OpSelect:QWORD(Result):=$0000010100050005;
  OpIEqual:QWORD(Result):=$0000010100040004;
  OpINotEqual:QWORD(Result):=$0000010100040004;
  OpUGreaterThan:QWORD(Result):=$0000010100040004;
  OpSGreaterThan:QWORD(Result):=$0000010100040004;
  OpUGreaterThanEqual:QWORD(Result):=$0000010100040004;
  OpSGreaterThanEqual:QWORD(Result):=$0000010100040004;
  OpULessThan:QWORD(Result):=$0000010100040004;
  OpSLessThan:QWORD(Result):=$0000010100040004;
  OpULessThanEqual:QWORD(Result):=$0000010100040004;
  OpSLessThanEqual:QWORD(Result):=$0000010100040004;
  OpFOrdEqual:QWORD(Result):=$0000010100040004;
  OpFUnordEqual:QWORD(Result):=$0000010100040004;
  OpFOrdNotEqual:QWORD(Result):=$0000010100040004;
  OpFUnordNotEqual:QWORD(Result):=$0000010100040004;
  OpFOrdLessThan:QWORD(Result):=$0000010100040004;
  OpFUnordLessThan:QWORD(Result):=$0000010100040004;
  OpFOrdGreaterThan:QWORD(Result):=$0000010100040004;
  OpFUnordGreaterThan:QWORD(Result):=$0000010100040004;
  OpFOrdLessThanEqual:QWORD(Result):=$0000010100040004;
  OpFUnordLessThanEqual:QWORD(Result):=$0000010100040004;
  OpFOrdGreaterThanEqual:QWORD(Result):=$0000010100040004;
  OpFUnordGreaterThanEqual:QWORD(Result):=$0000010100040004;
  OpShiftRightLogical:QWORD(Result):=$0000010100040004;
  OpShiftRightArithmetic:QWORD(Result):=$0000010100040004;
  OpShiftLeftLogical:QWORD(Result):=$0000010100040004;
  OpBitwiseOr:QWORD(Result):=$0000010100040004;
  OpBitwiseXor:QWORD(Result):=$0000010100040004;
  OpBitwiseAnd:QWORD(Result):=$0000010100040004;
  OpNot:QWORD(Result):=$0000010100030003;
  OpBitFieldInsert:QWORD(Result):=$0000010100060006;
  OpBitFieldSExtract:QWORD(Result):=$0000010100050005;
  OpBitFieldUExtract:QWORD(Result):=$0000010100050005;
  OpBitReverse:QWORD(Result):=$0000010100030003;
  OpBitCount:QWORD(Result):=$0000010100030003;
  OpDPdx:QWORD(Result):=$0000010100030003;
  OpDPdy:QWORD(Result):=$0000010100030003;
  OpFwidth:QWORD(Result):=$0000010100030003;
  OpDPdxFine:QWORD(Result):=$0000010100030003;
  OpDPdyFine:QWORD(Result):=$0000010100030003;
  OpFwidthFine:QWORD(Result):=$0000010100030003;
  OpDPdxCoarse:QWORD(Result):=$0000010100030003;
  OpDPdyCoarse:QWORD(Result):=$0000010100030003;
  OpFwidthCoarse:QWORD(Result):=$0000010100030003;
  OpEmitVertex:QWORD(Result):=$0000000000000000;
  OpEndPrimitive:QWORD(Result):=$0000000000000000;
  OpEmitStreamVertex:QWORD(Result):=$0000000000010001;
  OpEndStreamPrimitive:QWORD(Result):=$0000000000010001;
  OpControlBarrier:QWORD(Result):=$0000000000030003;
  OpMemoryBarrier:QWORD(Result):=$0000000000020002;
  OpAtomicLoad:QWORD(Result):=$0000010100050005;
  OpAtomicStore:QWORD(Result):=$0000000000040004;
  OpAtomicExchange:QWORD(Result):=$0000010100060006;
  OpAtomicCompareExchange:QWORD(Result):=$0000010100080008;
  OpAtomicCompareExchangeWeak:QWORD(Result):=$0000010100080008;
  OpAtomicIIncrement:QWORD(Result):=$0000010100050005;
  OpAtomicIDecrement:QWORD(Result):=$0000010100050005;
  OpAtomicIAdd:QWORD(Result):=$0000010100060006;
  OpAtomicISub:QWORD(Result):=$0000010100060006;
  OpAtomicSMin:QWORD(Result):=$0000010100060006;
  OpAtomicUMin:QWORD(Result):=$0000010100060006;
  OpAtomicSMax:QWORD(Result):=$0000010100060006;
  OpAtomicUMax:QWORD(Result):=$0000010100060006;
  OpAtomicAnd:QWORD(Result):=$0000010100060006;
  OpAtomicOr:QWORD(Result):=$0000010100060006;
  OpAtomicXor:QWORD(Result):=$0000010100060006;
  OpPhi:QWORD(Result):=$00000101FFFF0002;
  OpLoopMerge:QWORD(Result):=$0000000000030003;
  OpSelectionMerge:QWORD(Result):=$0000000000020002;
  OpLabel:QWORD(Result):=$0000000100010001;
  OpBranch:QWORD(Result):=$0000000000010001;
  OpBranchConditional:QWORD(Result):=$00000000FFFF0003;
  OpSwitch:QWORD(Result):=$00000000FFFF0002;
  OpKill:QWORD(Result):=$0000000000000000;
  OpReturn:QWORD(Result):=$0000000000000000;
  OpReturnValue:QWORD(Result):=$0000000000010001;
  OpUnreachable:QWORD(Result):=$0000000000000000;
  OpLifetimeStart:QWORD(Result):=$0000000000020002;
  OpLifetimeStop:QWORD(Result):=$0000000000020002;
  OpGroupAsyncCopy:QWORD(Result):=$0000010100080008;
  OpGroupWaitEvents:QWORD(Result):=$0000000000030003;
  OpGroupAll:QWORD(Result):=$0000010100040004;
  OpGroupAny:QWORD(Result):=$0000010100040004;
  OpGroupBroadcast:QWORD(Result):=$0000010100050005;
  OpGroupIAdd:QWORD(Result):=$0000010100050005;
  OpGroupFAdd:QWORD(Result):=$0000010100050005;
  OpGroupFMin:QWORD(Result):=$0000010100050005;
  OpGroupUMin:QWORD(Result):=$0000010100050005;
  OpGroupSMin:QWORD(Result):=$0000010100050005;
  OpGroupFMax:QWORD(Result):=$0000010100050005;
  OpGroupUMax:QWORD(Result):=$0000010100050005;
  OpGroupSMax:QWORD(Result):=$0000010100050005;
  OpReadPipe:QWORD(Result):=$0000010100060006;
  OpWritePipe:QWORD(Result):=$0000010100060006;
  OpReservedReadPipe:QWORD(Result):=$0000010100080008;
  OpReservedWritePipe:QWORD(Result):=$0000010100080008;
  OpReserveReadPipePackets:QWORD(Result):=$0000010100060006;
  OpReserveWritePipePackets:QWORD(Result):=$0000010100060006;
  OpCommitReadPipe:QWORD(Result):=$0000000000040004;
  OpCommitWritePipe:QWORD(Result):=$0000000000040004;
  OpIsValidReserveId:QWORD(Result):=$0000010100030003;
  OpGetNumPipePackets:QWORD(Result):=$0000010100050005;
  OpGetMaxPipePackets:QWORD(Result):=$0000010100050005;
  OpGroupReserveReadPipePackets:QWORD(Result):=$0000010100070007;
  OpGroupReserveWritePipePackets:QWORD(Result):=$0000010100070007;
  OpGroupCommitReadPipe:QWORD(Result):=$0000000000050005;
  OpGroupCommitWritePipe:QWORD(Result):=$0000000000050005;
  OpEnqueueMarker:QWORD(Result):=$0000010100060006;
  OpEnqueueKernel:QWORD(Result):=$00000101FFFF000C;
  OpGetKernelNDrangeSubGroupCount:QWORD(Result):=$0000010100070007;
  OpGetKernelNDrangeMaxSubGroupSize:QWORD(Result):=$0000010100070007;
  OpGetKernelWorkGroupSize:QWORD(Result):=$0000010100060006;
  OpGetKernelPreferredWorkGroupSizeMultiple:QWORD(Result):=$0000010100060006;
  OpRetainEvent:QWORD(Result):=$0000000000010001;
  OpReleaseEvent:QWORD(Result):=$0000000000010001;
  OpCreateUserEvent:QWORD(Result):=$0000010100020002;
  OpIsValidEvent:QWORD(Result):=$0000010100030003;
  OpSetUserEventStatus:QWORD(Result):=$0000000000020002;
  OpCaptureEventProfilingInfo:QWORD(Result):=$0000000000030003;
  OpGetDefaultQueue:QWORD(Result):=$0000010100020002;
  OpBuildNDRange:QWORD(Result):=$0000010100050005;
  OpImageSparseSampleImplicitLod:QWORD(Result):=$0000010100050004;
  OpImageSparseSampleExplicitLod:QWORD(Result):=$0000010100050005;
  OpImageSparseSampleDrefImplicitLod:QWORD(Result):=$0000010100060005;
  OpImageSparseSampleDrefExplicitLod:QWORD(Result):=$0000010100060006;
  OpImageSparseSampleProjImplicitLod:QWORD(Result):=$0000010100050004;
  OpImageSparseSampleProjExplicitLod:QWORD(Result):=$0000010100050005;
  OpImageSparseSampleProjDrefImplicitLod:QWORD(Result):=$0000010100060005;
  OpImageSparseSampleProjDrefExplicitLod:QWORD(Result):=$0000010100060006;
  OpImageSparseFetch:QWORD(Result):=$0000010100050004;
  OpImageSparseGather:QWORD(Result):=$0000010100060005;
  OpImageSparseDrefGather:QWORD(Result):=$0000010100060005;
  OpImageSparseTexelsResident:QWORD(Result):=$0000010100030003;
  OpNoLine:QWORD(Result):=$0000000000000000;
  OpAtomicFlagTestAndSet:QWORD(Result):=$0000010100050005;
  OpAtomicFlagClear:QWORD(Result):=$0000000000030003;
  OpImageSparseRead:QWORD(Result):=$0000010100050004;
  OpSizeOf:QWORD(Result):=$0000010100030003;
  OpTypePipeStorage:QWORD(Result):=$0000000100010001;
  OpConstantPipeStorage:QWORD(Result):=$0000010100050005;
  OpCreatePipeFromPipeStorage:QWORD(Result):=$0000010100030003;
  OpGetKernelLocalSizeForSubgroupCount:QWORD(Result):=$0000010100070007;
  OpGetKernelMaxNumSubgroups:QWORD(Result):=$0000010100060006;
  OpTypeNamedBarrier:QWORD(Result):=$0000000100010001;
  OpNamedBarrierInitialize:QWORD(Result):=$0000010100030003;
  OpMemoryNamedBarrier:QWORD(Result):=$0000000000030003;
  OpModuleProcessed:QWORD(Result):=$0000000000010001;
  OpExecutionModeId:QWORD(Result):=$0000000000020002;
  OpDecorateId:QWORD(Result):=$0000000000020002;
  OpGroupNonUniformElect:QWORD(Result):=$0000010100030003;
  OpGroupNonUniformAll:QWORD(Result):=$0000010100040004;
  OpGroupNonUniformAny:QWORD(Result):=$0000010100040004;
  OpGroupNonUniformAllEqual:QWORD(Result):=$0000010100040004;
  OpGroupNonUniformBroadcast:QWORD(Result):=$0000010100050005;
  OpGroupNonUniformBroadcastFirst:QWORD(Result):=$0000010100040004;
  OpGroupNonUniformBallot:QWORD(Result):=$0000010100040004;
  OpGroupNonUniformInverseBallot:QWORD(Result):=$0000010100040004;
  OpGroupNonUniformBallotBitExtract:QWORD(Result):=$0000010100050005;
  OpGroupNonUniformBallotBitCount:QWORD(Result):=$0000010100050005;
  OpGroupNonUniformBallotFindLSB:QWORD(Result):=$0000010100040004;
  OpGroupNonUniformBallotFindMSB:QWORD(Result):=$0000010100040004;
  OpGroupNonUniformShuffle:QWORD(Result):=$0000010100050005;
  OpGroupNonUniformShuffleXor:QWORD(Result):=$0000010100050005;
  OpGroupNonUniformShuffleUp:QWORD(Result):=$0000010100050005;
  OpGroupNonUniformShuffleDown:QWORD(Result):=$0000010100050005;
  OpGroupNonUniformIAdd:QWORD(Result):=$0000010100060005;
  OpGroupNonUniformFAdd:QWORD(Result):=$0000010100060005;
  OpGroupNonUniformIMul:QWORD(Result):=$0000010100060005;
  OpGroupNonUniformFMul:QWORD(Result):=$0000010100060005;
  OpGroupNonUniformSMin:QWORD(Result):=$0000010100060005;
  OpGroupNonUniformUMin:QWORD(Result):=$0000010100060005;
  OpGroupNonUniformFMin:QWORD(Result):=$0000010100060005;
  OpGroupNonUniformSMax:QWORD(Result):=$0000010100060005;
  OpGroupNonUniformUMax:QWORD(Result):=$0000010100060005;
  OpGroupNonUniformFMax:QWORD(Result):=$0000010100060005;
  OpGroupNonUniformBitwiseAnd:QWORD(Result):=$0000010100060005;
  OpGroupNonUniformBitwiseOr:QWORD(Result):=$0000010100060005;
  OpGroupNonUniformBitwiseXor:QWORD(Result):=$0000010100060005;
  OpGroupNonUniformLogicalAnd:QWORD(Result):=$0000010100060005;
  OpGroupNonUniformLogicalOr:QWORD(Result):=$0000010100060005;
  OpGroupNonUniformLogicalXor:QWORD(Result):=$0000010100060005;
  OpGroupNonUniformQuadBroadcast:QWORD(Result):=$0000010100050005;
  OpGroupNonUniformQuadSwap:QWORD(Result):=$0000010100050005;
  OpCopyLogical:QWORD(Result):=$0000010100030003;
  OpPtrEqual:QWORD(Result):=$0000010100040004;
  OpPtrNotEqual:QWORD(Result):=$0000010100040004;
  OpPtrDiff:QWORD(Result):=$0000010100040004;
  OpTerminateInvocation:QWORD(Result):=$0000000000000000;
  OpSubgroupBallotKHR:QWORD(Result):=$0000010100030003;
  OpSubgroupFirstInvocationKHR:QWORD(Result):=$0000010100030003;
  OpSubgroupAllKHR:QWORD(Result):=$0000010100030003;
  OpSubgroupAnyKHR:QWORD(Result):=$0000010100030003;
  OpSubgroupAllEqualKHR:QWORD(Result):=$0000010100030003;
  OpSubgroupReadInvocationKHR:QWORD(Result):=$0000010100040004;
  OpTraceRayKHR:QWORD(Result):=$00000000000B000B;
  OpExecuteCallableKHR:QWORD(Result):=$0000000000020002;
  OpConvertUToAccelerationStructureKHR:QWORD(Result):=$0000010100030003;
  OpIgnoreIntersectionKHR:QWORD(Result):=$0000000000000000;
  OpTerminateRayKHR:QWORD(Result):=$0000000000000000;
  OpSDot:QWORD(Result):=$0000010100050004;
  OpUDot:QWORD(Result):=$0000010100050004;
  OpSUDot:QWORD(Result):=$0000010100050004;
  OpSDotAccSat:QWORD(Result):=$0000010100060005;
  OpUDotAccSat:QWORD(Result):=$0000010100060005;
  OpSUDotAccSat:QWORD(Result):=$0000010100060005;
  OpTypeRayQueryKHR:QWORD(Result):=$0000000100010001;
  OpRayQueryInitializeKHR:QWORD(Result):=$0000000000080008;
  OpRayQueryTerminateKHR:QWORD(Result):=$0000000000010001;
  OpRayQueryGenerateIntersectionKHR:QWORD(Result):=$0000000000020002;
  OpRayQueryConfirmIntersectionKHR:QWORD(Result):=$0000000000010001;
  OpRayQueryProceedKHR:QWORD(Result):=$0000010100030003;
  OpRayQueryGetIntersectionTypeKHR:QWORD(Result):=$0000010100040004;
  OpGroupIAddNonUniformAMD:QWORD(Result):=$0000010100050005;
  OpGroupFAddNonUniformAMD:QWORD(Result):=$0000010100050005;
  OpGroupFMinNonUniformAMD:QWORD(Result):=$0000010100050005;
  OpGroupUMinNonUniformAMD:QWORD(Result):=$0000010100050005;
  OpGroupSMinNonUniformAMD:QWORD(Result):=$0000010100050005;
  OpGroupFMaxNonUniformAMD:QWORD(Result):=$0000010100050005;
  OpGroupUMaxNonUniformAMD:QWORD(Result):=$0000010100050005;
  OpGroupSMaxNonUniformAMD:QWORD(Result):=$0000010100050005;
  OpFragmentMaskFetchAMD:QWORD(Result):=$0000010100040004;
  OpFragmentFetchAMD:QWORD(Result):=$0000010100050005;
  OpReadClockKHR:QWORD(Result):=$0000010100030003;
  OpImageSampleFootprintNV:QWORD(Result):=$0000010100070006;
  OpGroupNonUniformPartitionNV:QWORD(Result):=$0000010100030003;
  OpWritePackedPrimitiveIndices4x8NV:QWORD(Result):=$0000000000020002;
  OpReportIntersectionKHR:QWORD(Result):=$0000010100040004;
  OpIgnoreIntersectionNV:QWORD(Result):=$0000000000000000;
  OpTerminateRayNV:QWORD(Result):=$0000000000000000;
  OpTraceNV:QWORD(Result):=$00000000000B000B;
  OpTraceMotionNV:QWORD(Result):=$00000000000C000C;
  OpTraceRayMotionNV:QWORD(Result):=$00000000000C000C;
  OpTypeAccelerationStructureKHR:QWORD(Result):=$0000000100010001;
  OpExecuteCallableNV:QWORD(Result):=$0000000000020002;
  OpTypeCooperativeMatrixNV:QWORD(Result):=$0000000100050005;
  OpCooperativeMatrixLoadNV:QWORD(Result):=$0000010100060005;
  OpCooperativeMatrixStoreNV:QWORD(Result):=$0000000000050004;
  OpCooperativeMatrixMulAddNV:QWORD(Result):=$0000010100050005;
  OpCooperativeMatrixLengthNV:QWORD(Result):=$0000010100030003;
  OpBeginInvocationInterlockEXT:QWORD(Result):=$0000000000000000;
  OpEndInvocationInterlockEXT:QWORD(Result):=$0000000000000000;
  OpDemoteToHelperInvocation:QWORD(Result):=$0000000000000000;
  OpIsHelperInvocationEXT:QWORD(Result):=$0000010100020002;
  OpConvertUToImageNV:QWORD(Result):=$0000010100030003;
  OpConvertUToSamplerNV:QWORD(Result):=$0000010100030003;
  OpConvertImageToUNV:QWORD(Result):=$0000010100030003;
  OpConvertSamplerToUNV:QWORD(Result):=$0000010100030003;
  OpConvertUToSampledImageNV:QWORD(Result):=$0000010100030003;
  OpConvertSampledImageToUNV:QWORD(Result):=$0000010100030003;
  OpSamplerImageAddressingModeNV:QWORD(Result):=$0000000000010001;
  OpSubgroupShuffleINTEL:QWORD(Result):=$0000010100040004;
  OpSubgroupShuffleDownINTEL:QWORD(Result):=$0000010100050005;
  OpSubgroupShuffleUpINTEL:QWORD(Result):=$0000010100050005;
  OpSubgroupShuffleXorINTEL:QWORD(Result):=$0000010100040004;
  OpSubgroupBlockReadINTEL:QWORD(Result):=$0000010100030003;
  OpSubgroupBlockWriteINTEL:QWORD(Result):=$0000000000020002;
  OpSubgroupImageBlockReadINTEL:QWORD(Result):=$0000010100040004;
  OpSubgroupImageBlockWriteINTEL:QWORD(Result):=$0000000000030003;
  OpSubgroupImageMediaBlockReadINTEL:QWORD(Result):=$0000010100060006;
  OpSubgroupImageMediaBlockWriteINTEL:QWORD(Result):=$0000000000050005;
  OpUCountLeadingZerosINTEL:QWORD(Result):=$0000010100030003;
  OpUCountTrailingZerosINTEL:QWORD(Result):=$0000010100030003;
  OpAbsISubINTEL:QWORD(Result):=$0000010100040004;
  OpAbsUSubINTEL:QWORD(Result):=$0000010100040004;
  OpIAddSatINTEL:QWORD(Result):=$0000010100040004;
  OpUAddSatINTEL:QWORD(Result):=$0000010100040004;
  OpIAverageINTEL:QWORD(Result):=$0000010100040004;
  OpUAverageINTEL:QWORD(Result):=$0000010100040004;
  OpIAverageRoundedINTEL:QWORD(Result):=$0000010100040004;
  OpUAverageRoundedINTEL:QWORD(Result):=$0000010100040004;
  OpISubSatINTEL:QWORD(Result):=$0000010100040004;
  OpUSubSatINTEL:QWORD(Result):=$0000010100040004;
  OpIMul32x16INTEL:QWORD(Result):=$0000010100040004;
  OpUMul32x16INTEL:QWORD(Result):=$0000010100040004;
  OpConstantFunctionPointerINTEL:QWORD(Result):=$0000010100030003;
  OpFunctionPointerCallINTEL:QWORD(Result):=$00000101FFFF0002;
  OpAsmTargetINTEL:QWORD(Result):=$0000010100030003;
  OpAsmINTEL:QWORD(Result):=$0000010100060006;
  OpAsmCallINTEL:QWORD(Result):=$00000101FFFF0003;
  OpAtomicFMinEXT:QWORD(Result):=$0000010100060006;
  OpAtomicFMaxEXT:QWORD(Result):=$0000010100060006;
  OpAssumeTrueKHR:QWORD(Result):=$0000000000010001;
  OpExpectKHR:QWORD(Result):=$0000010100040004;
  OpDecorateString:QWORD(Result):=$0000000000020002;
  OpMemberDecorateString:QWORD(Result):=$0000000000030003;
  OpVmeImageINTEL:QWORD(Result):=$0000010100040004;
  OpTypeVmeImageINTEL:QWORD(Result):=$0000000100020002;
  OpTypeAvcImePayloadINTEL:QWORD(Result):=$0000000100010001;
  OpTypeAvcRefPayloadINTEL:QWORD(Result):=$0000000100010001;
  OpTypeAvcSicPayloadINTEL:QWORD(Result):=$0000000100010001;
  OpTypeAvcMcePayloadINTEL:QWORD(Result):=$0000000100010001;
  OpTypeAvcMceResultINTEL:QWORD(Result):=$0000000100010001;
  OpTypeAvcImeResultINTEL:QWORD(Result):=$0000000100010001;
  OpTypeAvcImeResultSingleReferenceStreamoutINTEL:QWORD(Result):=$0000000100010001;
  OpTypeAvcImeResultDualReferenceStreamoutINTEL:QWORD(Result):=$0000000100010001;
  OpTypeAvcImeSingleReferenceStreaminINTEL:QWORD(Result):=$0000000100010001;
  OpTypeAvcImeDualReferenceStreaminINTEL:QWORD(Result):=$0000000100010001;
  OpTypeAvcRefResultINTEL:QWORD(Result):=$0000000100010001;
  OpTypeAvcSicResultINTEL:QWORD(Result):=$0000000100010001;
  OpSubgroupAvcMceGetDefaultInterBaseMultiReferencePenaltyINTEL:QWORD(Result):=$0000010100040004;
  OpSubgroupAvcMceSetInterBaseMultiReferencePenaltyINTEL:QWORD(Result):=$0000010100040004;
  OpSubgroupAvcMceGetDefaultInterShapePenaltyINTEL:QWORD(Result):=$0000010100040004;
  OpSubgroupAvcMceSetInterShapePenaltyINTEL:QWORD(Result):=$0000010100040004;
  OpSubgroupAvcMceGetDefaultInterDirectionPenaltyINTEL:QWORD(Result):=$0000010100040004;
  OpSubgroupAvcMceSetInterDirectionPenaltyINTEL:QWORD(Result):=$0000010100040004;
  OpSubgroupAvcMceGetDefaultIntraLumaShapePenaltyINTEL:QWORD(Result):=$0000010100040004;
  OpSubgroupAvcMceGetDefaultInterMotionVectorCostTableINTEL:QWORD(Result):=$0000010100040004;
  OpSubgroupAvcMceGetDefaultHighPenaltyCostTableINTEL:QWORD(Result):=$0000010100020002;
  OpSubgroupAvcMceGetDefaultMediumPenaltyCostTableINTEL:QWORD(Result):=$0000010100020002;
  OpSubgroupAvcMceGetDefaultLowPenaltyCostTableINTEL:QWORD(Result):=$0000010100020002;
  OpSubgroupAvcMceSetMotionVectorCostFunctionINTEL:QWORD(Result):=$0000010100060006;
  OpSubgroupAvcMceGetDefaultIntraLumaModePenaltyINTEL:QWORD(Result):=$0000010100040004;
  OpSubgroupAvcMceGetDefaultNonDcLumaIntraPenaltyINTEL:QWORD(Result):=$0000010100020002;
  OpSubgroupAvcMceGetDefaultIntraChromaModeBasePenaltyINTEL:QWORD(Result):=$0000010100020002;
  OpSubgroupAvcMceSetAcOnlyHaarINTEL:QWORD(Result):=$0000010100030003;
  OpSubgroupAvcMceSetSourceInterlacedFieldPolarityINTEL:QWORD(Result):=$0000010100040004;
  OpSubgroupAvcMceSetSingleReferenceInterlacedFieldPolarityINTEL:QWORD(Result):=$0000010100040004;
  OpSubgroupAvcMceSetDualReferenceInterlacedFieldPolaritiesINTEL:QWORD(Result):=$0000010100050005;
  OpSubgroupAvcMceConvertToImePayloadINTEL:QWORD(Result):=$0000010100030003;
  OpSubgroupAvcMceConvertToImeResultINTEL:QWORD(Result):=$0000010100030003;
  OpSubgroupAvcMceConvertToRefPayloadINTEL:QWORD(Result):=$0000010100030003;
  OpSubgroupAvcMceConvertToRefResultINTEL:QWORD(Result):=$0000010100030003;
  OpSubgroupAvcMceConvertToSicPayloadINTEL:QWORD(Result):=$0000010100030003;
  OpSubgroupAvcMceConvertToSicResultINTEL:QWORD(Result):=$0000010100030003;
  OpSubgroupAvcMceGetMotionVectorsINTEL:QWORD(Result):=$0000010100030003;
  OpSubgroupAvcMceGetInterDistortionsINTEL:QWORD(Result):=$0000010100030003;
  OpSubgroupAvcMceGetBestInterDistortionsINTEL:QWORD(Result):=$0000010100030003;
  OpSubgroupAvcMceGetInterMajorShapeINTEL:QWORD(Result):=$0000010100030003;
  OpSubgroupAvcMceGetInterMinorShapeINTEL:QWORD(Result):=$0000010100030003;
  OpSubgroupAvcMceGetInterDirectionsINTEL:QWORD(Result):=$0000010100030003;
  OpSubgroupAvcMceGetInterMotionVectorCountINTEL:QWORD(Result):=$0000010100030003;
  OpSubgroupAvcMceGetInterReferenceIdsINTEL:QWORD(Result):=$0000010100030003;
  OpSubgroupAvcMceGetInterReferenceInterlacedFieldPolaritiesINTEL:QWORD(Result):=$0000010100050005;
  OpSubgroupAvcImeInitializeINTEL:QWORD(Result):=$0000010100050005;
  OpSubgroupAvcImeSetSingleReferenceINTEL:QWORD(Result):=$0000010100050005;
  OpSubgroupAvcImeSetDualReferenceINTEL:QWORD(Result):=$0000010100060006;
  OpSubgroupAvcImeRefWindowSizeINTEL:QWORD(Result):=$0000010100040004;
  OpSubgroupAvcImeAdjustRefOffsetINTEL:QWORD(Result):=$0000010100060006;
  OpSubgroupAvcImeConvertToMcePayloadINTEL:QWORD(Result):=$0000010100030003;
  OpSubgroupAvcImeSetMaxMotionVectorCountINTEL:QWORD(Result):=$0000010100040004;
  OpSubgroupAvcImeSetUnidirectionalMixDisableINTEL:QWORD(Result):=$0000010100030003;
  OpSubgroupAvcImeSetEarlySearchTerminationThresholdINTEL:QWORD(Result):=$0000010100040004;
  OpSubgroupAvcImeSetWeightedSadINTEL:QWORD(Result):=$0000010100040004;
  OpSubgroupAvcImeEvaluateWithSingleReferenceINTEL:QWORD(Result):=$0000010100050005;
  OpSubgroupAvcImeEvaluateWithDualReferenceINTEL:QWORD(Result):=$0000010100060006;
  OpSubgroupAvcImeEvaluateWithSingleReferenceStreaminINTEL:QWORD(Result):=$0000010100060006;
  OpSubgroupAvcImeEvaluateWithDualReferenceStreaminINTEL:QWORD(Result):=$0000010100070007;
  OpSubgroupAvcImeEvaluateWithSingleReferenceStreamoutINTEL:QWORD(Result):=$0000010100050005;
  OpSubgroupAvcImeEvaluateWithDualReferenceStreamoutINTEL:QWORD(Result):=$0000010100060006;
  OpSubgroupAvcImeEvaluateWithSingleReferenceStreaminoutINTEL:QWORD(Result):=$0000010100060006;
  OpSubgroupAvcImeEvaluateWithDualReferenceStreaminoutINTEL:QWORD(Result):=$0000010100070007;
  OpSubgroupAvcImeConvertToMceResultINTEL:QWORD(Result):=$0000010100030003;
  OpSubgroupAvcImeGetSingleReferenceStreaminINTEL:QWORD(Result):=$0000010100030003;
  OpSubgroupAvcImeGetDualReferenceStreaminINTEL:QWORD(Result):=$0000010100030003;
  OpSubgroupAvcImeStripSingleReferenceStreamoutINTEL:QWORD(Result):=$0000010100030003;
  OpSubgroupAvcImeStripDualReferenceStreamoutINTEL:QWORD(Result):=$0000010100030003;
  OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeMotionVectorsINTEL:QWORD(Result):=$0000010100040004;
  OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeDistortionsINTEL:QWORD(Result):=$0000010100040004;
  OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeReferenceIdsINTEL:QWORD(Result):=$0000010100040004;
  OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeMotionVectorsINTEL:QWORD(Result):=$0000010100050005;
  OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeDistortionsINTEL:QWORD(Result):=$0000010100050005;
  OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeReferenceIdsINTEL:QWORD(Result):=$0000010100050005;
  OpSubgroupAvcImeGetBorderReachedINTEL:QWORD(Result):=$0000010100040004;
  OpSubgroupAvcImeGetTruncatedSearchIndicationINTEL:QWORD(Result):=$0000010100030003;
  OpSubgroupAvcImeGetUnidirectionalEarlySearchTerminationINTEL:QWORD(Result):=$0000010100030003;
  OpSubgroupAvcImeGetWeightingPatternMinimumMotionVectorINTEL:QWORD(Result):=$0000010100030003;
  OpSubgroupAvcImeGetWeightingPatternMinimumDistortionINTEL:QWORD(Result):=$0000010100030003;
  OpSubgroupAvcFmeInitializeINTEL:QWORD(Result):=$0000010100090009;
  OpSubgroupAvcBmeInitializeINTEL:QWORD(Result):=$00000101000A000A;
  OpSubgroupAvcRefConvertToMcePayloadINTEL:QWORD(Result):=$0000010100030003;
  OpSubgroupAvcRefSetBidirectionalMixDisableINTEL:QWORD(Result):=$0000010100030003;
  OpSubgroupAvcRefSetBilinearFilterEnableINTEL:QWORD(Result):=$0000010100030003;
  OpSubgroupAvcRefEvaluateWithSingleReferenceINTEL:QWORD(Result):=$0000010100050005;
  OpSubgroupAvcRefEvaluateWithDualReferenceINTEL:QWORD(Result):=$0000010100060006;
  OpSubgroupAvcRefEvaluateWithMultiReferenceINTEL:QWORD(Result):=$0000010100050005;
  OpSubgroupAvcRefEvaluateWithMultiReferenceInterlacedINTEL:QWORD(Result):=$0000010100060006;
  OpSubgroupAvcRefConvertToMceResultINTEL:QWORD(Result):=$0000010100030003;
  OpSubgroupAvcSicInitializeINTEL:QWORD(Result):=$0000010100030003;
  OpSubgroupAvcSicConfigureSkcINTEL:QWORD(Result):=$0000010100080008;
  OpSubgroupAvcSicConfigureIpeLumaINTEL:QWORD(Result):=$00000101000A000A;
  OpSubgroupAvcSicConfigureIpeLumaChromaINTEL:QWORD(Result):=$00000101000D000D;
  OpSubgroupAvcSicGetMotionVectorMaskINTEL:QWORD(Result):=$0000010100040004;
  OpSubgroupAvcSicConvertToMcePayloadINTEL:QWORD(Result):=$0000010100030003;
  OpSubgroupAvcSicSetIntraLumaShapePenaltyINTEL:QWORD(Result):=$0000010100040004;
  OpSubgroupAvcSicSetIntraLumaModeCostFunctionINTEL:QWORD(Result):=$0000010100060006;
  OpSubgroupAvcSicSetIntraChromaModeCostFunctionINTEL:QWORD(Result):=$0000010100040004;
  OpSubgroupAvcSicSetBilinearFilterEnableINTEL:QWORD(Result):=$0000010100030003;
  OpSubgroupAvcSicSetSkcForwardTransformEnableINTEL:QWORD(Result):=$0000010100040004;
  OpSubgroupAvcSicSetBlockBasedRawSkipSadINTEL:QWORD(Result):=$0000010100040004;
  OpSubgroupAvcSicEvaluateIpeINTEL:QWORD(Result):=$0000010100040004;
  OpSubgroupAvcSicEvaluateWithSingleReferenceINTEL:QWORD(Result):=$0000010100050005;
  OpSubgroupAvcSicEvaluateWithDualReferenceINTEL:QWORD(Result):=$0000010100060006;
  OpSubgroupAvcSicEvaluateWithMultiReferenceINTEL:QWORD(Result):=$0000010100050005;
  OpSubgroupAvcSicEvaluateWithMultiReferenceInterlacedINTEL:QWORD(Result):=$0000010100060006;
  OpSubgroupAvcSicConvertToMceResultINTEL:QWORD(Result):=$0000010100030003;
  OpSubgroupAvcSicGetIpeLumaShapeINTEL:QWORD(Result):=$0000010100030003;
  OpSubgroupAvcSicGetBestIpeLumaDistortionINTEL:QWORD(Result):=$0000010100030003;
  OpSubgroupAvcSicGetBestIpeChromaDistortionINTEL:QWORD(Result):=$0000010100030003;
  OpSubgroupAvcSicGetPackedIpeLumaModesINTEL:QWORD(Result):=$0000010100030003;
  OpSubgroupAvcSicGetIpeChromaModeINTEL:QWORD(Result):=$0000010100030003;
  OpSubgroupAvcSicGetPackedSkcLumaCountThresholdINTEL:QWORD(Result):=$0000010100030003;
  OpSubgroupAvcSicGetPackedSkcLumaSumThresholdINTEL:QWORD(Result):=$0000010100030003;
  OpSubgroupAvcSicGetInterRawSadsINTEL:QWORD(Result):=$0000010100030003;
  OpVariableLengthArrayINTEL:QWORD(Result):=$0000010100030003;
  OpSaveMemoryINTEL:QWORD(Result):=$0000010100020002;
  OpRestoreMemoryINTEL:QWORD(Result):=$0000000000010001;
  OpArbitraryFloatSinCosPiINTEL:QWORD(Result):=$0000010100090009;
  OpArbitraryFloatCastINTEL:QWORD(Result):=$0000010100080008;
  OpArbitraryFloatCastFromIntINTEL:QWORD(Result):=$0000010100080008;
  OpArbitraryFloatCastToIntINTEL:QWORD(Result):=$0000010100070007;
  OpArbitraryFloatAddINTEL:QWORD(Result):=$00000101000A000A;
  OpArbitraryFloatSubINTEL:QWORD(Result):=$00000101000A000A;
  OpArbitraryFloatMulINTEL:QWORD(Result):=$00000101000A000A;
  OpArbitraryFloatDivINTEL:QWORD(Result):=$00000101000A000A;
  OpArbitraryFloatGTINTEL:QWORD(Result):=$0000010100060006;
  OpArbitraryFloatGEINTEL:QWORD(Result):=$0000010100060006;
  OpArbitraryFloatLTINTEL:QWORD(Result):=$0000010100060006;
  OpArbitraryFloatLEINTEL:QWORD(Result):=$0000010100060006;
  OpArbitraryFloatEQINTEL:QWORD(Result):=$0000010100060006;
  OpArbitraryFloatRecipINTEL:QWORD(Result):=$0000010100080008;
  OpArbitraryFloatRSqrtINTEL:QWORD(Result):=$0000010100080008;
  OpArbitraryFloatCbrtINTEL:QWORD(Result):=$0000010100080008;
  OpArbitraryFloatHypotINTEL:QWORD(Result):=$00000101000A000A;
  OpArbitraryFloatSqrtINTEL:QWORD(Result):=$0000010100080008;
  OpArbitraryFloatLogINTEL:QWORD(Result):=$0000010100080008;
  OpArbitraryFloatLog2INTEL:QWORD(Result):=$0000010100080008;
  OpArbitraryFloatLog10INTEL:QWORD(Result):=$0000010100080008;
  OpArbitraryFloatLog1pINTEL:QWORD(Result):=$0000010100080008;
  OpArbitraryFloatExpINTEL:QWORD(Result):=$0000010100080008;
  OpArbitraryFloatExp2INTEL:QWORD(Result):=$0000010100080008;
  OpArbitraryFloatExp10INTEL:QWORD(Result):=$0000010100080008;
  OpArbitraryFloatExpm1INTEL:QWORD(Result):=$0000010100080008;
  OpArbitraryFloatSinINTEL:QWORD(Result):=$0000010100080008;
  OpArbitraryFloatCosINTEL:QWORD(Result):=$0000010100080008;
  OpArbitraryFloatSinCosINTEL:QWORD(Result):=$0000010100080008;
  OpArbitraryFloatSinPiINTEL:QWORD(Result):=$0000010100080008;
  OpArbitraryFloatCosPiINTEL:QWORD(Result):=$0000010100080008;
  OpArbitraryFloatASinINTEL:QWORD(Result):=$0000010100080008;
  OpArbitraryFloatASinPiINTEL:QWORD(Result):=$0000010100080008;
  OpArbitraryFloatACosINTEL:QWORD(Result):=$0000010100080008;
  OpArbitraryFloatACosPiINTEL:QWORD(Result):=$0000010100080008;
  OpArbitraryFloatATanINTEL:QWORD(Result):=$0000010100080008;
  OpArbitraryFloatATanPiINTEL:QWORD(Result):=$0000010100080008;
  OpArbitraryFloatATan2INTEL:QWORD(Result):=$00000101000A000A;
  OpArbitraryFloatPowINTEL:QWORD(Result):=$00000101000A000A;
  OpArbitraryFloatPowRINTEL:QWORD(Result):=$00000101000A000A;
  OpArbitraryFloatPowNINTEL:QWORD(Result):=$0000010100090009;
  OpLoopControlINTEL:QWORD(Result):=$00000000FFFF0000;
  OpFixedSqrtINTEL:QWORD(Result):=$0000010100090009;
  OpFixedRecipINTEL:QWORD(Result):=$0000010100090009;
  OpFixedRsqrtINTEL:QWORD(Result):=$0000010100090009;
  OpFixedSinINTEL:QWORD(Result):=$0000010100090009;
  OpFixedCosINTEL:QWORD(Result):=$0000010100090009;
  OpFixedSinCosINTEL:QWORD(Result):=$0000010100090009;
  OpFixedSinPiINTEL:QWORD(Result):=$0000010100090009;
  OpFixedCosPiINTEL:QWORD(Result):=$0000010100090009;
  OpFixedSinCosPiINTEL:QWORD(Result):=$0000010100090009;
  OpFixedLogINTEL:QWORD(Result):=$0000010100090009;
  OpFixedExpINTEL:QWORD(Result):=$0000010100090009;
  OpPtrCastToCrossWorkgroupINTEL:QWORD(Result):=$0000010100030003;
  OpCrossWorkgroupCastToPtrINTEL:QWORD(Result):=$0000010100030003;
  OpReadPipeBlockingINTEL:QWORD(Result):=$0000010100040004;
  OpWritePipeBlockingINTEL:QWORD(Result):=$0000010100040004;
  OpFPGARegINTEL:QWORD(Result):=$0000010100040004;
  OpRayQueryGetRayTMinKHR:QWORD(Result):=$0000010100030003;
  OpRayQueryGetRayFlagsKHR:QWORD(Result):=$0000010100030003;
  OpRayQueryGetIntersectionTKHR:QWORD(Result):=$0000010100040004;
  OpRayQueryGetIntersectionInstanceCustomIndexKHR:QWORD(Result):=$0000010100040004;
  OpRayQueryGetIntersectionInstanceIdKHR:QWORD(Result):=$0000010100040004;
  OpRayQueryGetIntersectionInstanceShaderBindingTableRecordOffsetKHR:QWORD(Result):=$0000010100040004;
  OpRayQueryGetIntersectionGeometryIndexKHR:QWORD(Result):=$0000010100040004;
  OpRayQueryGetIntersectionPrimitiveIndexKHR:QWORD(Result):=$0000010100040004;
  OpRayQueryGetIntersectionBarycentricsKHR:QWORD(Result):=$0000010100040004;
  OpRayQueryGetIntersectionFrontFaceKHR:QWORD(Result):=$0000010100040004;
  OpRayQueryGetIntersectionCandidateAABBOpaqueKHR:QWORD(Result):=$0000010100030003;
  OpRayQueryGetIntersectionObjectRayDirectionKHR:QWORD(Result):=$0000010100040004;
  OpRayQueryGetIntersectionObjectRayOriginKHR:QWORD(Result):=$0000010100040004;
  OpRayQueryGetWorldRayDirectionKHR:QWORD(Result):=$0000010100030003;
  OpRayQueryGetWorldRayOriginKHR:QWORD(Result):=$0000010100030003;
  OpRayQueryGetIntersectionObjectToWorldKHR:QWORD(Result):=$0000010100040004;
  OpRayQueryGetIntersectionWorldToObjectKHR:QWORD(Result):=$0000010100040004;
  OpAtomicFAddEXT:QWORD(Result):=$0000010100060006;
  OpTypeBufferSurfaceINTEL:QWORD(Result):=$0000000100020002;
  OpTypeStructContinuedINTEL:QWORD(Result):=$00000000FFFF0000;
  OpConstantCompositeContinuedINTEL:QWORD(Result):=$00000000FFFF0000;
  OpSpecConstantCompositeContinuedINTEL:QWORD(Result):=$00000000FFFF0000;
 end;
end;

function GlslOp.GetStr(w:Word):RawByteString;
begin
 Result:='???';
 Case w of
  Round:Result:='Round';
  RoundEven:Result:='RoundEven';
  Trunc:Result:='Trunc';
  FAbs:Result:='FAbs';
  SAbs:Result:='SAbs';
  FSign:Result:='FSign';
  SSign:Result:='SSign';
  Floor:Result:='Floor';
  Ceil:Result:='Ceil';
  Fract:Result:='Fract';
  Radians:Result:='Radians';
  Degrees:Result:='Degrees';
  Sin:Result:='Sin';
  Cos:Result:='Cos';
  Tan:Result:='Tan';
  Asin:Result:='Asin';
  Acos:Result:='Acos';
  Atan:Result:='Atan';
  Sinh:Result:='Sinh';
  Cosh:Result:='Cosh';
  Tanh:Result:='Tanh';
  Asinh:Result:='Asinh';
  Acosh:Result:='Acosh';
  Atanh:Result:='Atanh';
  Atan2:Result:='Atan2';
  Pow:Result:='Pow';
  Exp:Result:='Exp';
  Log:Result:='Log';
  Exp2:Result:='Exp2';
  Log2:Result:='Log2';
  Sqrt:Result:='Sqrt';
  InverseSqrt:Result:='InverseSqrt';
  Determinant:Result:='Determinant';
  MatrixInverse:Result:='MatrixInverse';
  Modf:Result:='Modf';
  ModfStruct:Result:='ModfStruct';
  FMin:Result:='FMin';
  UMin:Result:='UMin';
  SMin:Result:='SMin';
  FMax:Result:='FMax';
  UMax:Result:='UMax';
  SMax:Result:='SMax';
  FClamp:Result:='FClamp';
  UClamp:Result:='UClamp';
  SClamp:Result:='SClamp';
  FMix:Result:='FMix';
  IMix:Result:='IMix';
  Step:Result:='Step';
  SmoothStep:Result:='SmoothStep';
  Fma:Result:='Fma';
  Frexp:Result:='Frexp';
  FrexpStruct:Result:='FrexpStruct';
  Ldexp:Result:='Ldexp';
  PackSnorm4x8:Result:='PackSnorm4x8';
  PackUnorm4x8:Result:='PackUnorm4x8';
  PackSnorm2x16:Result:='PackSnorm2x16';
  PackUnorm2x16:Result:='PackUnorm2x16';
  PackHalf2x16:Result:='PackHalf2x16';
  PackDouble2x32:Result:='PackDouble2x32';
  UnpackSnorm2x16:Result:='UnpackSnorm2x16';
  UnpackUnorm2x16:Result:='UnpackUnorm2x16';
  UnpackHalf2x16:Result:='UnpackHalf2x16';
  UnpackSnorm4x8:Result:='UnpackSnorm4x8';
  UnpackUnorm4x8:Result:='UnpackUnorm4x8';
  UnpackDouble2x32:Result:='UnpackDouble2x32';
  Length:Result:='Length';
  Distance:Result:='Distance';
  Cross:Result:='Cross';
  Normalize:Result:='Normalize';
  FaceForward:Result:='FaceForward';
  Reflect:Result:='Reflect';
  Refract:Result:='Refract';
  FindILsb:Result:='FindILsb';
  FindSMsb:Result:='FindSMsb';
  FindUMsb:Result:='FindUMsb';
  InterpolateAtCentroid:Result:='InterpolateAtCentroid';
  InterpolateAtSample:Result:='InterpolateAtSample';
  InterpolateAtOffset:Result:='InterpolateAtOffset';
  NMin:Result:='NMin';
  NMax:Result:='NMax';
  NClamp:Result:='NClamp';
 end;
end;

function GlslOp.GetInfo(w:Word):TOpInfo; static;
begin
 Result:=Default(TOpInfo);
 Case w of
  Round:QWORD(Result):=$0000000000010001;
  RoundEven:QWORD(Result):=$0000000000010001;
  Trunc:QWORD(Result):=$0000000000010001;
  FAbs:QWORD(Result):=$0000000000010001;
  SAbs:QWORD(Result):=$0000000000010001;
  FSign:QWORD(Result):=$0000000000010001;
  SSign:QWORD(Result):=$0000000000010001;
  Floor:QWORD(Result):=$0000000000010001;
  Ceil:QWORD(Result):=$0000000000010001;
  Fract:QWORD(Result):=$0000000000010001;
  Radians:QWORD(Result):=$0000000000010001;
  Degrees:QWORD(Result):=$0000000000010001;
  Sin:QWORD(Result):=$0000000000010001;
  Cos:QWORD(Result):=$0000000000010001;
  Tan:QWORD(Result):=$0000000000010001;
  Asin:QWORD(Result):=$0000000000010001;
  Acos:QWORD(Result):=$0000000000010001;
  Atan:QWORD(Result):=$0000000000010001;
  Sinh:QWORD(Result):=$0000000000010001;
  Cosh:QWORD(Result):=$0000000000010001;
  Tanh:QWORD(Result):=$0000000000010001;
  Asinh:QWORD(Result):=$0000000000010001;
  Acosh:QWORD(Result):=$0000000000010001;
  Atanh:QWORD(Result):=$0000000000010001;
  Atan2:QWORD(Result):=$0000000000020002;
  Pow:QWORD(Result):=$0000000000020002;
  Exp:QWORD(Result):=$0000000000010001;
  Log:QWORD(Result):=$0000000000010001;
  Exp2:QWORD(Result):=$0000000000010001;
  Log2:QWORD(Result):=$0000000000010001;
  Sqrt:QWORD(Result):=$0000000000010001;
  InverseSqrt:QWORD(Result):=$0000000000010001;
  Determinant:QWORD(Result):=$0000000000010001;
  MatrixInverse:QWORD(Result):=$0000000000010001;
  Modf:QWORD(Result):=$0000000000020002;
  ModfStruct:QWORD(Result):=$0000000000010001;
  FMin:QWORD(Result):=$0000000000020002;
  UMin:QWORD(Result):=$0000000000020002;
  SMin:QWORD(Result):=$0000000000020002;
  FMax:QWORD(Result):=$0000000000020002;
  UMax:QWORD(Result):=$0000000000020002;
  SMax:QWORD(Result):=$0000000000020002;
  FClamp:QWORD(Result):=$0000000000030003;
  UClamp:QWORD(Result):=$0000000000030003;
  SClamp:QWORD(Result):=$0000000000030003;
  FMix:QWORD(Result):=$0000000000030003;
  IMix:QWORD(Result):=$0000000000030003;
  Step:QWORD(Result):=$0000000000020002;
  SmoothStep:QWORD(Result):=$0000000000030003;
  Fma:QWORD(Result):=$0000000000030003;
  Frexp:QWORD(Result):=$0000000000020002;
  FrexpStruct:QWORD(Result):=$0000000000010001;
  Ldexp:QWORD(Result):=$0000000000020002;
  PackSnorm4x8:QWORD(Result):=$0000000000010001;
  PackUnorm4x8:QWORD(Result):=$0000000000010001;
  PackSnorm2x16:QWORD(Result):=$0000000000010001;
  PackUnorm2x16:QWORD(Result):=$0000000000010001;
  PackHalf2x16:QWORD(Result):=$0000000000010001;
  PackDouble2x32:QWORD(Result):=$0000000000010001;
  UnpackSnorm2x16:QWORD(Result):=$0000000000010001;
  UnpackUnorm2x16:QWORD(Result):=$0000000000010001;
  UnpackHalf2x16:QWORD(Result):=$0000000000010001;
  UnpackSnorm4x8:QWORD(Result):=$0000000000010001;
  UnpackUnorm4x8:QWORD(Result):=$0000000000010001;
  UnpackDouble2x32:QWORD(Result):=$0000000000010001;
  Length:QWORD(Result):=$0000000000010001;
  Distance:QWORD(Result):=$0000000000020002;
  Cross:QWORD(Result):=$0000000000020002;
  Normalize:QWORD(Result):=$0000000000010001;
  FaceForward:QWORD(Result):=$0000000000030003;
  Reflect:QWORD(Result):=$0000000000020002;
  Refract:QWORD(Result):=$0000000000030003;
  FindILsb:QWORD(Result):=$0000000000010001;
  FindSMsb:QWORD(Result):=$0000000000010001;
  FindUMsb:QWORD(Result):=$0000000000010001;
  InterpolateAtCentroid:QWORD(Result):=$0000000000010001;
  InterpolateAtSample:QWORD(Result):=$0000000000020002;
  InterpolateAtOffset:QWORD(Result):=$0000000000020002;
  NMin:QWORD(Result):=$0000000000020002;
  NMax:QWORD(Result):=$0000000000020002;
  NClamp:QWORD(Result):=$0000000000030003;
 end;
end;

end.
