To activate the Natural Optimizer Compiler, use one of the methods described in the following sections, where the first alternative is the most static one and the last alternative the most dynamic one.
All alternatives use the Optimizer options as described in the section Optimizer Options. Using these options you can control how and when machine code is generated, what tracing options are to be used and what the target architecture will be. The Optimizer options are the only control mechanism for the Natural Optimizer Compiler.
With the macro NTOPT
in the Natural parameter module, you can activate the Natural Optimizer
Compiler statically for a linked Natural nucleus. Every time this Natural
nucleus is started, the same Optimizer options are used again.
NTOPT 'INDX,OVFLW,ZD=OFF'
NTOPT 'INDX,OVFLW,ZD=OFF,TRGPT', * 'TRSTMT,OPTLEV03'
Note the continuation character "*" in column 72.
See the section Optimizer Options for an explanation of the options setting used.
When starting a Natural session, you can dynamically activate the
Optimizer Compiler by specifying the Natural profile parameter
OPT
. As a
synonym for OPT
, you can use MCG
.
The specification of the parameter module is overwritten. The options are only
valid for the current session.
OPT=(INDX,OVFLW,ZD=OFF)
or
MCG=(INDX,OVFLW,ZD=OFF)
See the section Optimizer Options for an explanation of the option setting used.
When you have started a Natural session, you can invoke the Optimizer
command screen with the Natural system command
NOCOPT
. The
screen monitors the current setting of the Natural Optimizer Compiler options
as they were specified during Natural startup. You can now modify the setting
online.
The updated parameter setting is only valid for the current session.
The MCG
parameter of the Natural compiler
statement OPTIONS
provides the most flexible and powerful control over machine code generation,
since different options can be set for individual statements in a program. So,
within one Natural program, the Natural Optimizer Compiler can be activated and
deactivated several times to enclose ranges of statements with different
options settings.
OPTIONS MCG=(OVFLW,INDX,ZD=OFF)
or
OPTIONS MCG=OVFLW,INDX,ZD=OFF
The options string of the MCG
parameter may
start with a plus (+) or minus (-) sign, indicating that the values of options
not mentioned should be left unaltered, and only the options present should be
set (+) or reset (-), for example:
OPTIONS MCG=+PGEN /* turns tracing on (statements to be traced) OPTIONS MCG=-PGEN /* turns tracing off
If the string starts with anything other than "+" or "-", all options are reset before the string is parsed.
Note:
The Natural statement OPTIONS
also provides other
Natural compiler parameters than MCG
.
See the section Optimizer Options for an explanation of the options setting used.