-qreserved_reg

Pragma equivalent

None.

Purpose

Indicates that the given list of registers cannot be used during the compilation except as a stack pointer, frame pointer or in some other fixed role.

You should use this option in modules that are required to work with other modules that use global register variables or hand-written assembler code.

Syntax

Read syntax diagramSkip visual syntax diagram
                         .-:-------------.   
                         V               |   
>>- -q--reserved_reg--=----register_name-+---------------------><

Defaults

Not applicable.

Parameters

register_name
A valid register name on the target platform. Valid registers are:
r0 to r31
General purpose registers
f0 to f31
Floating-point registers
v0 to v31
Vector registers (on selected processors only)

Usage

-qreserved_reg is cumulative, for example, specifying -qreserved_reg=r14 and -qreserved_reg=r15 is equivalent to specifying -qreserved_reg=r14:r15.

Duplicate register names are ignored.

Predefined macros

None.

Examples

To specify that myprogram.c reserves the general purpose registers r3 and r4, enter:
xlc myprogram.c -qreserved_reg=r3:r4 


Voice your opinion on getting help information Ask IBM compiler experts a technical question in the IBM XL compilers forum Reach out to us