LINENUM(4) LINENUM(4)
НАЗВАНИЕ
linenum - информация о номерах строк исходного текста в
объектном файле обычного формата
СИНТАКСИС
#include
ОПИСАНИЕ
Если указана опция -g, то команда cc(1) создает в объ-
ектном файле элементы с информацией о номере каждой
строки исходного текста, на которую можно поставить
точку прерывания. Эта информация используется при от-
ладке [см. sdb(1)]. Структура элемента приведена ниже:
struct lineno {
union {
long l_symndx; /* Если l_lnno == 0, то номер элемента
табл. имен, описывающего функцию */
long l_paddr; /* Физический адрес команд, соответст-
вующих строке */
} l_addr;
unsigned short l_lnno; /* Номер строки */
};
Нумерация строк начинается заново для каждой функции. У
первого соответствующего функции элемента поле l_lnno
равно 0, и в поле l_symndx содержится номер элемента
таблицы имен, описывающего имя этой функции. У других
элементов поле l_lnno не равно 0, и в l_paddr содержит-
ся адрес команд, соответствующих строке с номером
l_lnno. Таким образом, общая структура имеет следующий
вид:
l_addr l_lnno
номер элемента таблицы имен, 0
описывающего функцию
адрес номер строки
адрес номер строки
...
номер элемента таблицы имен, 0
описывающего функцию
адрес номер строки
адрес номер строки
...
СМ. ТАКЖЕ
a.out(4).
cc(1), sdb(1) в Справочнике пользователя.
|