Intel 121748-001 manual Line Numbers Record Linnum REC, TYP Length, Line NU!\1BER Sase

Models: 121748-001

1 122
Download 122 pages 57.59 Kb
Page 51
Image 51

808~ Object Module Formats

Version 4.0

LINE NUMBERS RECORD (LINNUM)

***********************///***********************************

*

 

*

 

*

 

*

 

*

 

*

*

*

REC

*

RECORD

*

LINE

*

LINE

*

LINE

*

CHK *

*

TYP

*

LENGTH

*

NUMBER

*

NUMBER

*

NUMBER

*

SUM *

*

94H

*

 

*

BASE

*

 

*

OFFSET

*

*

*

 

*

 

*

 

*

 

*

 

*

*

***********************///***********************************

II +--------repeated-------+

This record provides the means by which a translator may pass to a debugger proqram, the correspondence between a line number in source code and the correspondinq translated code.

Since several independent source modules, with independent line

numberinq, may be linked to form a sinqle module, a full identification of a source text line must include both its number, and also the name of the original containinq module. The latter identification is provided by the previous T-MODULE HEADER Record.

LINE NU!\1BER SASE

The LINE NUMBER BASE has the following format:

*****///*********///*****************

*

GROUP

*

SEGMENT

*

FRAME

*

*

*

*

*

*

INDEX

*

INDEX

*

NUMBER

*

*

 

*

 

*

 

*

*

 

*

 

*

 

*

*****///*********///*****************

I, +conditional+

The LINE NU~BER BA~~ has the same format and interpretation as the LOCAL SY~BOL BASE described for the LOCSYM record. The SEGMENT

INDEX and (if present) the FRAME NUMBER fields determine the location of the first byte of code correspondinq to some source line

number. This location may be physical (SEGMENT INDEX is 0) or logical (SEGMENT INDEX is non-zero). The value of the GROUP INDEX

field, if non-zero, informs LOCATE-8h what base-part to use for

describing the final, 20-bit location of the code line. An example shows the use of a non-zero Group Index: A translator knows that the code segment it is compiling is ~ut one LSEG of many in a Group, and thus references to pieces of the code seqment are fixed up under the assumption that the appropriate seqment register contains the location of the base of the group. At debuq time, the user may tell

51

Page 51
Image 51
Intel 121748-001 manual Line Numbers Record Linnum REC, TYP Length, Line NU!\1BER Sase