To activate the Natural Optimizer Compiler, use one of the methods described in the following sctions, where 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 Optionsfor 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 NOC 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 Optionsand for an explanation of the options setting used.