diff options
Diffstat (limited to 'contrib/llvm-project/clang/include/clang/Serialization/ASTBitCodes.h')
-rw-r--r-- | contrib/llvm-project/clang/include/clang/Serialization/ASTBitCodes.h | 80 |
1 files changed, 62 insertions, 18 deletions
diff --git a/contrib/llvm-project/clang/include/clang/Serialization/ASTBitCodes.h b/contrib/llvm-project/clang/include/clang/Serialization/ASTBitCodes.h index 027a981df22c..fdd64f2abbe9 100644 --- a/contrib/llvm-project/clang/include/clang/Serialization/ASTBitCodes.h +++ b/contrib/llvm-project/clang/include/clang/Serialization/ASTBitCodes.h @@ -41,7 +41,7 @@ namespace serialization { /// Version 4 of AST files also requires that the version control branch and /// revision match exactly, since there is no backward compatibility of /// AST files at this time. -const unsigned VERSION_MAJOR = 15; +const unsigned VERSION_MAJOR = 29; /// AST file minor version number supported by this version of /// Clang. @@ -51,7 +51,7 @@ const unsigned VERSION_MAJOR = 15; /// for the previous version could still support reading the new /// version by ignoring new kinds of subblocks), this number /// should be increased. -const unsigned VERSION_MINOR = 0; +const unsigned VERSION_MINOR = 1; /// An ID number that refers to an identifier in an AST file. /// @@ -343,9 +343,6 @@ enum ControlRecordTypes { /// name. ORIGINAL_FILE, - /// The directory that the PCH was originally created in. - ORIGINAL_PCH_DIR, - /// Record code for file ID of the file or buffer that was used to /// generate the AST file. ORIGINAL_FILE_ID, @@ -400,8 +397,14 @@ enum UnhashedControlBlockRecordTypes { /// Record code for the diagnostic options table. DIAGNOSTIC_OPTIONS, + /// Record code for the headers search paths. + HEADER_SEARCH_PATHS, + /// Record code for \#pragma diagnostic mappings. DIAG_PRAGMA_MAPPINGS, + + /// Record code for the indices of used header search entries. + HEADER_SEARCH_ENTRY_USAGE, }; /// Record code for extension blocks. @@ -521,13 +524,7 @@ enum ASTRecordTypes { /// of source-location information. SOURCE_LOCATION_OFFSETS = 14, - /// Record code for the set of source location entries - /// that need to be preloaded by the AST reader. - /// - /// This set contains the source location entry for the - /// predefines buffer and for any file entries that need to be - /// preloaded. - SOURCE_LOCATION_PRELOADS = 15, + // ID 15 used to be for source location entry preloads. /// Record code for the set of ext_vector type names. EXT_VECTOR_DECLS = 16, @@ -692,6 +689,12 @@ enum ASTRecordTypes { /// Record code for \#pragma float_control options. FLOAT_CONTROL_PRAGMA_OPTIONS = 65, + + /// ID 66 used to be the list of included files. + + /// Record code for an unterminated \#pragma clang assume_nonnull begin + /// recorded in a preamble. + PP_ASSUME_NONNULL_LOC = 67, }; /// Record types used within a source manager block. @@ -822,6 +825,9 @@ enum SubmoduleRecordTypes { /// Specifies the name of the module that will eventually /// re-export the entities in this module. SUBMODULE_EXPORT_AS = 17, + + /// Specifies affecting modules that were not imported. + SUBMODULE_AFFECTING_MODULES = 18, }; /// Record types used within a comments block. @@ -1064,6 +1070,9 @@ enum PredefinedTypeIDs { /// \brief The '__bf16' type PREDEF_TYPE_BFLOAT16_ID = 73, + /// \brief The '__ibm128' type + PREDEF_TYPE_IBM128_ID = 74, + /// OpenCL image types with auto numeration #define IMAGE_TYPE(ImgType, Id, SingletonId, Access, Suffix) \ PREDEF_TYPE_##Id##_ID, @@ -1080,6 +1089,11 @@ enum PredefinedTypeIDs { // \brief RISC-V V types with auto numeration #define RVV_TYPE(Name, Id, SingletonId) PREDEF_TYPE_##Id##_ID, #include "clang/Basic/RISCVVTypes.def" +// \brief WebAssembly reference types with auto numeration +#define WASM_TYPE(Name, Id, SingletonId) PREDEF_TYPE_##Id##_ID, +#include "clang/Basic/WebAssemblyReferenceTypes.def" + // Sentinel value. Considered a predefined type but not useable as one. + PREDEF_TYPE_LAST_ID }; /// The number of predefined type IDs that are reserved for @@ -1087,7 +1101,13 @@ enum PredefinedTypeIDs { /// /// Type IDs for non-predefined types will start at /// NUM_PREDEF_TYPE_IDs. -const unsigned NUM_PREDEF_TYPE_IDS = 300; +const unsigned NUM_PREDEF_TYPE_IDS = 502; + +// Ensure we do not overrun the predefined types we reserved +// in the enum PredefinedTypeIDs above. +static_assert(PREDEF_TYPE_LAST_ID < NUM_PREDEF_TYPE_IDS, + "Too many enumerators in PredefinedTypeIDs. Review the value of " + "NUM_PREDEF_TYPE_IDS"); /// Record codes for each kind of type. /// @@ -1302,6 +1322,9 @@ enum DeclCode { /// A FileScopeAsmDecl record. DECL_FILE_SCOPE_ASM, + /// A TopLevelStmtDecl record. + DECL_TOP_LEVEL_STMT_DECL, + /// A BlockDecl record. DECL_BLOCK, @@ -1452,10 +1475,6 @@ enum DeclCode { /// template template parameter pack. DECL_EXPANDED_TEMPLATE_TEMPLATE_PARM_PACK, - /// A ClassScopeFunctionSpecializationDecl record a class scope - /// function specialization. (Microsoft extension). - DECL_CLASS_SCOPE_FUNCTION_SPECIALIZATION, - /// An ImportDecl recording a module import. DECL_IMPORT, @@ -1495,7 +1514,16 @@ enum DeclCode { /// An OMPDeclareReductionDecl record. DECL_OMP_DECLARE_REDUCTION, - DECL_LAST = DECL_OMP_DECLARE_REDUCTION + /// A UnnamedGlobalConstantDecl record. + DECL_UNNAMED_GLOBAL_CONSTANT, + + /// A HLSLBufferDecl record. + DECL_HLSL_BUFFER, + + /// An ImplicitConceptSpecializationDecl record. + DECL_IMPLICIT_CONCEPT_SPECIALIZATION, + + DECL_LAST = DECL_IMPLICIT_CONCEPT_SPECIALIZATION }; /// Record codes for each kind of statement or expression. @@ -1833,6 +1861,9 @@ enum StmtCode { /// A CXXBoolLiteralExpr record. EXPR_CXX_BOOL_LITERAL, + /// A CXXParenListInitExpr record. + EXPR_CXX_PAREN_LIST_INIT, + EXPR_CXX_NULL_PTR_LITERAL, // CXXNullPtrLiteralExpr EXPR_CXX_TYPEID_EXPR, // CXXTypeidExpr (of expr). EXPR_CXX_TYPEID_TYPE, // CXXTypeidExpr (of type). @@ -1890,6 +1921,7 @@ enum StmtCode { STMT_SEH_TRY, // SEHTryStmt // OpenMP directives + STMT_OMP_META_DIRECTIVE, STMT_OMP_CANONICAL_LOOP, STMT_OMP_PARALLEL_DIRECTIVE, STMT_OMP_SIMD_DIRECTIVE, @@ -1905,9 +1937,11 @@ enum StmtCode { STMT_OMP_PARALLEL_FOR_DIRECTIVE, STMT_OMP_PARALLEL_FOR_SIMD_DIRECTIVE, STMT_OMP_PARALLEL_MASTER_DIRECTIVE, + STMT_OMP_PARALLEL_MASKED_DIRECTIVE, STMT_OMP_PARALLEL_SECTIONS_DIRECTIVE, STMT_OMP_TASK_DIRECTIVE, STMT_OMP_TASKYIELD_DIRECTIVE, + STMT_OMP_ERROR_DIRECTIVE, STMT_OMP_BARRIER_DIRECTIVE, STMT_OMP_TASKWAIT_DIRECTIVE, STMT_OMP_FLUSH_DIRECTIVE, @@ -1931,6 +1965,10 @@ enum StmtCode { STMT_OMP_MASTER_TASKLOOP_SIMD_DIRECTIVE, STMT_OMP_PARALLEL_MASTER_TASKLOOP_DIRECTIVE, STMT_OMP_PARALLEL_MASTER_TASKLOOP_SIMD_DIRECTIVE, + STMT_OMP_MASKED_TASKLOOP_DIRECTIVE, + STMT_OMP_MASKED_TASKLOOP_SIMD_DIRECTIVE, + STMT_OMP_PARALLEL_MASKED_TASKLOOP_DIRECTIVE, + STMT_OMP_PARALLEL_MASKED_TASKLOOP_SIMD_DIRECTIVE, STMT_OMP_DISTRIBUTE_DIRECTIVE, STMT_OMP_TARGET_UPDATE_DIRECTIVE, STMT_OMP_DISTRIBUTE_PARALLEL_FOR_DIRECTIVE, @@ -1947,9 +1985,15 @@ enum StmtCode { STMT_OMP_TARGET_TEAMS_DISTRIBUTE_PARALLEL_FOR_DIRECTIVE, STMT_OMP_TARGET_TEAMS_DISTRIBUTE_PARALLEL_FOR_SIMD_DIRECTIVE, STMT_OMP_TARGET_TEAMS_DISTRIBUTE_SIMD_DIRECTIVE, + STMT_OMP_SCOPE_DIRECTIVE, STMT_OMP_INTEROP_DIRECTIVE, STMT_OMP_DISPATCH_DIRECTIVE, STMT_OMP_MASKED_DIRECTIVE, + STMT_OMP_GENERIC_LOOP_DIRECTIVE, + STMT_OMP_TEAMS_GENERIC_LOOP_DIRECTIVE, + STMT_OMP_TARGET_TEAMS_GENERIC_LOOP_DIRECTIVE, + STMT_OMP_PARALLEL_GENERIC_LOOP_DIRECTIVE, + STMT_OMP_TARGET_PARALLEL_GENERIC_LOOP_DIRECTIVE, EXPR_OMP_ARRAY_SECTION, EXPR_OMP_ARRAY_SHAPING, EXPR_OMP_ITERATOR, |