Specifications
2.5 H8/300-specific symbol-file format
The generic -symbols option
Bound-T has a generic option -symbols for naming additional symbol-definition files to
complement the set of target-program symbols defined in the executable target program file.
This generic option works also in Bound-T for the H8/300. The option and the generic format
of symbol-definition files are described in the Bound-T Reference Manual [2].
The H8/300-specific -sym option
For historical reasons and upwards compatibility there is a similar H8/300-specific option that
is written -sym=file. This option makes Bound-T read additional symbol definitions from the
named file. This file uses an H8/300-specific format, which is similar to, but not exactly the
same as, the format for the generic -symbols option. All symbols in a -sym file represent
subprograms; symbols for data variables cannot be defined with this format.
The file named in the -sym option should be a text file with one symbol definition per line.
Leading and trailing blanks are ignored. Blank or empty lines are ignored as is any line
beginning with two hyphens (--) possibly preceded by blanks. Horizontal tabulation characters
(HT, TAB) are equivalent to blanks.
A symbol definition associates a subprogram identifier (the symbol) with a memory address
and thus contains two strings, without embedded blanks but separated by one or more blanks,
as follows:
– The first string is the identifier, possibly qualified by scope, using the default scope
delimiter.
– The second string is the numerical memory address of the symbol expressed in Ada literal
form. It can thus be in decimal form, for example 1234, or in based form, for example in
hexadecimal as 16#ab26#.
The strings in a symbol definition should not be enclosed in quotes (unlike symbols in
assertion files). The following is an example of a symbol file:
-- This is a comment.
rom|init_mem 16#1a7#
rom|boot|startup 0
The first line is a comment and Bound-T ignores it. The second line defines the subprogram
symbol init_mem, in the scope (module) rom, and gives it the address 1a7 hexadecimal = 423
decimal. The third line defines the subprogram symbol startup, in the scope rom and the sub-
scope boot, and gives it the address (decimal) zero.
2.6 HRT analysis
Regarding HRT analysis there are no specific considerations for the H8/300. Please refer to the
Bound-T Reference Manual [2] and the Bound-T HRT analysis manual [11].
2.7 Choice of procedure calling protocol
The analysis of the computations in a subprogram, and in the subprograms that call this
subprogram, depend on the calling protocol of the subprogram.
10 Using Bound-T for H8/300 Bound-T for H8/300