1 #LyX 1.3 created this file. For more info see http://www.lyx.org/
5 \pdfoptionpdfminorversion=3
7 pdftitle={CDB File Format},
8 pdfauthor={Lenny Story},
9 pdfkeywords={address c compiler debugger format GPL linker record SDCC},
11 linkcolor=blue] {hyperref}
17 \paperfontsize default
24 \use_numerical_citations 0
25 \paperorientation portrait
28 \paragraph_separation skip
30 \quotes_language english
58 \begin_inset LatexCommand \tableofcontents{}
68 The CDB File is used to record all of the information that describes the
69 variables, functions, lines, and memory items.
70 These records provide the critical information that allows external utilities
71 to properly locate and interpret variables, functions, and types.
72 Development tools such as simulators debuggers and profilers use these
73 records to analyze and describe the code in terms of the high level language
74 in which it was written.
75 The CDB file is therefore the critical link to bridging the compiled code
76 image to the source files from which it was built.
82 CDB files are created when the "-
92 -debug" option is used.
93 Each source file will have its own CDB file associated with it.
104 -debug flag is used during the link process, the CDB file of the FIRST source
105 module will contain all the records from all the source modules linked
106 as well as the linker records.
109 Code and variables that are removed during the optimization phase will not
110 be present in the debug file.
111 Images created for debugging purposes should always disable as much optimizatio
113 The following options are critical for the completeness of the resulting
116 \labelwidthstring 00.00.0000
128 -debug Mandatory to produce a debugging file.
131 \labelwidthstring 00.00.0000
143 -noinduction Induction processing occurs at the very latest stages of compilatio
145 This results in the inability to report the location of the resulting variables.
146 Including this option disables the loop induction optimization.
149 \labelwidthstring 00.00.0000
161 -nooverlay Overlay variables will not show up in the debug file.
162 Including this option will force variables to the data segment.
168 The record examples and grammar shown in this document are displayed on
169 multiple lines only for the purposes of readability.
170 The records contained within the CDB files are always encoded on a single
175 Record grammar is indicated here using a custom format of the following
179 Record Elements are surrounded using the characters `<' and '>'.
182 Alternation is indicated using the `|' character.
185 Non-mandatory items are surrounded using the characters `{` and `}'.
194 <RecordType><:><RecordSpec>
199 <lyxtabular version="3" rows="6" columns="3">
201 <column alignment="center" valignment="top" leftline="true" width="0pt">
202 <column alignment="left" valignment="top" leftline="true" width="0pt">
203 <column alignment="left" valignment="top" leftline="true" rightline="true" width="0pt">
204 <row topline="true" bottomline="true">
205 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
215 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
225 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
237 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
245 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
253 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
263 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
271 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
279 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
289 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
297 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
305 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
315 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
323 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
328 Structure (Complex Type) Record
331 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
340 <row topline="true" bottomline="true">
341 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
349 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
357 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
373 All records are ASCII text, with one record per line.
374 The record type is the first character, followed by a single colon ":".
375 Sub types are often included as part of the record specific format.
386 <lyxtabular version="3" rows="2" columns="2">
388 <column alignment="center" valignment="top" leftline="true" width="0pt">
389 <column alignment="left" valignment="top" leftline="true" rightline="true" width="0pt">
391 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
399 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
404 Module record type indicator
408 <row topline="true" bottomline="true">
409 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
417 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
422 The filename of the module that this CDB file represents.
438 The module record is used to define a source module.
439 It is usually used at the beginning of each of the module specific CDB
440 files, and will occur several times in the final CDB file produced by the
441 linker to represent each of the source modules.
442 The location of this record within the file does not necessarily indicate
443 the scope of the variables that follow.
444 Those variables that have module specific scope have an indication encoded
445 within their respective symbol entry.
465 <lyxtabular version="3" rows="12" columns="2">
467 <column alignment="center" valignment="top" leftline="true" rightline="true" width="0pt">
468 <column alignment="block" valignment="top" rightline="true" width="3.9in">
470 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
478 <cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
483 Symbol record type indicator
488 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
496 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
506 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
514 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
524 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
532 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
542 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
550 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
560 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
568 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
573 Scope level (see below)
578 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
586 <cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
591 Scope block (see below)
596 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
604 <cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
609 Type chain record (see type record below)
614 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
622 <cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
627 Address space code (see table below)
632 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
640 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
645 Is this symbol on the stack? Indicates if the next parameter is valid.
650 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
658 <cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
663 The stack Offsetorelative to the
664 \begin_inset Quotes eld
668 \begin_inset Quotes erd
672 (The libraries may have to be recompiled to include the -
682 -debug option for this variable to appear in the debug file).
686 <row topline="true" bottomline="true">
687 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
695 <cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
700 If the address space is 'R', this field indicates the register that the
702 The register name is in its native form: R1, AX, etc.
717 { G | F<Filename> | L { <function> |
718 \begin_inset Quotes eld
722 \begin_inset Quotes eld
741 <,><[><Reg><,>{<Reg><,>}<]>
744 A symbol record is generated for each named symbol in the source file; this
745 includes local, global and parameter symbols.
754 The level & block are used to further scope local variables since C allows
755 unique definitions across different scope blocks.
756 When using the symbol records, it is always important to include the level
757 and block information as part of the identification.
758 It is possible to have two symbols that share the same name, but have different
762 The linker address records contain not only the name of the symbol, but
763 the Scope information as well, which is instrumental in determining the
764 correct instantiation of the symbol.
767 Linker C line records also contain the Scope information (see below).
770 The following code fragment illustrates a simple scope example:
779 int c; /* block #1 , level #1 */
785 int c; /* block #2, level #2 */
797 int c; /* block #3 , level #2 */
811 <lyxtabular version="3" rows="12" columns="2">
813 <column alignment="center" valignment="top" leftline="true" width="0pt">
814 <column alignment="left" valignment="top" leftline="true" rightline="true" width="0pt">
816 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
824 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
834 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
842 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
852 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
860 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
870 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
878 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
883 Code / static segment
888 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
896 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
901 Internal ram (lower 128) bytes
906 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
914 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
924 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
932 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
942 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
950 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
960 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
968 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
978 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
986 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
996 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
1004 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
1013 <row topline="true" bottomline="true">
1014 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
1022 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
1027 Used for function records, or any undefined space code
1043 <DCLType> <,> {<DCLType> <,>} <:> <Sign>
1047 \begin_inset Tabular
1048 <lyxtabular version="3" rows="3" columns="2">
1050 <column alignment="center" valignment="top" leftline="true" width="0pt">
1051 <column alignment="left" valignment="top" leftline="true" rightline="true" width="0pt">
1052 <row topline="true">
1053 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
1061 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
1066 The size of the item in decimal.
1070 <row topline="true">
1071 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
1079 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
1084 The type encoded using the table below.
1088 <row topline="true" bottomline="true">
1089 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
1097 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
1102 The sign of the item.
1103 Encoded as 'U' or 'S'.
1119 The C programming language allows arbitrarily complex type constructions.
1120 Because of this, the CDB file type designations are organized as a list
1121 of basic primitive types.
1125 \begin_inset Tabular
1126 <lyxtabular version="3" rows="17" columns="2">
1128 <column alignment="center" valignment="top" leftline="true" width="0pt">
1129 <column alignment="left" valignment="top" leftline="true" rightline="true" width="0pt">
1130 <row topline="true">
1131 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
1139 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
1148 <row topline="true">
1149 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
1157 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
1166 <row topline="true">
1167 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
1175 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
1184 <row topline="true">
1185 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
1193 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
1202 <row topline="true">
1203 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
1211 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
1216 External ram pointer
1220 <row topline="true">
1221 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
1229 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
1234 Internal ram pointer
1238 <row topline="true">
1239 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
1247 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
1256 <row topline="true">
1257 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
1265 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
1270 Upper 128 byte pointer
1274 <row topline="true">
1275 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
1283 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
1292 <row topline="true">
1293 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
1301 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
1310 <row topline="true">
1311 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
1319 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
1328 <row topline="true">
1329 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
1337 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
1346 <row topline="true">
1347 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
1355 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
1364 <row topline="true">
1365 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
1373 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
1382 <row topline="true">
1383 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
1391 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
1396 Structure of name <name>
1400 <row topline="true">
1401 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
1409 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
1418 <row topline="true" bottomline="true">
1419 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
1427 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
1432 Bit field of <n> bits
1451 S:LcheckSerialPort$pstBuffer$1$1({3}DG,STTTinyBuffer:S),R,0,0,[r2,r3,r4]
1453 S:Ltimer0LoadExtended$count$1$1({2}SI:S),B,1,-4
1455 S:G$T2CON_7$0$0({1}SX:S),J,0,0
1457 S:LAdcInitialize$a$1$1({2}SI:S),B,1,1
1459 S:G$ScanCount$0$0({2}SI:S),F,0,0
1469 { G | F<Filename> | L { <function> |
1470 \begin_inset Quotes eld
1474 \begin_inset Quotes eld
1501 \begin_inset Tabular
1502 <lyxtabular version="3" rows="14" columns="2">
1504 <column alignment="center" valignment="top" leftline="true" width="0pt">
1505 <column alignment="block" valignment="top" leftline="true" rightline="true" width="3.9in">
1506 <row topline="true">
1507 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
1515 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
1520 Symbol record type indicator
1524 <row topline="true">
1525 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
1533 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
1542 <row topline="true">
1543 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
1551 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
1560 <row topline="true">
1561 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
1569 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
1578 <row topline="true">
1579 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
1587 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
1596 <row topline="true">
1597 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
1605 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
1610 Scope level (see below)
1614 <row topline="true">
1615 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
1623 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
1628 Scope block (see below)
1632 <row topline="true">
1633 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
1641 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
1646 Type chain record (see type record below)
1650 <row topline="true">
1651 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
1659 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
1664 Address space code <see table below>
1668 <row topline="true">
1669 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
1677 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
1682 Indicates if this is a stack variable
1686 <row topline="true">
1687 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
1695 <cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
1700 If stack variable, the stack offset relative to the
1701 \begin_inset Quotes eld
1705 \begin_inset Quotes erd
1709 (Libraries will have to be compiled using the -
1719 -debug option for this to be available)
1723 <row topline="true">
1724 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
1732 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
1737 Indicates if this is an interrupt handler.
1741 <row topline="true">
1742 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
1750 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
1755 If interrupt handler, this indicates the interrupt number.
1759 <row topline="true" bottomline="true">
1760 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
1768 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
1773 If interrupt handler, this ist he register bank number.
1789 The Function record defines any Source File function.
1790 Its construction is the same as the symbol record, with the addition of
1791 3 extra parameters for indicating interrupt handlers.
1801 F:G$main$0$0({2}DF,SV:S),C,0,0,0,0,0
1803 F:G$SioISR$0$0({2}DF,SV:S),Z,0,0,1,4,0
1817 <[><TypeMember> {<TypeMember>} <]>
1821 \begin_inset Tabular
1822 <lyxtabular version="3" rows="4" columns="2">
1824 <column alignment="center" valignment="top" leftline="true" width="0pt">
1825 <column alignment="left" valignment="top" leftline="true" rightline="true" width="0pt">
1826 <row topline="true">
1827 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
1835 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
1840 Type record type indicator
1844 <row topline="true">
1845 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
1853 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
1858 The filename where this type is declared
1862 <row topline="true">
1863 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
1871 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
1876 The name of this type
1880 <row topline="true" bottomline="true">
1881 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
1889 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
1908 <(><{><Offset><}><SymbolRecord><)>
1912 \begin_inset Tabular
1913 <lyxtabular version="3" rows="2" columns="2">
1915 <column alignment="center" valignment="top" leftline="true" width="0pt">
1916 <column alignment="block" valignment="top" leftline="true" rightline="true" width="3.9in">
1917 <row topline="true">
1918 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
1926 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
1931 The offset of this type member in decimal.
1935 <row topline="true" bottomline="true">
1936 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
1944 <cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
1949 A complete symbol record describing this Member.
1951 \begin_inset Quotes eld
1955 \begin_inset Quotes erd
1974 Type records describe the complex types within the source file.
1975 These include structure and union types.
1985 T:Fcmdas$TTinyBuffer[
1987 ({0}S:S$pNext$0$0({3}DG,STTTinyBuffer:S),Z,0,0)
1989 ({3}S:S$length$0$0({1}SC:U),Z,0,0)
1991 ({4}S:S$maxLength$0$0({1}SC:U),Z,0,0)
1993 ({5}S:S$rindex$0$0({1}SC:U),Z,0,0)
1995 ({6}S:S$windex$0$0({1}SC:U),Z,0,0)
1997 ({7}S:S$buffer$0$0({64}DA64,SC:U),Z,0,0)
2002 Link Address of Symbol
2009 { <G> | F<filename> | L<function> }
2021 \begin_inset Tabular
2022 <lyxtabular version="3" rows="8" columns="2">
2024 <column alignment="center" valignment="top" leftline="true" width="0pt">
2025 <column alignment="block" valignment="top" leftline="true" rightline="true" width="3.9in">
2026 <row topline="true">
2027 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
2035 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
2040 Link record type indicator
2044 <row topline="true">
2045 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
2053 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
2058 Symbol has file scope.
2062 <row topline="true">
2063 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
2071 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
2076 Symbol has file scope.
2080 <row topline="true">
2081 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
2089 <cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
2094 Symbol has function scope
2098 <row topline="true">
2099 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
2107 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
2116 <row topline="true">
2117 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
2125 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
2134 <row topline="true">
2135 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
2143 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
2152 <row topline="true" bottomline="true">
2153 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
2161 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
2166 Symbol address in hex, relative to the address space code, in the matching
2183 The link address record is used to bind a memory location to a symbol record.
2197 L:Fcmdas$_str_0$0$0:195
2200 Linker Symbol End Address Record
2207 { <G> | F<filename> | L<functionName> }
2219 \begin_inset Tabular
2220 <lyxtabular version="3" rows="9" columns="2">
2222 <column alignment="center" valignment="top" leftline="true" width="0pt">
2223 <column alignment="block" valignment="top" leftline="true" rightline="true" width="3.9in">
2224 <row topline="true">
2225 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
2233 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
2238 Link record type indicator
2242 <row topline="true">
2243 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
2251 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
2256 Link end address sub type indicator
2260 <row topline="true">
2261 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
2269 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
2274 Symbol has file scope.
2278 <row topline="true">
2279 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
2287 <cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
2292 Symbol has file scope.
2296 <row topline="true">
2297 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
2305 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
2310 Symbol has function scope.
2314 <row topline="true">
2315 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
2323 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
2332 <row topline="true">
2333 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
2341 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
2350 <row topline="true">
2351 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
2359 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
2368 <row topline="true" bottomline="true">
2369 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
2377 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
2382 Symbol end address in hex, relative to the address space code contained
2383 in the matching symbol record.
2399 The Linker Symbol end address record is primarily used to indicate the Ending
2400 address of functions.
2401 This is because function records do not contain a size value, as symbol
2412 L:XG$sysClearError$0$0:194
2417 Linker ASM Line Record
2432 \begin_inset Tabular
2433 <lyxtabular version="3" rows="5" columns="2">
2435 <column alignment="center" valignment="top" leftline="true" width="0pt">
2436 <column alignment="block" valignment="top" leftline="true" rightline="true" width="3.9in">
2437 <row topline="true">
2438 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
2446 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
2451 Link record type indicator
2455 <row topline="true">
2456 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
2464 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
2469 Link assembly file line record sub type indicator
2473 <row topline="true">
2474 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
2482 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
2487 Filename of the assembly file.
2491 <row topline="true">
2492 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
2500 <cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
2505 Line number in the above filename.{}These numbers start at 1 (not 0).
2509 <row topline="true" bottomline="true">
2510 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
2518 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
2539 The linker Asm Line record is used to bind the execution address with a
2540 source file and line number.
2550 L:A$TinyBuffer$2320:A13
2555 Linker C-Line Record
2574 \begin_inset Tabular
2575 <lyxtabular version="3" rows="7" columns="2">
2577 <column alignment="center" valignment="top" leftline="true" width="0pt">
2578 <column alignment="block" valignment="top" leftline="true" rightline="true" width="3.9in">
2579 <row topline="true">
2580 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
2588 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
2593 Link record type indicator
2597 <row topline="true">
2598 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
2606 <cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
2611 Link assembly file line record sub type indicator
2615 <row topline="true">
2616 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
2624 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
2629 Filename of the assembly file.
2633 <row topline="true">
2634 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
2642 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
2647 Line number in the above filename.
2648 These numbers start at 1 (not 0).
2652 <row topline="true">
2653 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
2661 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
2666 Current level at this line and address.
2670 <row topline="true">
2671 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
2679 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
2684 Current block at this line and address.
2688 <row topline="true" bottomline="true">
2689 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
2697 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
2718 The linker C-Line record is used to bind the execution address with a source
2719 file, line number and the level, block information.
2722 The following is an example source module with its lines showing the correspondi
2724 You will notice in this example that there are no line entries for lines
2726 This is because the code was optimized and removed.
2730 \begin_inset Tabular
2731 <lyxtabular version="3" rows="27" columns="3">
2733 <column alignment="center" valignment="top" width="0pt">
2734 <column alignment="left" valignment="top" width="0pt">
2735 <column alignment="left" valignment="top" width="0pt">
2737 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
2745 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
2752 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
2761 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
2769 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
2776 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
2788 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
2796 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
2803 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
2815 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
2823 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
2830 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
2844 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
2852 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
2859 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
2873 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
2881 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
2888 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
2900 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
2908 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
2915 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
2924 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
2932 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
2940 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
2952 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
2960 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
2967 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
2979 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
2987 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
2994 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
3008 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
3016 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
3023 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
3037 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
3045 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
3052 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
3061 struct complex myStruct;
3066 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
3074 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
3081 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
3090 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
3098 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
3103 L:C$vars.c$14$1$1:C1
3106 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
3115 for(iterA = 0; iterA < 10; iterA++)
3120 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
3128 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
3135 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
3149 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
3157 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
3162 L:C$vars.c$16$2$2:B9
3165 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
3176 for(iterB = 0; iterB < 10; iterB++)
3181 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
3189 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
3196 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
3212 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
3220 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
3227 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
3240 int iterA = 6 + iterB;
3245 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
3253 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
3260 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
3278 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
3286 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
3293 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
3302 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
3310 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
3315 L:C$vars.c$21$1$1:69
3318 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
3336 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
3344 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
3351 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
3360 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
3368 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
3373 L:C$vars.c$23$3$3:83
3376 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
3389 if(myStruct.count > myStruct.Max)
3394 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
3402 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
3407 L:C$vars.c$24$3$3:A3
3410 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
3425 myStruct.Max = mystruct.count;
3430 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
3438 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
3445 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
3461 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
3469 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
3476 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
3490 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
3498 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
3503 L:C$vars.c$27$1$1:CE
3506 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
3531 L:C$max1270.c$35$1$1:CA9
3533 L:C$Timer0.c$20$1$1:D9D
3573 struct complex myStruct;
3578 for(iterA = 0; iterA < 10; iterA++)
3584 for(iterB = 0; iterB < 10; iterB++)
3590 int iterA = 6 + iterB;
3609 if(myStruct.count > myStruct.Max)
3612 myStruct.Max = myStruct.count;
3631 F:G$main$0$0({2}DF,SV:S),C,0,0,0,0,0
3633 T:Fvars$complex[({0}S:S$count$0$0({2}SI:S),Z,0,0)({2}S:S$Max$0$0({2}SI:S),Z,0,0)
3636 S:Lmain$iterA$1$1({2}SI:S),R,0,0,[r0,r1]
3638 S:Lmain$iterB$1$1({2}SI:S),R,0,0,[r4,r5]
3640 S:Lmain$myStruct$1$1({4}STcomplex:S),E,0,0
3642 S:Lmain$iterA$3$3({2}SI:S),R,0,0,[r6,r7]
3644 S:G$IM$0$0({1}SC:U),I,0,0
3646 S:G$main$0$0({2}DF,SV:S),C,0,0
3650 L:Lmain$myStruct$1$1:8
3672 L:C$vars.c$10$0$0:38
3714 L:C$vars.c$20$3$3:59
3728 L:C$vars.c$21$3$3:62
3736 L:C$vars.c$23$3$3:67
3752 L:C$vars.c$25$3$3:74
3756 L:C$vars.c$27$3$3:76
3776 L:C$vars.c$28$3$3:87
3782 L:C$vars.c$18$2$2:8D
3792 L:C$vars.c$16$1$1:94
3802 L:C$vars.c$31$1$1:9C