Include editorial changes from Coutant in Chapter 6 and 7
authorRon Brender <ron.brender@gmail.com>
Fri, 24 Jun 2016 22:32:21 +0000 (18:32 -0400)
committerRon Brender <ron.brender@gmail.com>
Fri, 24 Jun 2016 22:32:21 +0000 (18:32 -0400)
(accidently omitted from previous submission).
Signed-off-by: Ron Brender <ron.brender@gmail.com>
dwarf5/latexdoc/changesummary.tex
dwarf5/latexdoc/datarepresentation.tex
dwarf5/latexdoc/dwarf5.tex
dwarf5/latexdoc/otherdebugginginformation.tex

index 0b7c756..6397900 100644 (file)
@@ -15,7 +15,8 @@ This change summary is included only in draft versions of this document.
 \begin{longtable}{ll}
 \textbf{Date}  & \textbf{Issue Incorporated or Other Change}   \\ \hline       \\
 \endhead
-6/19/2016       & Remove change bars,  160301.1 (unnamed namespace), 160620.1 (generic type) \\
+6/24/2016       & Editoiral changes in 6.1.1.4.x, 7.3.5.3 \\
+6/23/2016       & Remove change bars,  160301.1 (unnamed namespace), 160620.1 (generic type) \\
 5/19-20/2016    & 150331.1 (Add language RenderScript), 160108.1 (Unify unit headers) \\
 4/15-5/2/2016   & Remove change bars, Other miscellaneous editorial work \\
 3/4-7/2016      & Editorial work from 3/4/2016 editorial review \\
index 823ea5a..fcefb55 100644 (file)
@@ -558,15 +558,19 @@ guaranteed to stop at an unused slot or find the match.
 \needlines{4}
 The table of offsets begins immediately following the parallel
 table (at offset \mbox{$16 + 12 * S$} from the beginning of the section).
-The table is a two-dimensional array of 4-byte words, 
-%(using the byte order of the application binary),
-with $N$ sections and $U + 1$
-rows, in row-major order. Each row in the array is indexed
-starting from 0. The first row provides a key to the columns:
-each column in this row provides a section identifier for a debug
-section, and the offsets in the same column of subsequent rows
-refer to that section. The section identifiers are shown in
-Table \referfol{tab:dwarfpackagefilesectionidentifierencodings}.
+\bb
+This table consists of a single header row containing $N$ fields,
+each a 4-byte unsigned integer, followed by $U$ data rows, each
+also containing $N$ fields of 4-byte unsigned integers. The fields
+in the header row provide a section identifier referring to a
+debug section; the available section identifiers are shown in
+Table \referfol{tab:dwarfpackagefilesectionidentifierencodings}. 
+Each data row corresponds to a specific CU
+or TU in the package file. In the data rows, each field provides
+an offset to the debug section whose identifier appears in the
+corresponding field of the header row. The data rows are indexed
+starting at 1.
+\eb
 
 \textit{Not all sections listed in the table need be included.}
 
@@ -611,12 +615,18 @@ interpreted as relative to the corresponding base offset.
 
 The table of sizes begins immediately following the table of
 offsets, and provides the sizes of the contributions made by each
-CU or TU to the corresponding section in the package file. Like
-the table of offsets, it is a two-dimensional array of 4-byte
-words, with $N$ 
-entries and $U$ rows, in row-major order. Each row in
-the array is indexed starting from 1 (row 0 of the table of
-offsets also serves as the key for the table of sizes).
+CU or TU to the corresponding section in the package file. 
+\bb
+This
+table consists of U data rows, each with N fields of 4-byte
+unsigned integers. Each data row corresponds to the same CU or TU
+as the corresponding data row in the table of offsets described
+above. Within each data row, the N fields also correspond
+one-to-one with the fields in the corresponding data row of the
+table of offsets. Each field provides the size of the
+contribution made by a CU or TU to the corresponding section in
+the package file.
+\eb
 
 For an example, see Figure \refersec{fig:examplecuindexsection}.
 
index 38a13e0..85e9139 100644 (file)
@@ -3,7 +3,7 @@
 % If draft is in the document class list, pix are just suggested
 % by an outline, the pic does not appear as a picture.
 %
-\newcommand{\docdate}{June 23, 2016}
+\newcommand{\docdate}{June 24, 2016}
 %
 \usepackage{ifthen}
     \newcommand{\ifthen}[2]{\ifthenelse{#1}{#2}{}}
index 4c6d9e7..e771e1b 100644 (file)
@@ -661,6 +661,7 @@ The name index is placed in a section named \dotdebugnames, and
 consists of the eight parts described in the following sections.
 
 \subsubsubsection{Section Header}
+\label{chap:sectionheader}
 The section header contains the following fields:
 \begin{enumerate}[1. ]
 \item \texttt{unit\_length} (\livelink{datarep:initiallengthvalues}{initial length}) \\
@@ -786,23 +787,29 @@ in the name table.
 
 \needlines{6}
 \subsubsubsection{Name Table}
-The name table immediately follows the hash lookup table. The name
-table is laid out in column-major order (that is, the first column,
-followed by the second column). Each entry in the first column
-contains the string table offset (\DWFORMstrp) of the name in the
-\dotdebugstr{} (or \dotdebugstrdwo) section. Each entry in the second
-column contains the offset (as a section offset) within the entry pool
-of the list of index entries for the name. Rows in the name table are
-indexed starting at 1 (to match the hashes array).
-
-The number of rows in the name table is given by \texttt{name\_count}.
-
-If there is a hash lookup table, the 
-row number of an entry in the name table must
-match the row number of its corresponding entry in the hashes array.
-
-If there is no hash lookup table, there is no ordering 
-requirement for the name table.
+\label{chap:nametable}
+\bb
+The name table immediately follows the hash lookup table. It
+consists of two arrays: an array of string offsets, followed
+immediately by an array of entry offsets. The items in both
+arrays are section offsets: 4-byte unsigned integers for the
+DWARF-32 format or 8-byte unsigned integers for the DWARF-64
+format. The string offsets in the first array refer to names in
+the \dotdebugstr{} (or \dotdebugstrdwo) section. The entry offsets
+in the second array refer to index entries, and are relative to
+the start of the entry pool area.
+
+These two arrays are indexed starting at 1, and correspond 
+one-to-one with each other. The length of each array is
+given by \texttt{name\_count}.
+
+If there is a hash lookup table, the hashes array corresponds on
+a one-to-one basis with the string offsets array and with the
+entry offsets array.
+
+\textit{If there is no hash lookup table, there is no ordering
+requirement for the name table.}
+\eb
 
 \needlines{6}
 \subsubsubsection{Abbreviations Table}
@@ -857,9 +864,13 @@ byte for the abbreviation code. The size of the table given by
 terminating 0 byte.
 
 \subsubsubsection{Entry Pool}
-The entry pool immediately follows the abbreviations table. The second
-column of each row of the name table points to an offset in the entry
-pool, where a series of index entries for that name is located.
+\bb
+The entry pool immediately follows the abbreviations table. 
+Each entry in the entry offsets array in the name table (see 
+Section \ref{chap:nametable})
+\eb
+points to an offset in the entry pool, where a series
+of index entries for that name is located.
 
 \needlines{4}
 Each index entry in the series begins with an abbreviation code, and is