Chapter 5
Generated Code Architecture
©
National Instruments Corporation
5-19
Notice the relative numbering within a task/procedure type. Also, be aware
that standard procedures are not given a unique identifier for the purposes
of the
caller_id
element. A standard procedure SuperBlock uses the id
of its caller as its own when the caller’s id is needed.
In addition to declaring the extra element in the
info
structure, the
-epi
option causes AutoCode to assign the unique task/procedure identifier to
the
caller_id
element and to use the
caller_id
as an argument for
variable block callouts for variable block accesses within a standard
procedure SuperBlock. Refer to the
Global Variable Block Callouts
for more information about variable block callouts.
Compatibility Issues
The use of
-epi
affects all generated procedures. It is not possible to
specify some procedures with and some other procedures without the
caller_id
element. Also, subsystem code generated assumes the
existence of the
caller_id
element in all standard procedure SuperBlock
info
structures and generates code based on that assumption.
You cannot automatically mix procedures generated with the
-epi
option
and procedures generated without the
-epi
option; you must manually add
the
caller_id
element to the old procedure’s
info
structure declaration.
The old procedure will have been generated without the existence of the
new element and thus its presence in the structure will not affect the
previously generated code as that code never references it. Its effect,
Table 5-3.
Procedure Ordering
Task/Procedure
Unique Identifier
subsystem task 1
1
subsystem task 2
2
subsystem task 3
3
startup procedure 1
–4
startup procedure 2
–5
startup procedure 3
–6
background procedure 1
7
background procedure 2
8
interrupt procedure 1
9