Specifications
Bound-T chooses the calling protocol as follows, depending on the format of the target
program executable file being analysed:
• If the executable file is in COFF or S-record form the GCC calling protocol is used for all
subprograms.
• If the executable file is in UBROF form the IAR calling protocol is used for all subprograms.
If necessary, Tidorum will extend Bound-T/H8/300 so that the calling protoocol of a
subprogram can be defined by an assertion on a specific property for this subprogram. See
property assertions in [3].
2.8 Meaning of results
Execution time (WCET)
The WCET is given in units of execution states = clock periods.
The WCET reported for an H8/300 subprogram corresponds to an execution from the first
instruction at the subprogram's entry point, up to and including the last instruction ( RTS or
RTE ) of the subprogram. It does not include the caller's side of the calling sequence (pushing
parameters on the stack or loading them into registers) nor the post-call sequence in the caller
(popping parameters off the stack).
Stack usage
Bound-T for the H8/300 analyses only the usage of the H8/300 native stack, for which the
register SP = R7 is the stack pointer. Possible compiler-defined or application-defined "soft-
ware" stacks are not analysed.
The stack usage is given in octet units, although one should push and pop words [4]. Thus, the
stack usage is normally an even number of octets.
The stack usage reported for a subprogram does not includes the pushed return address
(pushed PC). The pushed return address is counted in the stack usage of the calling
subprogram (the one that executes the JSR or BSR).
When an interrupt (exception) happens the processor pushes the CCR and the PC on the stack
and then enters the interrupt handler. This pushes 4 octets on the stack (a padding octet is
pushed together with the CCR). The total stack usage for an interrupt is thus 4 octets more
than Bound-T reports reports as the stack usage for the interrupt-handler subprogram.
Bound-T for H8/300 Using Bound-T for H8/300 11