-qkeepparm

Category

Error checking and debugging

@PROCESS

None.

Purpose

When used with -O2 or higher optimization, specifies whether procedure parameters are stored on the stack.

A procedure usually stores its incoming parameters on the stack at the entry point. However, when you compile code with optimization options enabled, the optimizer may remove these parameters from the stack if it sees an optimizing advantage in doing so.

Syntax

Read syntax diagramSkip visual syntax diagram
        .-nokeepparm-.   
>>- -q--+-keepparm---+-----------------------------------------><

Defaults

-qnokeepparm

Usage

When -qkeepparm is in effect, parameters are stored on the stack even when optimization is enabled. This option then provides access to the values of incoming parameters to tools, such as debuggers, simply by preserving those values on the stack. However, this may negatively impact execution performance.

When -qnokeepparm is in effect, parameters are removed from the stack if this provides an optimization advantage.