IBM AS/400 Frozen Dessert Maker User Manual


 
Changing a Module or Program
level again afterwards to improve the program efficiency as you get the program
ready for production.
To determine the current optimization level of a
program
object, use the DSPPGM
command. Display 3 of this command indicates the current level. To change the
optimization level of a program, use the CHGPGM command. On the Optimize
program parameter you can specify one the following values: *FULL, *BASIC,
*NONE. These are the same values which can be specified on the OPTIMIZE
parameters of either create command. The program is automatically re-created
when the command runs.
Similarly, to determine the current optimization level of a
module
, use the DSPMOD
command. Display 1, page 2 of this command indicates the current level. To
change the optimization level, use the CHGMOD command. You then need to re-
create the program either using UPDPGM or CRTPGM.
Removing Observability
Observability involves the kinds of data that can be stored with an object, and that
allow the object to be changed without recompiling the source. The addition of this
data increases the size of the object. Consequently, you may want to remove the
data in order to reduce object size. But once the data is removed, observability is
also removed. You must recompile the source and recreate the program to replace
the data. The types of data are:
Create Data
Represented by the *CRTDTA value. This data is necessary to translate
the code to machine instructions. The object must have this data before
you can change the optimization level.
Debug Data
Represented by the *DBGDTA value. This data is necessary to allow an
object to be debugged.
Profiling Data
Represented by the *BLKORD and *PRCORD values. This data is nec-
essary to allow the system to re-apply block order and procedure order
profiling data.
Use the CHGPGM command or the CHGMOD command to remove some or all the
data from a program or module respectively. Removing all observability reduces an
object to its minimum size (without compression). It is not possible to change the
object in any way unless you re-create it. Therefore, ensure that you have all
source required to create the program or have a comparable program object with
CRTDATA. To re-create it, you must have authorization to access the source code.
Reducing an Object's Size
The create data (*CRTDTA) associated with an ILE program or module may make
up more than half of the object's size. By removing or compressing this data, you
will reduce the secondary storage requirements for your programs significantly.
If you remove the data, ensure that you have all source required to create the
program or have a comparable program object with CRTDATA. Otherwise you will
not be able to change the object.
88 ILE RPG for AS/400 Programmer's Guide