]> granicus.if.org Git - clang/commitdiff
ReadSourceManagerBlock is skipping over records that can contain Blobs. Not passing
authorChris Lattner <sabre@nondot.org>
Mon, 21 Jan 2013 18:28:26 +0000 (18:28 +0000)
committerChris Lattner <sabre@nondot.org>
Mon, 21 Jan 2013 18:28:26 +0000 (18:28 +0000)
in a StringRef to bind to them forces them to be unpacked into the Record as individual
bytes.  This is wasteful, but not likely to be measurable in this instance.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173066 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Serialization/ASTReader.cpp

index db850f3f83fe75eba6c6378457af2801c47291ef..97766d0f7dfa27ab0c0557ade6e92171004dc7ea 100644 (file)
@@ -810,7 +810,8 @@ bool ASTReader::ReadSourceManagerBlock(ModuleFile &F) {
     
     // Read a record.
     Record.clear();
-    switch (SLocEntryCursor.readRecord(E.ID, Record)) {
+    StringRef Blob;
+    switch (SLocEntryCursor.readRecord(E.ID, Record, &Blob)) {
     default:  // Default behavior: ignore.
       break;