[all-commits] [llvm/llvm-project] 646299: [Support] Convert BinaryStream class zoo to 64-bit...
Nico Weber via All-commits
all-commits at lists.llvm.org
Thu Sep 16 16:15:59 PDT 2021
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 646299d183ca72cbafd3a2d64629ce8cb3fcdd9d
https://github.com/llvm/llvm-project/commit/646299d183ca72cbafd3a2d64629ce8cb3fcdd9d
Author: Nico Weber <thakis at chromium.org>
Date: 2021-09-16 (Thu, 16 Sep 2021)
Changed paths:
M llvm/include/llvm/DebugInfo/MSF/MappedBlockStream.h
M llvm/include/llvm/Support/BinaryByteStream.h
M llvm/include/llvm/Support/BinaryItemStream.h
M llvm/include/llvm/Support/BinaryStream.h
M llvm/include/llvm/Support/BinaryStreamReader.h
M llvm/include/llvm/Support/BinaryStreamRef.h
M llvm/include/llvm/Support/BinaryStreamWriter.h
M llvm/lib/DebugInfo/MSF/MappedBlockStream.cpp
M llvm/lib/DebugInfo/PDB/Native/NativeEnumInjectedSources.cpp
M llvm/lib/Support/BinaryStreamReader.cpp
M llvm/lib/Support/BinaryStreamRef.cpp
M llvm/lib/Support/BinaryStreamWriter.cpp
M llvm/tools/llvm-pdbutil/LinePrinter.cpp
M llvm/tools/llvm-pdbutil/LinePrinter.h
M llvm/unittests/DebugInfo/MSF/MappedBlockStreamTest.cpp
M llvm/unittests/Support/BinaryStreamTest.cpp
Log Message:
-----------
[Support] Convert BinaryStream class zoo to 64-bit offsets
Most PDB fields on disk are 32-bit but describe the file in terms of MSF
blocks, which are 4 kiB by default.
So PDB files can be a bit larger than 4 GiB, and much larger if you create them
with a block size > 4 kiB.
This is a first (necessary, but by far not not sufficient) step towards
supporting such PDB files. Now we don't truncate in-memory file offsets (which
are in terms of bytes, not in terms of blocks).
No effective behavior change. lld-link will still error out if it were to
produce PDBs > 4 GiB.
Differential Revision: https://reviews.llvm.org/D109923
More information about the All-commits
mailing list