forked from OSchip/llvm-project
Update the writing of the block-information block in the AST file
format, so that llvm-bcanalyzer knows about all of the various record kinds. llvm-svn: 125086
This commit is contained in:
parent
ad7c5c1657
commit
0beaec05af
|
@ -666,6 +666,31 @@ static void AddStmtsExprs(llvm::BitstreamWriter &Stream,
|
|||
RECORD(EXPR_CXX_FUNCTIONAL_CAST);
|
||||
RECORD(EXPR_CXX_BOOL_LITERAL);
|
||||
RECORD(EXPR_CXX_NULL_PTR_LITERAL);
|
||||
RECORD(EXPR_CXX_TYPEID_EXPR);
|
||||
RECORD(EXPR_CXX_TYPEID_TYPE);
|
||||
RECORD(EXPR_CXX_UUIDOF_EXPR);
|
||||
RECORD(EXPR_CXX_UUIDOF_TYPE);
|
||||
RECORD(EXPR_CXX_THIS);
|
||||
RECORD(EXPR_CXX_THROW);
|
||||
RECORD(EXPR_CXX_DEFAULT_ARG);
|
||||
RECORD(EXPR_CXX_BIND_TEMPORARY);
|
||||
RECORD(EXPR_CXX_SCALAR_VALUE_INIT);
|
||||
RECORD(EXPR_CXX_NEW);
|
||||
RECORD(EXPR_CXX_DELETE);
|
||||
RECORD(EXPR_CXX_PSEUDO_DESTRUCTOR);
|
||||
RECORD(EXPR_EXPR_WITH_CLEANUPS);
|
||||
RECORD(EXPR_CXX_DEPENDENT_SCOPE_MEMBER);
|
||||
RECORD(EXPR_CXX_DEPENDENT_SCOPE_DECL_REF);
|
||||
RECORD(EXPR_CXX_UNRESOLVED_CONSTRUCT);
|
||||
RECORD(EXPR_CXX_UNRESOLVED_MEMBER);
|
||||
RECORD(EXPR_CXX_UNRESOLVED_LOOKUP);
|
||||
RECORD(EXPR_CXX_UNARY_TYPE_TRAIT);
|
||||
RECORD(EXPR_CXX_NOEXCEPT);
|
||||
RECORD(EXPR_OPAQUE_VALUE);
|
||||
RECORD(EXPR_BINARY_TYPE_TRAIT);
|
||||
RECORD(EXPR_PACK_EXPANSION);
|
||||
RECORD(EXPR_SIZEOF_PACK);
|
||||
RECORD(EXPR_SUBST_NON_TYPE_TEMPLATE_PARM_PACK);
|
||||
#undef RECORD
|
||||
}
|
||||
|
||||
|
@ -702,7 +727,18 @@ void ASTWriter::WriteBlockInfoBlock() {
|
|||
RECORD(MACRO_DEFINITION_OFFSETS);
|
||||
RECORD(CHAINED_METADATA);
|
||||
RECORD(REFERENCED_SELECTOR_POOL);
|
||||
|
||||
RECORD(TU_UPDATE_LEXICAL);
|
||||
RECORD(REDECLS_UPDATE_LATEST);
|
||||
RECORD(SEMA_DECL_REFS);
|
||||
RECORD(WEAK_UNDECLARED_IDENTIFIERS);
|
||||
RECORD(PENDING_IMPLICIT_INSTANTIATIONS);
|
||||
RECORD(DECL_REPLACEMENTS);
|
||||
RECORD(UPDATE_VISIBLE);
|
||||
RECORD(DECL_UPDATE_OFFSETS);
|
||||
RECORD(DECL_UPDATES);
|
||||
RECORD(CXX_BASE_SPECIFIER_OFFSETS);
|
||||
RECORD(DIAG_PRAGMA_MAPPINGS);
|
||||
|
||||
// SourceManager Block.
|
||||
BLOCK(SOURCE_MANAGER_BLOCK);
|
||||
RECORD(SM_SLOC_FILE_ENTRY);
|
||||
|
@ -718,7 +754,8 @@ void ASTWriter::WriteBlockInfoBlock() {
|
|||
RECORD(PP_TOKEN);
|
||||
RECORD(PP_MACRO_INSTANTIATION);
|
||||
RECORD(PP_MACRO_DEFINITION);
|
||||
|
||||
RECORD(PP_INCLUSION_DIRECTIVE);
|
||||
|
||||
// Decls and Types block.
|
||||
BLOCK(DECLTYPES_BLOCK);
|
||||
RECORD(TYPE_EXT_QUAL);
|
||||
|
@ -743,6 +780,21 @@ void ASTWriter::WriteBlockInfoBlock() {
|
|||
RECORD(TYPE_OBJC_INTERFACE);
|
||||
RECORD(TYPE_OBJC_OBJECT);
|
||||
RECORD(TYPE_OBJC_OBJECT_POINTER);
|
||||
RECORD(TYPE_DECLTYPE);
|
||||
RECORD(TYPE_ELABORATED);
|
||||
RECORD(TYPE_SUBST_TEMPLATE_TYPE_PARM);
|
||||
RECORD(TYPE_UNRESOLVED_USING);
|
||||
RECORD(TYPE_INJECTED_CLASS_NAME);
|
||||
RECORD(TYPE_OBJC_OBJECT);
|
||||
RECORD(TYPE_TEMPLATE_TYPE_PARM);
|
||||
RECORD(TYPE_TEMPLATE_SPECIALIZATION);
|
||||
RECORD(TYPE_DEPENDENT_NAME);
|
||||
RECORD(TYPE_DEPENDENT_TEMPLATE_SPECIALIZATION);
|
||||
RECORD(TYPE_DEPENDENT_SIZED_ARRAY);
|
||||
RECORD(TYPE_PAREN);
|
||||
RECORD(TYPE_PACK_EXPANSION);
|
||||
RECORD(TYPE_ATTRIBUTED);
|
||||
RECORD(TYPE_SUBST_TEMPLATE_TYPE_PARM_PACK);
|
||||
RECORD(DECL_TRANSLATION_UNIT);
|
||||
RECORD(DECL_TYPEDEF);
|
||||
RECORD(DECL_ENUM);
|
||||
|
@ -770,6 +822,34 @@ void ASTWriter::WriteBlockInfoBlock() {
|
|||
RECORD(DECL_BLOCK);
|
||||
RECORD(DECL_CONTEXT_LEXICAL);
|
||||
RECORD(DECL_CONTEXT_VISIBLE);
|
||||
RECORD(DECL_NAMESPACE);
|
||||
RECORD(DECL_NAMESPACE_ALIAS);
|
||||
RECORD(DECL_USING);
|
||||
RECORD(DECL_USING_SHADOW);
|
||||
RECORD(DECL_USING_DIRECTIVE);
|
||||
RECORD(DECL_UNRESOLVED_USING_VALUE);
|
||||
RECORD(DECL_UNRESOLVED_USING_TYPENAME);
|
||||
RECORD(DECL_LINKAGE_SPEC);
|
||||
RECORD(DECL_CXX_RECORD);
|
||||
RECORD(DECL_CXX_METHOD);
|
||||
RECORD(DECL_CXX_CONSTRUCTOR);
|
||||
RECORD(DECL_CXX_DESTRUCTOR);
|
||||
RECORD(DECL_CXX_CONVERSION);
|
||||
RECORD(DECL_ACCESS_SPEC);
|
||||
RECORD(DECL_FRIEND);
|
||||
RECORD(DECL_FRIEND_TEMPLATE);
|
||||
RECORD(DECL_CLASS_TEMPLATE);
|
||||
RECORD(DECL_CLASS_TEMPLATE_SPECIALIZATION);
|
||||
RECORD(DECL_CLASS_TEMPLATE_PARTIAL_SPECIALIZATION);
|
||||
RECORD(DECL_FUNCTION_TEMPLATE);
|
||||
RECORD(DECL_TEMPLATE_TYPE_PARM);
|
||||
RECORD(DECL_NON_TYPE_TEMPLATE_PARM);
|
||||
RECORD(DECL_TEMPLATE_TEMPLATE_PARM);
|
||||
RECORD(DECL_STATIC_ASSERT);
|
||||
RECORD(DECL_CXX_BASE_SPECIFIERS);
|
||||
RECORD(DECL_INDIRECTFIELD);
|
||||
RECORD(DECL_EXPANDED_NON_TYPE_TEMPLATE_PARM_PACK);
|
||||
|
||||
// Statements and Exprs can occur in the Decls and Types block.
|
||||
AddStmtsExprs(Stream, Record);
|
||||
#undef RECORD
|
||||
|
|
Loading…
Reference in New Issue