Minor tweaks to PDB docs

- Fix a broken link
- Some spelling fixes
- Remove an unnecessary "amortized"
- Don't say "log(n) random access"; "random access" means O(1)
- Make MSF overview a bit more concise

Differential Revision: https://reviews.llvm.org/D61196

llvm-svn: 359714
This commit is contained in:
Nico Weber 2019-05-01 19:29:30 +00:00
parent 31f7c4aa77
commit 986c7dfa9f
4 changed files with 12 additions and 13 deletions

View File

@ -105,7 +105,8 @@ further guidance.
- **PdbDllRbld** - Unknown
- **MFCTypeServerIndex** - The length of the :ref:dbi_mfc_type_server_substream
- **MFCTypeServerIndex** - The length of the
:ref:`dbi_mfc_type_server_substream`.
- **Flags** - A bitfield with the following layout, containing various
information about how the program was built:

View File

@ -286,8 +286,8 @@ accurate.
within the TPI Hash Stream of the Type Index Offsets Buffer. This is a list of
pairs of uint32_t's where the first value is a :ref:`Type Index <type_indices>`
and the second value is the offset in the type record data of the type with this
index. This can be used to do a binary search followed bin a linear search to
get amortized O(log n) lookup by type index.
index. This can be used to do a binary search followed by a linear search to
get O(log n) lookup by type index.
- **HashAdjBufferOffset / HashAdjBufferLength** - The offset and size within
the TPI hash stream of a serialized hash table whose keys are the hash values
@ -308,5 +308,5 @@ variable length array of :doc:`CodeView type records <CodeViewTypes>`. The numb
of such records (e.g. the length of the array) can be determined by computing the
value ``Header.TypeIndexEnd - Header.TypeIndexBegin``.
log(n) random access is provided by way of the Type Index Offsets array (if present)
described previously.
O(log(n)) access is provided by way of the Type Index Offsets array (if
present) described previously.

View File

@ -60,13 +60,12 @@ File Layout
The MSF Container
-----------------
A PDB file is really just a special case of an MSF (Multi-Stream Format) file.
An MSF file is actually a miniature "file system within a file". It contains
multiple streams (aka files) which can represent arbitrary data, and these
streams are divided into blocks which may not necessarily be contiguously
laid out within the file (aka fragmented). Additionally, the MSF contains a
stream directory (aka MFT) which describes how the streams (files) are laid
out within the MSF.
A PDB file is an MSF (Multi-Stream Format) file. An MSF file is a "file system
within a file". It contains multiple streams (aka files) which can represent
arbitrary data, and these streams are divided into blocks which may not
necessarily be contiguously laid out within the MSF container file.
Additionally, the MSF contains a stream directory (aka MFT) which describes how
the streams (files) are laid out within the MSF.
For more information about the MSF container format, stream directory, and
block layout, see :doc:`MsfFile`.

View File

@ -341,7 +341,6 @@ struct SrcHeaderBlockEntry {
short Padding; // Pad to 4 bytes.
char Reserved[8];
};
static_assert(sizeof(SrcHeaderBlockEntry) == 40, "Incorrect struct size!");
} // namespace pdb