Intel® Fortran Compiler Classic and Intel® Fortran Compiler Developer Guide and Reference

ID 767251
Date 9/08/2022
Public

A newer version of this document is available. Customers should click here to go to the newest version.

Document Table of Contents

qopt-subscript-in-range, Qopt-subscript-in-range

Determines whether the compiler assumes that there are no "large" integers being used or being computed inside loops. This feature is only available for ifort.

Syntax

Linux:

-qopt-subscript-in-range

-qno-opt-subscript-in-range

macOS:

-qopt-subscript-in-range

-qno-opt-subscript-in-range

Windows:

/Qopt-subscript-in-range

/Qopt-subscript-in-range-

Arguments

None

Default

-qno-opt-subscript-in-range
or /Qopt-subscript-in-range-

The compiler assumes there are "large" integers being used or being computed within loops.

Description

This option determines whether the compiler assumes that there are no "large" integers being used or being computed inside loops.

If you specify [q or Q]opt-subscript-in-range, the compiler assumes that there are no "large" integers being used or being computed inside loops. A "large" integer is typically > 231.

This feature can enable more loop transformations.

IDE Equivalent
None
Alternate Options

None

Example

The following example shows how these options can be useful. Variable m is declared as type integer(kind=8) (64-bits) and all other variables inside the subscript are declared as type integer(kind=4) (32-bits):

A[ i  + j  + ( n  + k) * m ]