The table in this section summarizes Intel® Fortran compiler options used on Linux* OS and Mac OS* X. Each summary also shows the equivalent compiler options on Windows* OS.
If you want to see the summarized Windows* options, see this table.
Some compiler options are only available on systems using certain architectures, as indicated by these labels:
Label |
Meaning |
---|---|
i32 |
The option is available on systems using IA-32 architecture. |
i64em |
The option is available on systems using Intel® 64 architecture. |
i64 |
The option is available on systems using IA-64 architecture. |
If "only" appears in the label, the option is only available on the identified system or architecture.
If no label appears, the option is available on all supported systems and architectures.
For more details on the options, refer to the Alphabetical Compiler Options section.
The Intel® Fortran Compiler includes the Intel® Compiler Option Mapping tool. This tool lets you find equivalent options by specifying compiler option -map-opts (Linux and Mac OS X) or /Qmap-opts (Windows).
For information on conventions used in this table, see Conventions.
The following table summarizes all supported Linux OS and Mac OS X options. It also shows equivalent Windows OS options, if any.
Option |
Description |
Default |
Equivalent Option on Windows* OS |
---|---|---|---|
-1 |
Executes at least one iteration of DO loops. |
OFF |
/1 |
-66 |
Tells the compiler to use FORTRAN 66 semantics. |
OFF |
None |
-72, -80, -132 |
Treats the statement field of each fixed-form source line as ending in column 72, 80, or 132; same as the -extend-source option. |
-72 |
/4L{72|80|132} |
-align [keyword] |
Tells the compiler how to align certain data items. |
keywords: |
/align[:keyword] |
-allow [no]fpp_comments |
Determines how the fpp preprocessor treats Fortran end-of-line comments in preprocessor directive lines. |
-allow fpp_comments |
/allow:[no]fpp_comments |
-[no]altparam |
Allows alternate syntax (without parentheses) for PARAMETER statements. |
-altparam |
/[no]altparam |
-[no-]ansi-alias |
Tells the compiler to assume the program adheres to the Fortran Standard type aliasability rules. |
-ansi-alias |
/Qansi-alias[-] |
-arch keyword |
Tells the compiler to generate optimized code specialized for the processor that executes your program. |
varies; see the option description |
/arch:keyword |
-assume keyword |
Tells the compiler to make certain assumptions. |
keywords: |
/assume:keyword |
-[no]automatic |
Causes all variables to be allocated to the run-time stack; same as the -auto option. |
-auto-scalar |
/[no]automatic |
-auto-scalar |
Causes allocation of scalar variables of intrinsic types INTEGER, REAL, COMPLEX, and LOGICAL to the run-time stack. |
-auto-scalar |
/Qauto-scalar |
-autodouble |
Makes default real and complex variables 8 bytes long; same as the -real-size 64 option. |
OFF |
/Qautodouble |
-axprocessor |
Tells the compiler to generate multiple, processor-specific auto-dispatch code paths for Intel processors if there is a performance benefit. |
OFF |
/Qaxprocessor |
-Bdir |
Specifies a directory that can be used to find include files, libraries, and executables. |
OFF |
None |
-Bdynamic |
Enables dynamic linking of libraries at run time. |
OFF |
None |
-Bstatic |
Enables static linking of a user's library. |
OFF |
None |
-c |
Causes the compiler to compile to an object file only and not link. |
OFF |
/c |
-CB |
Performs run-time checks on whether array subscript and substring references are within declared bounds; same as the -check bounds option. |
OFF |
/CB |
-ccdefault keyword |
Specifies the type of carriage control used when a file is displayed at a terminal screen. |
-ccdefault default |
/ccdefault:keyword |
-check [keyword] |
Checks for certain conditions at run time. |
-nocheck |
/check[:keyword] |
-cm |
Disables all messages about questionable programming practices; same as specifying option -warn nousage. |
OFF |
/cm |
-common-args |
Tells the compiler that dummy (formal) arguments to procedures share memory locations with other dummy arguments or with COMMON variables that are assigned. This option is the same as -assume dummy_aliases. |
OFF |
/Qcommon-args |
-[no-]complex-limited-range |
Enables the use of basic algebraic expansions of some arithmetic operations involving data of type COMPLEX. |
-no-complex-limited-range |
/Qcomplex-limited-range[-] |
-convert keyword |
Specifies the format of unformatted files containing numeric data. |
-convert native |
/convert:keyword |
-cpp |
Runs the Fortran preprocessor on source files prior to compilation. |
OFF |
/Qcpp |
-CU |
Enables run-time checking for uninitialized variables. This option is the same as -check uninit. |
OFF |
/CU |
-cxxlib[=dir ] |
Tells the compiler to link using the C++ run-time libraries provided by gcc. |
-no-cxxlib |
None |
-cxxlib-nostd |
Prevents the compiler from linking with the standard C++ library. |
-no-cxxlib |
None |
-Dname [=value] |
Defines a symbol name that can be associated with an optional value. |
-noD |
/Dname [=value] |
-[no]d-lines |
Compiles debugging statements indicated by the letter D in column 1 of the source code. |
-nod-lines |
/[no]d-linesor /Qd-lines |
-DD |
Compiles debugging statements indicated by the letter D in column 1 of the source code; same as the -d-lines option. |
-nod-lines |
/d-lines |
-debug keyword |
Specifies settings that enhance debugging. |
-debug none |
/debug:keyword |
-debug-parameters [keyword] |
Tells the compiler to generate debug information for PARAMETERs used in a program. |
-nodebug-parameters |
/debug-parameters[:keyword] |
-diag-type diag-list |
Controls the display of diagnostic information. |
OFF |
/Qdiag-type : diag-list |
-diag-dump |
Tells the compiler to print all enabled diagnostic messages and stop compilation. |
OFF |
/Qdiag-dump |
-diag-enable sv-include |
Tells the Static Verifier to analyze include files and source files when issuing diagnostic message. |
OFF |
/Qdiag-enable:sv-include |
-diag-error-limit n |
Specifies the maximum number of errors allowed before compilation stops. |
-diag-error-limit 30 |
/Qdiag-error-limit:n |
-diag-file[= file] |
Causes the results of diagnostic analysis to be output to a file. |
OFF |
/Qdiag-file[:file] |
-diag-file-append[= file] |
Causes the results of diagnostic analysis to be appended to a file. |
OFF |
/Qdiag-file-append[:file ] |
-[no-]diag-id-numbers |
Tells the compiler to display diagnostic messages by using their ID number values. |
-diag-id-numbers |
/Qdiag-id-numbers[-] |
-diag-once id[,id,...] |
Tells the compiler to issue one or more diagnostic messages only once |
OFF |
/Qdiag-once:id[,id,...] |
-double-size size |
Defines the default KIND for DOUBLE PRECISION and DOUBLE COMPLEX variables. |
-double-size 64 |
/double-size:size |
-dps |
Specifies that the alternate syntax for PARAMETER statements is allowed; same as the -altparam option. |
-dps |
/Qdps |
-dryrun |
Specifies that driver tool commands should be shown but not executed. |
OFF |
None |
-dumpmachine |
Displays the target machine and operating system configuration. |
OFF |
None |
-dynamic-linkerfile |
Specifies a dynamic linker in file other than the default. |
OFF |
None |
-dynamiclib |
Invokes the libtool command to generate dynamic libraries. |
OFF |
None |
-dyncom "common1,common2,..." |
Enables dynamic allocation of common blocks at run time. |
OFF |
/Qdyncom "common1,common2,..." |
-E |
Causes the Fortran preprocessor to send output to stdout. |
OFF |
/E |
-e03, -e95, -e90 |
Causes the compiler to issue errors instead of warnings for nonstandard Fortran; same as the -warn stderrors option. |
OFF |
None |
-EP |
Causes the Fortran preprocessor to send output to stdout, omitting #line directives. |
OFF |
/EP |
-error-limit n |
Specifies the maximum number of error-level or fatal-level compiler errors allowed for a file specified on the command line; same as -diag-error-limit. |
-error-limit 30 |
/error-limit:n |
-extend-source size |
Specifies the length of the statement field in a fixed-form source file. |
-extend-source 72 |
/extend-source:size |
-f66 |
Tells the compiler to use FORTRAN 66 semantics. |
OFF |
/f66 |
-[no]f77rtl |
Tells the compiler to use FORTRAN 77 run-time behavior. |
OFF |
/[no]f77rtl |
-f[no-]alias |
Determines whether aliasing should be assumed in the program. |
ON |
None |
-falign-functions[=n] |
Tells the compiler to align functions on an optimal byte boundary. |
-no-falign-functions |
/Qfnalign[:n ] |
-falign-stack[=mode] |
Tells the compiler to align functions on an optimal byte boundary. |
-falign-stack=default |
None |
-fast |
Maximizes speed across the entire program. |
OFF |
/fast |
-[no-]fast-transcendentals |
Enables the compiler to replace calls to transcendental functions with faster but less precise implementations. |
ON |
/Qfast-transcendentals[-] |
-fcode-asm |
Produces an assembly file with optional machine code annotations. |
OFF |
/FAc |
-f[no-]exceptions |
Enables exception handling table generation. |
-fno-exceptions |
None |
-f[no-]fnalias |
Specifies that aliasing should be assumed within functions. |
OFF |
-ffnalias |
-FI |
Specifies source files are in fixed format; same as the -fixed option. |
determined by file suffix |
/FI |
-f[no-]inline |
Tells the compiler to inline functions declared with cDEC$ ATTRIBUTES FORCEINLINE. |
-fno-inline |
None |
-f[no-]inline-functions |
Enables function inlining for single file compilation. |
-finline-functions |
/Ob2 |
-finline-limit=n |
Lets you specify the maximum size of a function to be inlined. |
OFF |
None |
-f[no-]instrument-functions |
Determines whether function entry and exit points are instrumented. |
-fno-instrument-functions |
/Qinstrument-functions[-] |
-[no]fixed |
Specifies source files are in fixed format. |
determined by file suffix |
/[no]fixed |
-f[no-]keep-static-consts |
Tells the compiler to preserve allocation of variables that are not referenced in the source. |
-fno-keep-static-consts |
/Qkeep-static-consts[-] |
-[no]fltconsistency |
Enables improved floating-point consistency. |
OFF |
/[no]fltconsistency |
-[no-]fma |
Enables the combining of floating-point multiplies and add/subtract operations. |
-fma |
/Qfma[-] |
-f[no-]math-errno |
Tells the compiler that errno can be reliably tested after calls to standard math library functions. |
-fno-math-errno |
None |
-fminshared |
Tells the compiler to treat a compilation unit as a component of a main program and not to link it as a shareable object. |
OFF |
None |
-[no-]fnsplit |
Enables function splitting. |
OFF |
/Qfnsplit[-] |
-f[no-]omit-frame-pointer |
Determines whether EBP is used as a general-purpose register in optimizations. This is the same as specifying option -fp, which is deprecated. |
-fomit-frame-pointer (unless option -O0 or -g is specified) |
/Oy[-] |
-fp-model keyword |
Controls the semantics of floating-point calculations. |
-fp-model fast |
/fp:keyword |
-[no-]fp-port |
Rounds floating-point results after floating-point operations, so rounding to user-declared precision happens at assignments and type conversions (some impact on speed). |
-no-fp-port |
/Qfp-port[-] |
-[no-]fp-relaxed |
Enables use of faster but slightly less accurate code sequences for math functions, such as divide and sqrt. |
-no-fp-relaxed |
/Qfp-relaxed[-] |
-fp-speculation=mode |
Tells the compiler the mode in which to speculate on floating-point operations. |
-fp-speculation=fast |
/Qfp-speculation:mode |
-fp-stack-check |
Generates extra code after every function call to ensure that the FP (floating-point) stack is in the expected state. |
OFF |
/Qfp-stack-check |
-[no]fpconstant |
Tells the compiler that single-precision constants assigned to double-precision variables should be evaluated in double precision. |
OFF |
/[no]fpconstant |
-fpen |
Specifies floating-point exception handling at run time for the main program. |
-fpe3 |
/fpe:n |
-f[no-]pic, -fPIC |
Generates position-independent code. |
-fno-pic |
None |
-fpie |
Tells the compiler to generate position-independent code. |
OFF |
None |
-fpp[n] or -fpp[="option"] |
Runs the Fortran preprocessor on source files prior to compilation. |
-nofpp |
/fpp[n] or /fpp[="option"] |
-fpscomp [keyword] |
Specifies compatibility with Microsoft* Fortran PowerStation or Intel® Fortran. |
-fpscomp libs |
/fpscomp[:keyword] |
-FR |
Specifies source files are in free format; same as the -free option. |
determined by file suffix |
/FR |
-fr32 |
Disables use of high floating-point registers. |
OFF |
None |
-[no]free |
Specifies source files are in free format. |
determined by file suffix |
/[no]free |
-fsource-asm |
Produces an assembly file with optional source code annotations. |
OFF |
/FAs |
-f[no-]stack-security-check |
Determines whether the compiler generates code that detects some buffer overruns; same as -f[no-]stack-protector. |
-fno-stack-security-check |
/GS[-] |
-fsyntax-only |
Specifies that the source file should be checked only for correct syntax; same as -syntax-only. |
OFF |
None |
-ftrapuv |
Initializes stack local variables to an unusual value. |
OFF |
/Qtrapuv |
-[no-]ftz |
Flushes denormal results to zero. |
i64: -no-ftz |
/Qftz[-] |
-[no-]func-groups |
Enables or disables function grouping if profiling information is enabled. This option is deprecated, use -prof-func-groups. |
-no-func-groups |
None |
-funroll-loops |
Tells the compiler to unroll user loops based on the default optimization heuristics; same as -unroll, which is the recommended option. |
-funroll-loops |
/Qunroll |
-fverbose-asm |
Produces an assembly file with compiler comments, including options and version information. |
-fno-verbose-asm |
None |
-fvisibility=keyword |
Specifies the default visibility for global symbols; the 2nd form indicates symbols in a file. |
-fvisibility=default |
None |
-g |
Produces symbolic debug information in the object file. |
OFF |
/Zi, /Z7 |
-gdwarf2 |
Enables generation of debug information using the DWARF2 format. |
OFF |
None |
-gen-interfaces [[no]source] |
Tells the compiler to generate an interface block for each routine in a source file. |
-nogen-interfaces |
/gen-interfaces[:[no]source] |
-[no-]global-hoist |
Enables certain optimizations that can move memory loads to a point earlier in the program execution than where they appear in the source. |
-global-hoist |
/Qglobal-hoist[-] |
-heap-arrays [size] |
Puts automatic arrays and arrays created for temporary computations on the heap instead of the stack. |
-no-heap-arrays |
/heap-arrays[:size ] |
-help [category] |
Displays the list of compiler options. |
OFF |
/help [category] |
-Idir |
Specifies a directory to add to the include path. |
OFF |
/Idir |
-i-dynamic |
Links Intel-provided libraries dynamically. This is a deprecated option; use -shared-intel. |
OFF |
None |
-i-static |
Links Intel-provided libraries statically. This is a deprecated option; use -static-intel. |
OFF |
None |
-i{2|4|8} |
Specifies the default KIND for integer and logical variables; same as the -integer-size option. |
-i4 |
/4I{2|4|8} |
-idirafterdir |
Adds a directory to the second include file search path. |
OFF |
None |
-implicitnone |
Sets the default type of a variable to undefined; same as option warn declarations. |
OFF |
/4Yd |
-inline-debug-info |
Produces enhanced source position information for inlined code. |
OFF |
/Qinline-debug-info |
-inline-factor=n |
Specifies the percentage multiplier that should be applied to all inlining options that define upper limits. |
-no-inline-factor |
/Qinline-factor=n |
-inline-forceinline |
Specifies that an inline routine should be inlined whenever the compiler can do so. |
OFF |
/Qinline-forceinline |
-inline-level=n |
Specifies the level of inline function expansion. n = 0, 1, or 2. |
-inline-level=2 if -O2 is in effect |
/Obn |
-inline-max-per-compile=n |
Specifies the maximum number of times inlining may be applied to an entire compilation unit. |
-no-inline-max-per-compile |
/Qinline-max-per-compile=n |
-inline-max-per-routine=n |
Specifies the maximum number of times the inliner may inline into a particular routine. |
-no-inline-max-per-routine |
/Qinline-max-per-routine=n |
-inline-max-size=n |
Specifies the lower limit for the size of what the inliner considers to be a large routine. |
-no-inline-max-size |
/Qinline-max-size=n |
-inline-max-total-size=n |
Specifies how much larger a routine can normally grow when inline expansion is performed. |
-no-inline-max-total-size |
/Qinline-max-total-size=n |
-inline-min-size=n |
Specifies the upper limit for the size of what the inliner considers to be a small routine. |
-no-inline-min-size |
/Qinline-min-size=n |
-[no]intconstant |
Tells the compiler to use FORTRAN 77 semantics to determine the KIND for integer constants. |
-nointconstant |
/[no]intconstant |
-integer-size size |
Specifies the default KIND for integer and logical variables. |
-integer-size 32 |
/integer-size:size |
-[no-]ip |
Enables additional single-file interprocedural optimizations. |
OFF |
/Qip[-] |
-ip-no-inlining |
Disables full and partial inlining enabled by -ip. |
OFF |
/Qip-no-inlining |
-ip-no-pinlining |
Disables partial inlining. |
OFF |
/Qip-no-pinlining |
-IPF-flt-eval-method0 |
Tells the compiler to evaluate the expressions involving floating-point operands in the precision indicated by the variable types declared in the program. Deprecated. |
OFF |
/QIPF-flt-eval-method0 |
-IPF-fltacc |
Tells the compiler to apply optimizations that affect floating-point accuracy. Deprecated. |
-no-IPF-fltacc |
/QIPF-fltacc |
-IPF-fma |
Enables the combining of floating-point multiplies and add/subtract operations. Deprecated; use -fma. |
-IPF-fma |
/QIPF-fma |
-IPF-fp-relaxed |
Enables use of faster but slightly less accurate code sequences for math functions, such as divide and sqrt. Deprecated; use -fp-relaxed. |
-no-IPF-fp-relaxed |
/QIPF-fp-relaxed |
-ipo[n] |
Enables multifile IP optimizations between files. |
OFF |
/Qipo[n] |
-ipo-c |
Generates a multifile object file that can be used in further link steps. |
OFF |
/Qipo-c |
-ipo-jobsn |
Specifies the number of commands to be executed simultaneously during the link phase of Interprocedural Optimization (IPO). |
-ipo-jobs1 |
/Qipo-jobs:n |
-ipo-S |
Generates a multifile assembly file that can be used in further link steps. |
OFF |
/Qipo-S |
-ipo-separate |
Generates one object file per source file. |
OFF |
/Qipo-separate |
-isystemdir |
Specifies a directory to add to the start of the system include path. |
OFF |
None |
-ivdep-parallel |
Tells the compiler that there is no loop-carried memory dependency in any loop following an IVDEP directive. |
OFF |
/Qivdep-parallel |
-lstring |
Tells the linker to search for a specified library when linking. |
OFF |
None |
-Ldir |
Tells the linker where to search for libraries before searching the standard directories. |
OFF |
None |
-[no]logo |
Displays compiler version information. |
-nologo |
/[no]logo |
-lowercase |
Causes the compiler to ignore case differences in identifiers and to convert external names to lowercase; same as the -names lowercase option. |
-lowercase |
/Qlowercase |
-m[processor] |
Tells the compiler to generate optimized code specialized for the processor that executes your program. |
varies; see option description |
/arch |
-m32, -m64 |
Tells the compiler to generate code for IA-32 architecture or Intel® 64 architecture, respectively. |
OFF |
None |
-map-opts |
Maps one or more Linux* compiler options to their equivalent on a Windows* system (or vice versa). |
OFF |
/Qmap-opts |
-march=processor |
Tells the compiler to generate code for a specified processor. |
i32: OFF |
None |
-mcmodel=mem_model |
Tells the compiler to use a specific memory model to generate code and store data. |
-mcmodel=small |
None |
-mdynamic-no-pic |
Generates code that is not position-independent but has position-independent external references. |
OFF |
None |
-mieee-fp |
Tells the compiler to use IEEE floating point comparisons. This is the same as specifying option -fltconsistency or -mp. |
OFF |
/fltconsistency |
-minstruction=[no]movbe |
Determines whether MOVBE instructions are generated for Intel® processors. |
-minstruction=movbe |
/Qinstruction=[no]movbe |
-mixed_str_len_arg |
Tells the compiler that the hidden length passed for a character argument is to be placed immediately after its corresponding character argument in the argument list. |
OFF |
/iface:mixed_str_len_arg |
-module path |
Specifies the directory where module files should be placed when created and where they should be searched for. |
OFF |
/module:path |
-mp |
Enables improved floating-point consistency. |
OFF |
/Op |
-mp1 |
Improves floating-point precision and consistency. |
OFF |
/Qprec |
-m[no-]relax |
Determines whether the compiler passes linker option -relax to the linker. |
-mno-relax |
None |
-mtune=processor |
Performs optimizations for a particular processor. -mtune=itanium2 is equivalent to /G2. |
i32: -mtune=pentium4 |
None |
-multiple-processes= n |
Creates multiple processes that can be used to compile large numbers of source files at the same time. |
OFF |
/MP: n |
-names keyword |
Specifies how source code identifiers and external names are interpreted. |
-names lowercase |
/names:keyword |
-nbs |
Tells the compiler to treat the backslash character (\) as a normal character in character literals; same as the -assume nobscc option. |
-nbs |
/nbs |
-no-bss-init |
Tells the compiler to place in the DATA section any variables explicitly initialized with zeros. |
OFF |
/Qno-bss-init |
-nodefaultlibs |
Prevents the compiler from using standard libraries when linking. |
OFF |
None |
-nodefine |
Specifies that all preprocessor definitions apply only to fpp and not to Intel® Fortran conditional compilation directives. |
OFF |
/nodefine |
-nofor-main |
Specifies the main program is not written in Fortran, and prevents the compiler from linking for_main.o into applications. |
OFF |
None |
-noinclude |
Prevents the compiler from searching in a directory previously added to the include path for files specified in an INCLUDE statement. |
OFF |
/noinclude |
-nolib-inline |
Disables inline expansion of standard library or intrinsic functions. |
OFF |
None |
-nostartfiles |
Prevents the compiler from using standard startup files when linking. |
OFF |
None |
-nostdinc |
Removes standard directories from the include file search path; same as the -X option. |
OFF |
None |
-nostdlib |
Prevents the compiler from using standard libraries and startup files when linking. |
OFF |
None |
-nus |
Disables appending an underscore to external user-defined names; same as the -assume nounderscore option. |
OFF |
None |
-ofile |
Specifies the name for an output file. |
OFF |
None |
-O[ n ] |
Specifies the code optimization for applications. |
-O2 |
/O[ n ] |
-O0 |
Disables all optimizations. |
OFF |
/Od |
-onetrip |
Executes at least one iteration of DO loops. |
OFF |
/onetrip |
-openmp |
Enables the parallelizer to generate multithreaded code based on OpenMP* directives. |
OFF |
/Qopenmp |
-openmp-lib type |
Lets you specify an OpenMP* run-time library to use for linking. |
-openmp-lib legacy |
/Qopenmp-lib:type |
-openmp-link library |
Controls whether the compiler links to static or dynamic OpenMP run-time libraries. |
-openmp-link dynamic |
/Qopenmp-link:library |
-openmp-profile |
Enables analysis of OpenMP* applications. |
OFF |
/Qopenmp-profile |
-openmp-report[n] |
Controls the OpenMP parallelizer's level of diagnostic messages. |
-openmp-report1 |
/Qopenmp-report[n] |
-openmp-stubs |
Enables compilation of OpenMP programs in sequential mode. |
OFF |
/Qopenmp-stubs |
-openmp-threadprivate type |
Lets you specify an OpenMP* threadprivate implementation. |
-openmp-threadprivate legacy |
/Qopenmp-threadprivate:type |
-opt-block-factor=n |
Lets you specify a loop blocking factor. |
OFF |
/Qopt-block-factor:n |
-opt-jump-tables=keyword |
Enables or disables generation of jump tables for switch statements. |
-opt-jump-tables=default |
/Qopt-jump-tables:keyword |
-[no-]opt-loadpair |
Enables or disables loadpair optimization. |
-no-opt-loadpair |
/Qopt-loadpair[-] |
-opt-malloc-options=n |
Lets you specify an alternate algorithm for malloc(). |
-opt-malloc-options=0 |
None |
-opt-mem-bandwidthn |
Enables performance tuning and heuristics that control memory bandwidth use among processors. |
-opt-mem-bandwidth0 for serial compilation; -opt-mem-bandwidth1 for parallel compilation |
/Qopt-mem-bandwidthn |
-[no-]opt-mod-versioning |
Enables or disables versioning of modulo operations for certain types of operands. |
-no-opt-mod-versioning |
/Qopt-mod-versioning[-] |
-[no-]opt-multi-version-aggressive |
Tells the compiler to use aggressive multi-versioning to check for pointer aliasing and scalar replacement. |
-no-opt-multi-version-aggressive |
/Qopt-multi-version-aggressive[-] |
-opt-prefetch[=n] |
Enables prefetch insertion optimization. |
i64: -opt-prefetch |
/Qopt-prefetch[:n] |
-[no-]opt-prefetch-initial-values |
Enables or disables prefetches that are issued before a loop is entered. |
-opt-prefetch-initial-values |
/Qopt-prefetch-initial-values[-] |
-[no-]opt-prefetch-issue-excl-hint |
Determines whether the compiler issues prefetches for stores with exclusive hint. |
-no-opt-prefetch-issue-excl-hint |
/Qopt-prefetch-issue-excl-hint[-] |
-[no-]opt-prefetch-next-iteration |
Enables or disables prefetches for a memory access in the next iteration of a loop. |
-opt-prefetch-next-iteration |
/Qopt-prefetch-next-iteration[-][:n] |
-opt-ra-region-strategy[=keyword] |
Selects the method that the register allocator uses to partition each routine into regions. |
-opt-ra-region-strategy=default |
/Qopt-ra-region-strategy[:keyword] |
-opt-report [n] |
Tells the compiler to generate an optimization report to stderr. |
-opt-report 2 |
/Qopt-report[:n] |
-opt-report-file=file |
Specifies the name for an optimization report. |
OFF |
/Qopt-report-file:file |
-opt-report-help |
Displays the optimizer phases available for report generation. |
OFF |
/Qopt-report-help |
-opt-report-phase=phase |
Specifies an optimizer phase to use when optimization reports are generated. |
OFF |
/Qopt-report-phase:phase |
-opt-report-routine=string |
Tells the compiler to generate reports on the routines containing specified text. |
OFF |
/Qopt-report-routine:string |
-opt-streaming-stores keyword |
Enables generation of streaming stores for optimization. |
-opt-streaming-stores auto |
/Qopt-streaming-stores:keyword |
-[no-]opt-subscript-in-range |
Determines whether the compiler assumes no overflows in the intermediate computation of subscript expressions in loops. |
-no-opt-subscript-in-range |
/Qopt-subscript-in-range[-] |
-p |
Compiles and links for function profiling with gprof(1). |
OFF |
None |
-P |
Causes the Fortran preprocessor to send output to a file, which is named by default; same as the -preprocess-only option. |
OFF |
/P |
-[no]pad |
Enables the changing of the variable and array memory layout. |
OFF |
/Qpad[-] |
-[no]pad-source |
Specifies padding for fixed-form source records. |
OFF |
/[no]pad-source or /Qpad-source[-] |
-par-report[n] |
Controls the diagnostic information reported by the auto-parallelizer. |
-par-report1 |
/Qpar-report[n] |
-[no-]par-runtime-control |
Generates code to perform run-time checks for loops that have symbolic loop bounds. |
-no-par-runtime-control |
/Qpar-runtime-control[-] |
-par-schedule-keyword [=n] |
Specifies a scheduling algorithm for DO loop iterations. |
OFF |
/Qpar-schedule-keyword [[:]n] |
-par-threshold[n] |
Sets a threshold for the auto-parallelization of loops. |
-par-threshold100 |
/Qpar-threshold[[:]n] |
-parallel |
Tells the auto-parallelizer to generate multithreaded code for loops that can be safely executed in parallel. |
OFF |
/Qparallel |
-pcn |
Enables control of floating-point significand precision. |
-pc80 |
/Qpcn |
-pg |
Compiles and links for function profiling with gprof(1); same as the -p option. |
OFF |
None |
-pie (Linux only) |
Produces a position-independent executable on processors that support it. |
OFF |
None |
-[no-]prec-div |
Improves precision of floating-point divides. |
-prec-div |
/Qprec-div[-] |
-[no-]prec-sqrt |
Improves precision of square root implementations. |
-no-prec-sqrt |
/Qprec-sqrt[-] |
-prefetch |
Enables prefetch insertion optimization. Deprecated; use -opt-prefetch. |
i64: -prefetch |
/Qprefetch |
-preprocess-only |
Causes the Fortran preprocessor to send output to a file, which is named by default; same as the -P option. |
OFF |
/preprocess-only |
-print-multi-lib |
Prints information about where system libraries should be found. |
OFF |
None |
-[no-]prof-data-order |
Enables or disables data ordering if profiling information is enabled. |
-no-prof-data-order |
/Qprof-data-order[-] |
-prof-dir dir |
Specifies a directory for profiling information output files. |
OFF |
/Qprof-dir dir |
-prof-file file |
Specifies a file name for the profiling summary file. |
OFF |
/Qprof-file file |
-[no-]prof-func-groups |
Enables or disables function grouping if profiling information is enabled. |
-no-prof-func-groups |
None |
-[no-]prof-func-order |
Enables or disables function ordering if profiling information is enabled. |
-no-prof-func-order |
/Qprof-func-order[-] |
-prof-gen[=keyword] |
Produces an instrumented object file that can be used in profile-guided optimization. |
-[no-]prof-gen |
/Qprof-gen[:keyword |
-prof-genx |
Produces an instrumented object file that includes extra source position information. Deprecated; use -prof-gen=srcpos. |
OFF |
/Qprof-genx |
-prof-hotness-threshold=n |
Lets you set the hotness threshold for function grouping and function ordering. |
OFF |
/Qprof-hotness-threshold:n |
-[no-]prof-src-dir |
Determines whether directory information of the source file under compilation is considered when looking up profile data records. |
-prof-src-dir |
/Qprof-src-dir[-] |
-prof-src-root=dir |
Lets you use relative directory paths when looking up profile data and specifies a directory as the base. |
OFF |
/Qprof-src-root:dir |
-prof-src-root-cwd |
Lets you use relative directory paths when looking up profile data and specifies the current working directory as the base. |
OFF |
/Qprof-src-root-cwd |
-prof-use[=arg] |
Enables the use of profiling information during optimization. |
-no-prof-use |
/Qprof-use[:arg] |
-Qinstall dir |
Specifies the root directory where the compiler installation was performed. |
OFF |
None |
-Qlocation,string,dir |
Specifies a directory as the location of the specified tool in string . |
OFF |
/Qlocation,string,dir |
-Qoption,string,options |
Passes options to the specified tool in string. |
OFF |
/Qoption,string,options |
-r8, -r16 |
Specifies the default KIND for real and complex variables. -r8 is the same as /real-size:64. -r16 is the same as /real-size:128. |
OFF |
/4R8, /4R16 |
-rcd |
Enables fast float-to-integer conversions. |
OFF |
/Qrcd |
-rct |
Sets the internal FPU rounding control to Truncate. |
OFF |
/Qrct |
-real-size size |
Specifies the default KIND for real variables. |
-real-size 32 |
/real-size:size |
-recursive |
Tells the compiler that all routines should be compiled for possible recursive execution. |
-norecursive |
/recursive |
-reentrancy keyword |
Tells the compiler to generate reentrant code to support a multithreaded application. |
-noreentrancy |
/reentrancy:keyword |
-S |
Causes the compiler to compile to an assembly file (.s) only and not link; same as options /Fa and /asmfile. |
OFF |
/S |
-safe-cray-ptr |
Tells the compiler that Cray* pointers do not alias other variables. |
OFF |
/Qsafe-cray-ptr |
-save |
Causes variables to be placed in static memory. |
-auto-scalar |
/Qsave |
-[no-]save-temps |
Tells the compiler to save intermediate files created during compilation. |
-no-save-temps |
/Qsave-temps[-] |
-[no-]scalar-rep |
Enables scalar replacement performed during loop transformation (requires -O3). |
-no-scalar-rep |
/Qscalar-rep[-] |
-shared |
Tells the compiler to produce a dynamic shared object instead of an executable. |
OFF |
None |
-shared-intel |
Links Intel-provided libraries dynamically. |
OFF |
None |
-shared-libgcc |
Links the GNU libgcc library dynamically. |
-shared-libgcc |
None |
-[no-]sox |
Tells the compiler to save the compiler options and version in the executable. |
-no-sox |
/Qsox[-] |
-stand keyword |
Causes the compiler to issue compile-time messages for nonstandard language elements. |
-nostand |
/stand:keyword |
-static |
Prevents linking with shared libraries. |
-static |
/static |
-staticlib |
Invokes the libtool command to generate static libraries. |
OFF |
None |
-static-intel |
Links Intel-provided libraries statically. |
OFF |
None |
-static-libgcc |
Links the GNU libgcc library statically. |
OFF |
None |
-std90 |
Causes the compiler to issue messages for language elements that are not standard in Fortran 90; same as -stand f90. |
OFF |
/stand:f90 |
-std95 |
Causes the compiler to issue messages for language elements that are not standard in Fortran 95; same as -stand f95. |
OFF |
/stand:f95 |
-std03 |
Causes the compiler to issue messages for language elements that are not standard in Fortran 2003; same as -std or -stand f03. |
OFF |
/stand:f03 |
-syntax-only |
Specifies that the source file should be checked only for correct syntax. |
OFF |
/syntax-only |
-T file |
Tells the linker to read link commands from the specified file. |
OFF |
None |
-tcheck |
Enables analysis of threaded applications. |
OFF |
/Qtcheck |
-tcollect [lib] |
Inserts instrumentation probes calling the Intel(R) Trace Collector API. |
OFF |
/Qtcollect[=lib] |
-tcollect-filter [file] |
Lets you enable or disable the instrumentation of specified functions. |
OFF |
/Qtcollect-filter[=file] |
-Tf file |
Tells the compiler to compile the file as a Fortran source file. |
OFF |
/Tf file |
-[no]threads |
Tells the linker to search for unresolved references in a multithreaded run-time library. |
i32, i64: -nothreads |
/[no]threads |
-tprofile |
Generates instrumentation to analyze multi-threading performance. |
OFF |
/Qtprofile |
-[no]traceback |
Tells the compiler to generate extra information in the object file to provide source file traceback information when a severe error occurs at run time. |
-notraceback |
/[no]traceback |
-tune keyword |
Determines the version of the architecture for which the compiler generates instructions. |
-tune pn4 |
/tune:keyword |
-u |
Enables error messages about any undeclared symbols; same as the -warn declarations option. |
OFF |
None |
-Uname |
Undefines any definition currently in effect for the specified symbol. |
OFF |
/Uname |
-unroll[n] |
Tells the compiler the maximum number of times to unroll loops. -unroll is the same as option -funroll-loops. |
-unroll |
/unroll[:n] |
-[no-]unroll-aggressive |
Determines whether the compiler uses more aggressive unrolling for certain loops. |
-no-unroll-aggressive |
/Qunroll-aggressive[-] |
-uppercase |
Causes the compiler to ignore case differences in identifiers and to convert external names to uppercase; same as the -names uppercase option. |
OFF |
/Quppercase |
-us |
Tells the compiler to append an underscore character to external user-defined names; same as the -assume underscore option. |
-us |
/us |
-[no-]use-asm |
Tells the compiler to produce objects through the assembler. |
-no-use-asm |
/Quse-asm[-] |
-v [file] |
Tells the driver that tool commands should be shown and executed. |
OFF |
None |
-V |
Displays the compiler version information; same as the -logo option. |
OFF |
None |
-[no-]vec |
Enables or disables vectorization and transformations enabled for vectorization. |
-no-vec |
/Qvec[-] |
-[no-]vec-guard-write |
Tells the compiler to perform a conditional check in a vectorized loop. |
-no-vec-guard-write |
/Qvec-guard-write[-] |
-vec-report[n] |
Controls the diagnostic information reported by the vectorizer. |
-vec-report1 |
/Qvec-report[n] |
-[no]vms |
Causes the run-time system to behave like HP* Fortran on OpenVMS* Alpha systems and VAX* systems (VAX FORTRAN*). |
-novms |
/[no]vms |
-w |
Disables all warning messages; same as specifying option -warn noneor -warn nogeneral. |
OFF |
/w |
-Wn |
Disables (n=0) or enables (n=1) all warning messages. |
-W1 |
/Wn |
-Wa,o1[,o2,...] |
Passes options ( o1,o2, and so forth) to the assembler for processing. |
OFF |
None |
-warn [keyword] |
Specifies diagnostic messages to be issued by the compiler. |
keywords: |
/warn[:keyword] |
-[no]watch [keyword] |
Tells the compiler to display certain information to the console output window. |
-nowatch |
/[no]watch[:keyword] |
-WB |
Turns a compile-time bounds check error into a warning. |
OFF |
/WB |
-what |
Tells the compiler to display its detailed version string. |
OFF |
/what |
-Winline |
Enables diagnostics about what is inlined and what is not inlined. |
OFF |
None |
-Wl,option1 [,option2,...] |
Passes options (o1, o2, and so forth) to the linker for processing. |
OFF |
None |
-Wp,option1 [,option2,...] |
Passes options (o1, o2, and so forth) to the preprocessor. |
OFF |
None |
-xp |
Tells the compiler to generate optimized code specialized for the Intel processor that executes your program. |
varies; see the option description |
/Qxp |
-X |
Removes standard directories from the include file search path. |
OFF |
/X |
-Xlinker option |
Passes a linker option directly to the linker |
OFF |
None |
-y |
Specifies that the source file should be checked only for correct syntax; same as the -syntax-only option. |
OFF |
/Zs |
-[no]zero |
Initializes to zero all local scalar variables of intrinsic type INTEGER, REAL, COMPLEX, or LOGICAL that are saved but not yet initialized. |
-nozero |
/Qzero[-] |
-Zp[n] |
Aligns fields of records and components of derived types on the smaller of the size boundary specified or the boundary that will naturally align them. |
-Zp16 |
/Zp[n] |