PROCLIST [ System Debug Reference Manual ] MPE/iX 5.0 Documentation
System Debug Reference Manual
PROCLIST
Lists the specified NM symbols in the specified NM executable library.
Syntax
PROCLIST [pattern] [lstfile] [lookup_id] [detail] [outputfile]
The values printed by this command are the values found in the symbol
table that is searched. This command does not perform any form of symbol
location fixups. The addresses printed for most data symbols must be
relocated relative to DP to be useful.
Parameters
pattern The symbol names(s) that are to be listed. The pattern
match is performed on the symbol name only. That is:
parent_name.symbol_name For nested procedures.
symbol_name For all other symbols.
For procedure symbols, only the procedure part is used
(file name and module are excluded from the pattern
match).
This parameter can be specified with wildcards or with a
full regular expression. Refer to appendix A for
additional information about pattern matching and
regular expressions.
The following wildcards are supported:
@ Matches any character(s).
? Matches any alphabetic character.
# Matches any numeric character.
The following are valid name pattern specifications:
@ Matches everything; all names.
pib@ Matches all names that start with "pib".
log2##4 Matches "log2004", "log2754", and so on.
The following regular expressions are equivalent to the
patterns with wildcards that are listed above:
`.*`
`pib.*`
log2[0-9][0-9]4`
By default, all symbols are listed.
lstfile The name of the executable library for which to list the
symbols (program or library). If the parameter is not
given, the program file being executed is assumed. The
address printed is the entry point of the procedure (not
the start of the procedure).
lookup_id Specifies which symbols to list. If lookup_id is not
specified, PROCEDURES is assumed. Refer to the
"Procedure Name Symbols" section in chapter 2 for
additional details.
PRESORTED List System Object Module symbols Debug
sorted for use in windows and TR.
UNIVERSAL List exported procedures in the System
Object Module.
LOCAL List nonexported procedures in the
System Object Module.
NESTED List nested procedures in the System
Object Module.
PROCEDURES List local or exported procedures in the
System Object Module.
ALLPROC List local/exported/nested procedures in
the System Object Module.
EXPORTSTUB List export stubs in the System Object
Module.
DATAANY List exported and local data in the
System Object Module.
DATAUNIV List exported data in the System Object
Module.
DATALOCAL List local data in the System Object
Module.
LSTPROC List exported level 1 procedures in the
LST.
LSTEXPORTSTUB List export stubs in the LST.
ANY List for any type of symbol in the
System Object Module.
detail This parameter specifies the level of detail given when
listing the symbols. The default value is 0 which lists
the address and name of the symbol. Negative values are
converted to positive ones. Any value larger than the
maximum defined detail level functions as if the actual
maximum detail level has been entered.
0 List symbol address and name.
1 Same as 0 but print symbol type, scope,
residency bits.
2 Same as 1 but print address of symbol
record.
The abbreviations used for the output are summarized
below. Refer to the Object Module Definition document
for detailed descriptions and definitions of the terms.
The following keywords determine the symbol type:
ABS Absolute constant.
DATA Normal initialized data.
CODE Unspecified code.
PRIPROG Primary program entry point.
SECPROG Secondary program entry point.
ENTRY Any code entry point.
STORAGE Storage. The value of the symbol is not
known.
STUB Either an import or parameter relocation
stub.
MODULE Source module name.
SYMEXT Symbol extension record.
ARGEXT Argument extension record.
MILLI Millicode subroutine.
DISOCT Disabled translated CM code.
MILXTRN External millicode subroutine.
The following terms determine the symbol scope:
UNSAT Unsatisfied, import request not
satisfied.
EXTERN External, import request linked to
symbol in another module.
LOCAL Local, not exported for outside use.
UNIV Universal, exported for outside use.
The following values determine the parameter check level
(CHECK):
0 No checking.
1 Check symbol type descriptor only.
2 Level 1, plus check number of arguments
passed.
3 Level 2, plus check type of each
argument.
The following values determine the execution level
required to call this entry point (XLEAST):
0,1,2,3 The minimum execution level needed.
The following letters indicate the value of various bits
associated with each symbol. An uppercase letter
indicates the bit is "on", while a lowercase letter
means the bit is "off".
Q|q "Must qualify" bit.
F|f "Initially frozen" bit.
R|r "Memory resident" bit.
C|c "Is common" bit.
D|d "Duplicate common" bit.
outputfile If this parameter is given, the symbols are sent to the
indicated file rather than to the terminal screen.
Examples
$nmdebug > proclist
4d5.58db $START$
4d5.6b58 $UNWIND_START
4d5.6bc8 $UNWIND_END
4d5.6be0 $RECOVER_START
4d5.6be0 $RECOVER_END
4d5.58bf ?$START$
4d5.5b53 processstudent.highscore
4d5.5c3f processstudent.lowscore
4d5.5d27 processstudent
4d5.6073 initstudentrecord
4d5.681f PROGRAM
4d5.681f _start
4d5.5937 ?PROGRAM
4d5.5957 ?_start
4d5.5000 lr_na_unk
4d5.5004 $find_alignment
4d5.5084 $more_na
4d5.5028 $bigger_but_still_small
4d5.5024 $b_out
4d5.5018 $b_loop
4d5.5048 $wordloop
control-Y encountered
$nmdebug >
The above example lists all of the symbols for the current program file
(GRADES.DEMO.TELESUP). The file contains many symbols, including
millicode routines added to the program file by the Link Editor. The
output was interrupted by striking the Control-Y key.
$nmdebug > proclist processstudent@,,allproc
4d5.5b53 processstudent.highscore
4d5.5c3f processstudent.lowscore
4d5.5d27 processstudent
List all procedures that start with the string "processstudent".
$nmdebug > procl ,,nested
4d5.5b53 processstudent.highscore
4d5.5c3f processstudent.lowscore
$nmdebug > procl ,,nested,1
CODE LOCAL check: 0 xl: 3 qfrcd 4d5.5b53 processstudent.highscore
CODE LOCAL check: 0 xl: 3 qfrcd 4d5.5c3f processstudent.lowscore
The above examples print only the nested procedures. A detail level
value of 1 was specified in the second example.
$nmdebug > proclist `^a`,xl.demo
4d8.15c8b average
Show all procedures in XL.DEMO that start with the letter "a". Notice
the use of regular expressions (see appendix A) for the pattern matching
string.
$nmdebug > procl ,,datauniv
4d5.40000008 $global$
4d5.40000008 $dp$
4d5.40000160 $PFA_C_START
4d5.40000160 $PFA_C_END
4d5.40000160 output
4d5.400003a8 input
$nmdebug > proclist ,,data,1
DATA UNIV check: 0 xl: 0 qfrcd 4d5.40000008 $global$
DATA UNIV check: 0 xl: 0 qfrcd 4d5.40000008 $dp$
DATA UNIV check: 0 xl: 0 qfrcd 4d5.40000160 $PFA_C_START
DATA UNIV check: 0 xl: 0 qfrcd 4d5.40000160 $PFA_C_END
DATA UNIV check: 1 xl: 0 qfrcd 4d5.40000160 output
DATA UNIV check: 1 xl: 0 qfrcd 4d5.400003a8 input
DATA LOCAL check: 0 xl: 3 qfrcd 4d5.5730 L$5
DATA LOCAL check: 0 xl: 3 qfrcd 4d5.5780 L$8
DATA LOCAL check: 0 xl: 0 qfrcd 4d5.40000008 M$1
DATA LOCAL check: 0 xl: 3 qfrcd 4d5.5850 L$2
The PROCLIST command can also be used to list data symbols that are
present in the System Object Module directory.
$nmdebug > proclist @FOPEN@,nl.pub.sys
a.3f8140 FOPEN
a.374428 HPFOPEN
a.2ea29b P__FOPENERR
The final example requests a list of all procedures in the system NL that
have the uppercase letters "FOPEN" in their name.
Limitations, Restrictions
Unless a file equation is used, the size of the output file defaults to
20000 records of 80 bytes each.
The LSTPROC and LSTEXPORTSTUB options are not implemented.
A PROCLIST for CM procedures and symbols is not implemented.
CAUTION The output format of all System Debug commands is subject to
change without notice. Programs that are developed to
postprocess System Debug output should not depend on the exact
format (spacing, alignment, number of lines, uppercase or
lowercase, or spelling) of any System Debug command output.
MPE/iX 5.0 Documentation