aboutsummaryrefslogtreecommitdiff
path: root/lib/Lex/PTHLexer.cpp
diff options
context:
space:
mode:
authorTed Kremenek <kremenek@apple.com>2008-12-23 18:41:34 +0000
committerTed Kremenek <kremenek@apple.com>2008-12-23 18:41:34 +0000
commit18d9afb815bd8aff885dd64c5078760b3398d7be (patch)
treee9ce1d069e39caa5aab098b8c8c9805b940f3553 /lib/Lex/PTHLexer.cpp
parent6b1c9708c8fca3786c766b6d1869721656b31322 (diff)
PTH: Use 3 bytes instead of 4 bytes to encode the persistent ID for a token.
- This reduces the PTH size for Cocoa.h by 7%. - The increases PTH -Eonly speed for Cocoa.h by 0.8%. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@61377 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Lex/PTHLexer.cpp')
-rw-r--r--lib/Lex/PTHLexer.cpp17
1 files changed, 8 insertions, 9 deletions
diff --git a/lib/Lex/PTHLexer.cpp b/lib/Lex/PTHLexer.cpp
index dc8f842cec..b60b915d92 100644
--- a/lib/Lex/PTHLexer.cpp
+++ b/lib/Lex/PTHLexer.cpp
@@ -26,7 +26,7 @@
using namespace clang;
-#define DISK_TOKEN_SIZE (2+4+4+2)
+#define DISK_TOKEN_SIZE (1+1+3+4+2)
//===----------------------------------------------------------------------===//
// Utility methods for reading from the mmap'ed PTH file.
@@ -69,16 +69,15 @@ LexNextToken:
uint32_t perID = ((uint32_t) CurPtrShadow[2])
| (((uint32_t) CurPtrShadow[3]) << 8)
- | (((uint32_t) CurPtrShadow[4]) << 16)
- | (((uint32_t) CurPtrShadow[5]) << 24);
+ | (((uint32_t) CurPtrShadow[4]) << 16);
- uint32_t FileOffset = ((uint32_t) CurPtrShadow[6])
- | (((uint32_t) CurPtrShadow[7]) << 8)
- | (((uint32_t) CurPtrShadow[8]) << 16)
- | (((uint32_t) CurPtrShadow[9]) << 24);
+ uint32_t FileOffset = ((uint32_t) CurPtrShadow[5])
+ | (((uint32_t) CurPtrShadow[6]) << 8)
+ | (((uint32_t) CurPtrShadow[7]) << 16)
+ | (((uint32_t) CurPtrShadow[8]) << 24);
- uint32_t Len = ((uint32_t) CurPtrShadow[10])
- | (((uint32_t) CurPtrShadow[11]) << 8);
+ uint32_t Len = ((uint32_t) CurPtrShadow[9])
+ | (((uint32_t) CurPtrShadow[10]) << 8);
CurPtr = (const char*) (CurPtrShadow + DISK_TOKEN_SIZE);