Intel(R) Fortran CompilerNAME Intel(R) Fortran Compiler SYNOPSIS ifc [options] file1 [file2 ...] where: options represents zero or more compiler options fileN is a Fortran source (.f .for .ftn .f90 .fpp), assembly (.s), object (.o), static library (.a), or other linkable file NOTE: Commonly used options may be placed in the ifc.cfg file. DESCRIPTION Intel(R) Fortran Compiler Options. This compiler is designed to preprocess, compile, assemble, and link Fortran programs on IA-32 systems. Compiler Option List Performance -O1 Enable optimizations (DEFAULT) -O2 Same as -O1 -O3 Enable -O2 plus more aggressive optimizations that may not improve performance for all programs -O0 Disable optimizations -O Same as -O1 -falias Assume aliasing in program (DEFAULT) -Ob<n> Control inline expansion: n=0 -- Disables inlining n=1 -- Inline functions declared with __inline, and perform C++ inlining n=2 -- Inline any function, at the compiler's discretion (same as -ip) -fno-alias Assume no aliasing in program -ffnalias Assume aliasing within functions (DEFAULT) -fno-fnalias Assume no aliasing within functions, but assume aliasing across calls -fp Disable using EBP as general purpose register -mp Maintain floating point precision (disables some optimizations) -mp1 Improve floating-point precision (speed impact is less than -mp) -prec_div Improve precision of floating-point divides (some speed impact) -fp_port Round fp results at assignments & casts (some speed impact) -pc32 Set internal FPU precision to 24 bit significand -pc64 Set internal FPU precision to 53 bit significand (DEFAULT) -pc80 Set internal FPU precision to 64 bit significand -rcd Enable fast float-to-int conversions -tpp5 Optimize for Pentium(R) processor -tpp6 Optimize for Pentium(R) Pro, Pentium(R) II and Pentium(R) III processors -tpp7 Optimize for Pentium(R) 4 processor -ax<codes> Generate code specialized for processor extensions specified by <codes> while also generating generic IA-32 code. <codes> includes one or more of the following characters: i -- Pentium Pro and Pentium II processor instructions M -- MMX(TM) instructions K -- streaming SIMD extensions W -- Pentium(R) 4 New Instructions -x<codes> Generate specialized code to run exclusively on processors supporting the extensions indicated by <codes> as described above. Advanced Performance Enable and specify the scope of Interprocedural (IP) Optimizations: -ip Enable single-file IP optimizations (within files) -ipo Enable multi-file IP optimizations (between files) -ipo_c Generate a multi-file object file (ipo_out.o) -ipo_S Generate a multi-file assembly file (ipo_out.s) Modify the behavior of IP: -ip_no_inlining Disable full and partial inlining (requires -ip or -ipo) -ip_no_pinlining Disable partial inlining (requires -ip or -ipo) -ipo_obj Force generation of real object files (requires -ipo) Other Advanced Performance Options: -nolib_inline Disable inline expansion of intrinsic functions -pad Enable changing variable and array memory layout -nopad Disable(DEFAULT) changing variable and array memory layout -unroll[n] Set maximum number of times to unroll loops. Omit n to use default heuristics. Use n=0 to disable loop unroller. -prof_dir <d> Specify directory for profiling output files (*.dyn and *.dpi) -prof_file <f> Specify file name for profiling summary file -prof_gen Instrument program for profiling -prof_use Enable use of profiling information during optimization -qp, -p Compile and link for function profiling with UNIX prof tool -vec Enable(DEFAULT) the vectorizer -vec_report[n] Control amount of vectorizer diagnostic information: n=0 no diagnostic information n=1 indicate vectorized loops (DEFAULT) n=2 indicate vectorized/non-vectorized loops n=3 indicate vectorized/non-vectorized loops and prohibiting data dependence information n=4 indicate non-vectorized loops n=5 indicate non-vectorized loops and prohibiting data dependence information -opt_report Generate an optimization report to stderr -opt_report_file<file> Specify the filename for the generated report -opt_report_level[level] Specify the level of report verbosity (min|med|max) -opt_report_phase<name> Specify the phase that reports are generated against -opt_report_routine<name> Reports on routines containing the given name -opt_report_help Display the optimization phases available for reporting -openmp Enable the compiler to generate multi-threaded code based on the OpenMP directives -openmp_stubs Enables the user to compile OpenMP programs in sequential mode. The openmp directives are ignored and a stub OpenMP library is linked (sequential) -openmp_report{0|1|2} Control the OpenMP parallelizer diagnostic level -parallel Enable the auto-parallelizer to generate multi-threaded code for loops that can be safely executed in parallel -par_report{0|1|2|3} Control the auto-parallelizer diagnostic level -par_threshold[n] Set threshold for the auto-parallelization of loops where n is an integer from 0 to 100 -ansi_ansi[-] Enable(DEFAULT)[disable] stating ANSI compliance of the compiled program and that optimizations can be based on the ANSI rules -prefetch[-] Enable(DEFAULT)[disable] prefetch insertion (requires -O3) -scalar_rep[-] Enable(DEFAULT)[disable] scalar replacement (requires -O3) Output, Debug -c Compile to object (.o) only, do not link -S Compile to assembly (.s) only, do not link (*I) -use_asm Produce objects through assembler -use_msasm Support Microsoft style assembly language insertion using MASM style syntax and, if requested, output assembly in MASM format -fcode-asm Produce assembly file with optional code annotations -fsource-asm Produce assembly file with optional code annotations -f[no]verbose-asm Produce assembly file with compiler comments (DEFAULT) -G0 Print source listing on stdout -G1 Print source listing on stdout without INCLUDE files expanded -o<file> Name output file -g Produce symbolic debug information in object file -inline_debug_info Preserve the source position of inlined code instead of assigning the call-site source position to inlined code Fortran Preprocessor -A- Remove all predefined macros (incompatible with -openmp) -D<name>[=<text>] Define macro -E Preprocess to stdout -EP Preprocess to stdout omitting #line directives -P, -F Preprocess to file -fpp[n] Run Fortran preprocessor on source files prior to compilation n=0 disable CVF and # directives, equivalent to no fpp n=1 enable CVF conditional compilation and # directives (DEFAULT) n=2 enable only # directives n=3 enable only CVF conditional compilation directives -cpp[n] Same as -fpp[n] -I<dir> Add directory to include file search path -U<name> Remove predefined macro -X Remove standard directories from include file search path FCE/Component Control -Qoption,<str>,<opts> Pass options <opts> to tool specified by <str> -Qlocation,<str>,<dir> Set <dir> as the location of tool specified by <str> -Qinstall <dir> Set <dir> as root of compiler installation Language -i2 Set default KIND of integer variables is 2 -i4 Set default KIND of integer variables is 4 -i8 Set default KIND of integer variables is 8 -r8 Set default size of REAL to 8 bytes -r16 Set default size of REAL to 16 bytes -autodouble Same as -r8 -doubletemps All intermediate results of floating-points values are at least double precision. -DD Compile debug statements (indicated by D in column 1) -DX Compile statements that have X in column 1 -DY Compile statements that have Y in column 1 -FR Specifies source files are in free format -FI Specifies source files are in fixed format -72 Specify 72 column lines for fixed form sources -80 Specify 80 column lines for fixed form sources -132 Specify 132 column lines for fixed form sources -extend_source Same as -132 -pad_source Make compiler acknowledge blanks at the end of a line -dps Enable DEC* PARAMETER statement recognition (DEFAULT) -nodps Disable DEC* PARAMETER statement recognition -1, -onetrip Execute any DO loop at least once -auto Make all local variables AUTOMATIC -auto_scalar Make scalar local variables AUTOMATIC (DEFAULT) -save Save all variables (static allocation); opposite of -auto -u, -implicitnone Set IMPLICIT NONE by default -Qansi[-] Enable(DEFAULT)[disable] stating ANSI compliance of the compiled program and that optimizations can be based on the ANSI rules -common_args Assume "by reference" subprogram arguments may alias one another -vms Enable VMS and DEC statement extensions -zero Implicitly initialize all data to zero -C Enable extensive runtime error checking (-CA, -CB, -CS, -CU, -CV) -CA Runtime checks for nil pointer/allocatable array refs -CB Runtime checks for out-of-bounds array subscript/substring refs -CS Runtime checks for consistent shape of intrinsic procedure array args -CU Runtime checks for uninitialized variables -CV Runtime checks for formal/actual parameter correspondence -d<n> Set level of diagnostics -Qdyncom"blk1,blk2,..." Make given common blocks dynamically-allocated -Qloccom"blk1,blk2,..." Make given common blocks locally-allocated -nbs Treat backslash as a normal character, not an escape character -nus Do not append an underscore to external subroutine names -nus[,<file>] Do not append an underscore to subroutine names listed in <file> -lowercase Change routine names to all lowercase (DEFAULT) -uppercase Change routine names to all uppercase -[no]align Analyze and reorder memory layout for variables and arrays -Zp[n] Specify alignment constraint for structures (n=1,2,4,8,16) -y, -syntax Perform syntax check only Compiler Diagnostics -cerrs[-] Enable[disable](DEFAULT) terse format for diagnostic messages -cm Suppress all comment messages -q Suppress printing errors to stderr -w Disable all warnings -Wn Disable warnings (n=0) or show warnings (n=1, DEFAULT) -WB Issue a warning instead of an error for out-of-bounds array references -w90, -w95 Suppress messages about use of non-standard Fortran -e90, -e95 Issue errors for non-standard Fortran Miscellaneous -help Prints list of compiler options -V Display compiler version information -sox[-] Enable(DEFAULT)[disable] saving of compiler options and version in the executable -dryrun Show driver tool commands but do not execute tools -v Show driver tool commands and execute tools -Tf<file> Compile file as Fortran source -nobss_init Disable placement of zero-initialized variables in BSS (use DATA) -Kpic, -KPIC Generate position independent code -fpic, -fPIC Generate position independent code -0f_check Enable the patch for the Pentium 0f erratum -convert{ little endian | big endian | native } Specifies the format of unformatted files containing numeric data -module[path], -nomodule Specifies the directory where the module files (.mod) are placed. Omitting this option, or specifying -nomodule, results in placing the module files in the directory where the source files are compiled. -show[-] Enables [disables] printing a source listing to stdout with contents of INCLUDE files. Linking/Linker -L<dir> Instruct linker to search <dir> for libraries -i_dynamic Link Intel provided libraries dynamically -no_cpprt Do not link in C++ runtime libraries -nodefaultlibs Do not use standard libraries when linking -nostartfiles Do not use standard startup files when linking -nostdlib Do not use standard libraries and startup files when linking -static Prevents linking with shared libraries -shared Produce a shared object -Xlinker <val> Pass <val> directly to the linker for processing -Wl,<o1>[,<o2>,...] Pass options o1, o2, etc. to the linker for processing -C90 Link with alternate I/O library for mixed output with C -posixlib Link with POSIX library -Vaxlib Link with portability library -dynamic-linker<filename> Selects a dynamic linker (filename) other than the default Copyright(C) 2002 Intel Corporation IFC(1) |
|
|