// Copyright (c) 2018 The Khronos Group Inc. // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and/or associated documentation files (the "Materials"), // to deal in the Materials without restriction, including without limitation // the rights to use, copy, modify, merge, publish, distribute, sublicense, // and/or sell copies of the Materials, and to permit persons to whom the // Materials are furnished to do so, subject to the following conditions: // // The above copyright notice and this permission notice shall be included in // all copies or substantial portions of the Materials. // // MODIFICATIONS TO THIS FILE MAY MEAN IT NO LONGER ACCURATELY REFLECTS KHRONOS // STANDARDS. THE UNMODIFIED, NORMATIVE VERSIONS OF KHRONOS SPECIFICATIONS AND // HEADER INFORMATION ARE LOCATED AT https://www.khronos.org/registry/ // // THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS // OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL // THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM,OUT OF OR IN CONNECTION WITH THE MATERIALS OR THE USE OR OTHER DEALINGS // IN THE MATERIALS. #ifndef SPIRV_UNIFIED1_OpenCLDebugInfo100_H_ #define SPIRV_UNIFIED1_OpenCLDebugInfo100_H_ #ifdef __cplusplus extern "C" { #endif enum { OpenCLDebugInfo100Version = 200, OpenCLDebugInfo100Version_BitWidthPadding = 0x7fffffff }; enum { OpenCLDebugInfo100Revision = 2, OpenCLDebugInfo100Revision_BitWidthPadding = 0x7fffffff }; enum OpenCLDebugInfo100Instructions { OpenCLDebugInfo100DebugInfoNone = 0, OpenCLDebugInfo100DebugCompilationUnit = 1, OpenCLDebugInfo100DebugTypeBasic = 2, OpenCLDebugInfo100DebugTypePointer = 3, OpenCLDebugInfo100DebugTypeQualifier = 4, OpenCLDebugInfo100DebugTypeArray = 5, OpenCLDebugInfo100DebugTypeVector = 6, OpenCLDebugInfo100DebugTypedef = 7, OpenCLDebugInfo100DebugTypeFunction = 8, OpenCLDebugInfo100DebugTypeEnum = 9, OpenCLDebugInfo100DebugTypeComposite = 10, OpenCLDebugInfo100DebugTypeMember = 11, OpenCLDebugInfo100DebugTypeInheritance = 12, OpenCLDebugInfo100DebugTypePtrToMember = 13, OpenCLDebugInfo100DebugTypeTemplate = 14, OpenCLDebugInfo100DebugTypeTemplateParameter = 15, OpenCLDebugInfo100DebugTypeTemplateTemplateParameter = 16, OpenCLDebugInfo100DebugTypeTemplateParameterPack = 17, OpenCLDebugInfo100DebugGlobalVariable = 18, OpenCLDebugInfo100DebugFunctionDeclaration = 19, OpenCLDebugInfo100DebugFunction = 20, OpenCLDebugInfo100DebugLexicalBlock = 21, OpenCLDebugInfo100DebugLexicalBlockDiscriminator = 22, OpenCLDebugInfo100DebugScope = 23, OpenCLDebugInfo100DebugNoScope = 24, OpenCLDebugInfo100DebugInlinedAt = 25, OpenCLDebugInfo100DebugLocalVariable = 26, OpenCLDebugInfo100DebugInlinedVariable = 27, OpenCLDebugInfo100DebugDeclare = 28, OpenCLDebugInfo100DebugValue = 29, OpenCLDebugInfo100DebugOperation = 30, OpenCLDebugInfo100DebugExpression = 31, OpenCLDebugInfo100DebugMacroDef = 32, OpenCLDebugInfo100DebugMacroUndef = 33, OpenCLDebugInfo100DebugImportedEntity = 34, OpenCLDebugInfo100DebugSource = 35, OpenCLDebugInfo100InstructionsMax = 0x7fffffff }; enum OpenCLDebugInfo100DebugInfoFlags { OpenCLDebugInfo100FlagIsProtected = 0x01, OpenCLDebugInfo100FlagIsPrivate = 0x02, OpenCLDebugInfo100FlagIsPublic = 0x03, OpenCLDebugInfo100FlagIsLocal = 0x04, OpenCLDebugInfo100FlagIsDefinition = 0x08, OpenCLDebugInfo100FlagFwdDecl = 0x10, OpenCLDebugInfo100FlagArtificial = 0x20, OpenCLDebugInfo100FlagExplicit = 0x40, OpenCLDebugInfo100FlagPrototyped = 0x80, OpenCLDebugInfo100FlagObjectPointer = 0x100, OpenCLDebugInfo100FlagStaticMember = 0x200, OpenCLDebugInfo100FlagIndirectVariable = 0x400, OpenCLDebugInfo100FlagLValueReference = 0x800, OpenCLDebugInfo100FlagRValueReference = 0x1000, OpenCLDebugInfo100FlagIsOptimized = 0x2000, OpenCLDebugInfo100FlagIsEnumClass = 0x4000, OpenCLDebugInfo100FlagTypePassByValue = 0x8000, OpenCLDebugInfo100FlagTypePassByReference = 0x10000, OpenCLDebugInfo100DebugInfoFlagsMax = 0x7fffffff }; enum OpenCLDebugInfo100DebugBaseTypeAttributeEncoding { OpenCLDebugInfo100Unspecified = 0, OpenCLDebugInfo100Address = 1, OpenCLDebugInfo100Boolean = 2, OpenCLDebugInfo100Float = 3, OpenCLDebugInfo100Signed = 4, OpenCLDebugInfo100SignedChar = 5, OpenCLDebugInfo100Unsigned = 6, OpenCLDebugInfo100UnsignedChar = 7, OpenCLDebugInfo100DebugBaseTypeAttributeEncodingMax = 0x7fffffff }; enum OpenCLDebugInfo100DebugCompositeType { OpenCLDebugInfo100Class = 0, OpenCLDebugInfo100Structure = 1, OpenCLDebugInfo100Union = 2, OpenCLDebugInfo100DebugCompositeTypeMax = 0x7fffffff }; enum OpenCLDebugInfo100DebugTypeQualifier { OpenCLDebugInfo100ConstType = 0, OpenCLDebugInfo100VolatileType = 1, OpenCLDebugInfo100RestrictType = 2, OpenCLDebugInfo100AtomicType = 3, OpenCLDebugInfo100DebugTypeQualifierMax = 0x7fffffff }; enum OpenCLDebugInfo100DebugOperation { OpenCLDebugInfo100Deref = 0, OpenCLDebugInfo100Plus = 1, OpenCLDebugInfo100Minus = 2, OpenCLDebugInfo100PlusUconst = 3, OpenCLDebugInfo100BitPiece = 4, OpenCLDebugInfo100Swap = 5, OpenCLDebugInfo100Xderef = 6, OpenCLDebugInfo100StackValue = 7, OpenCLDebugInfo100Constu = 8, OpenCLDebugInfo100Fragment = 9, OpenCLDebugInfo100DebugOperationMax = 0x7fffffff }; enum OpenCLDebugInfo100DebugImportedEntity { OpenCLDebugInfo100ImportedModule = 0, OpenCLDebugInfo100ImportedDeclaration = 1, OpenCLDebugInfo100DebugImportedEntityMax = 0x7fffffff }; #ifdef __cplusplus } #endif #endif // SPIRV_UNIFIED1_OpenCLDebugInfo100_H_