================
@@ -6718,11 +6698,23 @@ SourceRange ASTReader::ReadSkippedRange(unsigned
GlobalIndex) {
return Range;
}
+unsigned
+ASTReader::translatePreprocessedEntityIDToIndex(PreprocessedEntityID ID) const
{
+ unsigned ModuleFileIndex = ID >> 32;
+ assert(ModuleFileIndex && "not translating loaded MacroID?");
+ assert(getModuleManager().size() > ModuleFileIndex - 1);
+ ModuleFile &MF = getModuleManager()[ModuleFileIndex - 1];
+
+ ID &= llvm::maskTrailingOnes<PreprocessedEntityID>(32);
+ return MF.BasePreprocessedEntityID + ID;
+}
+
PreprocessedEntity *ASTReader::ReadPreprocessedEntity(unsigned Index) {
- PreprocessedEntityID PPID = Index+1;
std::pair<ModuleFile *, unsigned> PPInfo =
getModulePreprocessedEntity(Index);
ModuleFile &M = *PPInfo.first;
unsigned LocalIndex = PPInfo.second;
+ PreprocessedEntityID PPID =
+ (((PreprocessedEntityID)M.Index + 1) << 32) | LocalIndex;
----------------
ChuanqiXu9 wrote:
Done
https://github.com/llvm/llvm-project/pull/166346
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits