forked from OSchip/llvm-project
Move the Serialization library from 'instantiation' to 'expansion', with
the exception of its uses of SourceManager and SourceLocation APIs. llvm-svn: 135260
This commit is contained in:
parent
03b81a2eb4
commit
f92ac9eb7d
|
@ -392,8 +392,8 @@ namespace clang {
|
|||
/// SM_SLOC_BUFFER_ENTRY record.
|
||||
SM_SLOC_BUFFER_BLOB = 3,
|
||||
/// \brief Describes a source location entry (SLocEntry) for a
|
||||
/// macro instantiation.
|
||||
SM_SLOC_INSTANTIATION_ENTRY = 4,
|
||||
/// macro expansion.
|
||||
SM_SLOC_EXPANSION_ENTRY = 4,
|
||||
/// \brief Describes the SourceManager's line table, with
|
||||
/// information about #line directives.
|
||||
SM_LINE_TABLE = 5
|
||||
|
@ -420,9 +420,8 @@ namespace clang {
|
|||
|
||||
/// \brief Record types used within a preprocessor detail block.
|
||||
enum PreprocessorDetailRecordTypes {
|
||||
/// \brief Describes a macro instantiation within the preprocessing
|
||||
/// record.
|
||||
PPD_MACRO_INSTANTIATION = 0,
|
||||
/// \brief Describes a macro expansion within the preprocessing record.
|
||||
PPD_MACRO_EXPANSION = 0,
|
||||
|
||||
/// \brief Describes a macro definition within the preprocessing record.
|
||||
PPD_MACRO_DEFINITION = 1,
|
||||
|
|
|
@ -383,7 +383,7 @@ public:
|
|||
/// are relative to the given system root.
|
||||
///
|
||||
/// \param PPRec Record of the preprocessing actions that occurred while
|
||||
/// preprocessing this file, e.g., macro instantiations
|
||||
/// preprocessing this file, e.g., macro expansions
|
||||
void WriteAST(Sema &SemaRef, MemorizeStatCalls *StatCalls,
|
||||
const std::string &OutputFile,
|
||||
const char* isysroot);
|
||||
|
|
|
@ -1195,7 +1195,7 @@ ASTReader::ASTReadResult ASTReader::ReadSourceManagerBlock(PerFileData &F) {
|
|||
|
||||
case SM_SLOC_FILE_ENTRY:
|
||||
case SM_SLOC_BUFFER_ENTRY:
|
||||
case SM_SLOC_INSTANTIATION_ENTRY:
|
||||
case SM_SLOC_EXPANSION_ENTRY:
|
||||
// Once we hit one of the source location entries, we're done.
|
||||
return Success;
|
||||
}
|
||||
|
@ -1365,7 +1365,7 @@ ASTReader::ASTReadResult ASTReader::ReadSLocEntryRecord(unsigned ID) {
|
|||
break;
|
||||
}
|
||||
|
||||
case SM_SLOC_INSTANTIATION_ENTRY: {
|
||||
case SM_SLOC_EXPANSION_ENTRY: {
|
||||
SourceLocation SpellingLoc = ReadSourceLocation(*F, Record[1]);
|
||||
SourceMgr.createInstantiationLoc(SpellingLoc,
|
||||
ReadSourceLocation(*F, Record[2]),
|
||||
|
@ -1556,7 +1556,7 @@ PreprocessedEntity *ASTReader::LoadPreprocessedEntity(PerFileData &F) {
|
|||
(PreprocessorDetailRecordTypes)F.PreprocessorDetailCursor.ReadRecord(
|
||||
Code, Record, BlobStart, BlobLen);
|
||||
switch (RecType) {
|
||||
case PPD_MACRO_INSTANTIATION: {
|
||||
case PPD_MACRO_EXPANSION: {
|
||||
if (PreprocessedEntity *PE = PPRec.getPreprocessedEntity(Record[0]))
|
||||
return PE;
|
||||
|
||||
|
|
|
@ -789,7 +789,7 @@ void ASTWriter::WriteBlockInfoBlock() {
|
|||
RECORD(SM_SLOC_FILE_ENTRY);
|
||||
RECORD(SM_SLOC_BUFFER_ENTRY);
|
||||
RECORD(SM_SLOC_BUFFER_BLOB);
|
||||
RECORD(SM_SLOC_INSTANTIATION_ENTRY);
|
||||
RECORD(SM_SLOC_EXPANSION_ENTRY);
|
||||
RECORD(SM_LINE_TABLE);
|
||||
|
||||
// Preprocessor Block.
|
||||
|
@ -896,7 +896,7 @@ void ASTWriter::WriteBlockInfoBlock() {
|
|||
AddStmtsExprs(Stream, Record);
|
||||
|
||||
BLOCK(PREPROCESSOR_DETAIL_BLOCK);
|
||||
RECORD(PPD_MACRO_INSTANTIATION);
|
||||
RECORD(PPD_MACRO_EXPANSION);
|
||||
RECORD(PPD_MACRO_DEFINITION);
|
||||
RECORD(PPD_INCLUSION_DIRECTIVE);
|
||||
|
||||
|
@ -1250,12 +1250,12 @@ static unsigned CreateSLocBufferBlobAbbrev(llvm::BitstreamWriter &Stream) {
|
|||
return Stream.EmitAbbrev(Abbrev);
|
||||
}
|
||||
|
||||
/// \brief Create an abbreviation for the SLocEntry that refers to an
|
||||
/// buffer.
|
||||
static unsigned CreateSLocInstantiationAbbrev(llvm::BitstreamWriter &Stream) {
|
||||
/// \brief Create an abbreviation for the SLocEntry that refers to a macro
|
||||
/// expansion.
|
||||
static unsigned CreateSLocExpansionAbbrev(llvm::BitstreamWriter &Stream) {
|
||||
using namespace llvm;
|
||||
BitCodeAbbrev *Abbrev = new BitCodeAbbrev();
|
||||
Abbrev->Add(BitCodeAbbrevOp(SM_SLOC_INSTANTIATION_ENTRY));
|
||||
Abbrev->Add(BitCodeAbbrevOp(SM_SLOC_EXPANSION_ENTRY));
|
||||
Abbrev->Add(BitCodeAbbrevOp(BitCodeAbbrevOp::VBR, 8)); // Offset
|
||||
Abbrev->Add(BitCodeAbbrevOp(BitCodeAbbrevOp::VBR, 8)); // Spelling location
|
||||
Abbrev->Add(BitCodeAbbrevOp(BitCodeAbbrevOp::VBR, 8)); // Start location
|
||||
|
@ -1414,7 +1414,7 @@ void ASTWriter::WriteSourceManagerBlock(SourceManager &SourceMgr,
|
|||
unsigned SLocFileAbbrv = CreateSLocFileAbbrev(Stream);
|
||||
unsigned SLocBufferAbbrv = CreateSLocBufferAbbrev(Stream);
|
||||
unsigned SLocBufferBlobAbbrv = CreateSLocBufferBlobAbbrev(Stream);
|
||||
unsigned SLocInstantiationAbbrv = CreateSLocInstantiationAbbrev(Stream);
|
||||
unsigned SLocExpansionAbbrv = CreateSLocExpansionAbbrev(Stream);
|
||||
|
||||
// Write the line table.
|
||||
if (SourceMgr.hasLineTable()) {
|
||||
|
@ -1479,7 +1479,7 @@ void ASTWriter::WriteSourceManagerBlock(SourceManager &SourceMgr,
|
|||
} else
|
||||
Code = SM_SLOC_BUFFER_ENTRY;
|
||||
} else
|
||||
Code = SM_SLOC_INSTANTIATION_ENTRY;
|
||||
Code = SM_SLOC_EXPANSION_ENTRY;
|
||||
Record.clear();
|
||||
Record.push_back(Code);
|
||||
|
||||
|
@ -1539,7 +1539,7 @@ void ASTWriter::WriteSourceManagerBlock(SourceManager &SourceMgr,
|
|||
PreloadSLocs.push_back(BaseSLocID + SLocEntryOffsets.size());
|
||||
}
|
||||
} else {
|
||||
// The source location entry is an instantiation.
|
||||
// The source location entry is a macro expansion.
|
||||
const SrcMgr::InstantiationInfo &Inst = SLoc->getInstantiation();
|
||||
Record.push_back(Inst.getSpellingLoc().getRawEncoding());
|
||||
Record.push_back(Inst.getInstantiationLocStart().getRawEncoding());
|
||||
|
@ -1550,7 +1550,7 @@ void ASTWriter::WriteSourceManagerBlock(SourceManager &SourceMgr,
|
|||
if (I + 1 != N)
|
||||
NextOffset = SourceMgr.getSLocEntry(I + 1).getOffset();
|
||||
Record.push_back(NextOffset - SLoc->getOffset() - 1);
|
||||
Stream.EmitRecordWithAbbrev(SLocInstantiationAbbrv, Record);
|
||||
Stream.EmitRecordWithAbbrev(SLocExpansionAbbrv, Record);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -1806,7 +1806,7 @@ void ASTWriter::WritePreprocessorDetail(PreprocessingRecord &PPRec) {
|
|||
AddSourceLocation(ME->getSourceRange().getEnd(), Record);
|
||||
AddIdentifierRef(ME->getName(), Record);
|
||||
Record.push_back(getMacroDefinitionID(ME->getDefinition()));
|
||||
Stream.EmitRecord(PPD_MACRO_INSTANTIATION, Record);
|
||||
Stream.EmitRecord(PPD_MACRO_EXPANSION, Record);
|
||||
continue;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue