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.

llvm-svn: 173066

clang/lib/Serialization/ASTReader.cpp

index db850f3..97766d0 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;