TAL Programmer's Guide
Source Listing
Compiler Listing
096254 Tandem Computers Incorporated 15–3
Source Listing If the LIST directive is in effect (the default), the source text is listed line by line. Each
line consists of:
The edit-file line number
The code-address field
The lexical (nesting) level of the source text
The BEGIN-END pair counter
A text line from the source file
For example, here are two lines from a source listing:
31. 000021 1 1 IF length THEN BEGIN
32. 000023 1 2 CALL FILE_OPEN_ (array1, out_file);
413
Edit-file line number
Lexical level
Source text line
Code-address field
BEGIN-END counter
Edit-File Line Number An edit-file line number precedes each line of source text. For text that is included in
response to a SOURCE directive, the edit-file line numbers correspond to the file
named in the SOURCE directive.
Code-Address Field The code address is a six-digit octal number. Depending on the line of source text, it
represents an instruction offset or a secondary global count.
For a line of data declarations, the code-address value is a cumulative count of the
amount of secondary global storage allocated for the program. The count is relative to
the beginning of the secondary global storage. The beginning address is one greater
than the last address assigned to primary global storage.
For a line of instructions, the code-address value is the address of the first instruction
generated from the TAL source statement on the line. Normally, the octal value is the
offset from the base of the current procedure; the instruction at the base has an offset
of zero. Adding the offset to the procedure base address yields the code-relative
address of the instruction. The procedure base address is listed in the entry-point load
map (described later in this section).
If a procedure or subprocedure has initialized data declarations, the compiler emits
code to initialize the data at the start of the procedure or subprocedure. The offset or
code address listed for the first instruction is greater than one to allow for the
initialization code.