Intel(R) Fortran Compiler / Itanium(R) Help =========================================== usage: efc [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 Commonly used options may be placed in the efc.cfg file. Notes ----- 1. In config file, +FD0 means for Pass1: -prof_gen for Pass2: -prof_use Compiler Option List -------------------- Performance ----------- -O2 enable optimizations (DEFAULT) -O1 optimize for maximum speed, but disable some optimizations which increase code size for a small speed benefit -O3 enable -O2 plus more aggressive optimizations that may not improve performance for all programs -O0 disable optimizations -O same as -O2 -falias assume aliasing in program (DEFAULT) -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 -mp maintain floating point precision (disables some optimizations) -mp1 improve floating-point precision (speed impact is less than -mp) -tpp1 optimize for Itanium(R) processor -tpp2 optimize for Itanium(R) 2 processor (DEFAULT) 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 IP 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(DEFAULT) changing variable and array memory layout -nopad disable changing variable and array memory layout -unroll0 disable loop unrolling -safe_cray_ptr Cray pointers do not alias with other variables -prof_dir specify directory for profiling output files (*.dyn and *.dpi) -prof_file specify file name for profiling summary file -prof_gen instrument program for profiling -prof_use enable use of profiling information during optimization -fnsplit[-] enable/disable function splitting (enabled with -prof_use) -qp compile and link for function profiling with UNIX prof tool -p same as -qp -opt_report generate an optimization report to stderr -opt_report_file specify the filename for the generated report -opt_report_level[level] specify the level of report verbosity (min|med|max) -opt_report_phase specify the phase that reports are generated against -opt_report_routine reports on routines containing the given name -opt_report_help display the optimization phases available for reporting -tcheck generate instrumentation to drive the Intel Thread Checker to detect multi-threading bugs in programs written using Windows or POSIX Threads -openmp enable the compiler to generate multi-threaded code based on the OpenMP directives -openmp_profile link with instrumented OpenMP runtime library to generate OpenMP profiling information for use with the OpenMP component of the VTune(TM) Performance Analyzer -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_alias[-] enable(DEFAULT)/disable use of ANSI aliasing rules in optimizations; user asserts that the program adheres to these rules -complex_limited_range[-] enable/disable(DEFAULT) the use of the basic algebraic expansions of some complex arithmetic operations. This can allow for some performance improvement in programs which use a lot of complex arithmetic at the loss of some exponent range. -ivdep_parallel make ivdep directives mean no loop carried dependencies -ftz[-] enable/disable flush denormal results to zero -IPF_fma[-] enable/disable the combining of floating point multiplies and add/subtract operations -IPF_fltacc[-] enable/disable optimizations that affect floating point accuracy -IPF_flt_eval_method0 floating point operands evaluated to the precision indicated by program -IPF_fp_speculation enable floation point speculations with the following conditions: fast - speculate floating point operations (DEFAULT) safe - speculate only when safe strict - same as off off - disables speculation of floating-point operations 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 -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) -list print source listing on stdout -list -show include print source listing on stdout with INCLUDE files expanded -o 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 -------------------- -D[=] define macro -E preprocess to stdout -EP preprocess to stdout omitting #line directives -P, -F preprocess to file omitting #line directives -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 add directory to include file search path -U remove predefined macro -X remove standard directories from include file search path FCE/Component Control --------------------- -Qoption,, pass options to tool specified by -Qlocation,, set as the location of tool specified by -Qinstall set 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 -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 -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 -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[,] do not append an underscore to subroutine names listed in -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 print this help message -V display compiler version information -dryrun show driver tool commands but do not execute tools -v show driver tool commands and execute tools -Tf 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 -Knopic, -KNOPIC do not generate position independent code -fr32 disable use of high floating point registers -size_lp64 assume 64-bit size for long and pointer types Linking/Linker -------------- -L instruct linker to search for libraries -i_dynamic link Intel provided libraries dynamically -dynamic-linker select dynamic linker other than the default -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 pass directly to the linker for processing -Wl,[,,...] 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 Copyright (C) 1985-2003, Intel Corporation. All rights reserved. * Other brands and names are the property of their respective owners. Intel(R) C++ Compiler / Itanium(R) Help ======================================= usage: ecc [options] file1 [file2 ...] where options represents zero or more compiler options fileN is a C/C++ source (.C .c .cc .cpp .cxx .i), assembly (.s), object (.o), static library (.a), or other linkable file Commonly used options may be placed in the ecc.cfg file. Notes ----- 1. In config file, +FD0 means for Pass1: -prof_gen for Pass2: -prof_use Compiler Option List -------------------- Performance ----------- -O2 enable optimizations (DEFAULT) -O1 optimize for maximum speed, but disable some optimizations which increase code size for a small speed benefit -O3 enable -O2 plus more aggressive optimizations that may not improve performance for all programs -O0 disable optimizations -O same as -O2 -Ob 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 -Qip) -falias assume aliasing in program (DEFAULT) -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 -nolib_inline disable inline expansion of intrinsic functions -mp maintain floating point precision (disables some optimizations) -mp1 improve floating-point precision (speed impact is less than -mp) -tpp1 optimize for Itanium(R) processor -tpp2 optimize for Itanium(R) 2 processor (DEFAULT) -mcpu= optimize for a specific cpu itanium - optimize for Itanium(R) processor itanium2 - optimize for Itanium(R) 2 processor (DEFAULT) 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 IP inlining (requires -ip or -ipo) -ipo_obj force generation of real object files (requires -ipo) Other Advanced Performance Options: -unroll0 disable loop unrolling -prof_dir specify directory for profiling output files (*.dyn and *.dpi) -prof_file specify file name for profiling summary file -prof_gen[x] instrument program for profiling; with the x qualifier, extra information is gathered -prof_use enable use of profiling information during optimization -fnsplit[-] enable/disable function splitting (enabled with -prof_use) -qp compile and link for function profiling with UNIX prof tool -p same as -qp -opt_report generate an optimization report to stderr -opt_report_file specify the filename for the generated report -opt_report_level[level] specify the level of report verbosity (min|med|max) -opt_report_phase specify the phase that reports are generated against -opt_report_routine reports on routines containing the given name -opt_report_help display the optimization phases available for reporting -tcheck generate instrumentation to drive the Intel Thread Checker to detect multi-threading bugs in programs written using Windows or POSIX Threads -openmp enable the compiler to generate multi-threaded code based on the OpenMP directives -openmp_profile link with instrumented OpenMP runtime library to generate OpenMP profiling information for use with the OpenMP component of the VTune(TM) Performance Analyzer -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_alias[-] enable/disable(DEFAULT) use of ANSI aliasing rules in optimizations; user asserts that the program adheres to these rules -complex_limited_range[-] enable/disable(DEFAULT) the use of the basic algebraic expansions of some complex arithmetic operations. This can allow for some performance improvement in programs which use a lot of complex arithmetic at the loss of some exponent range. -ivdep_parallel make ivdep directives mean no loop carried dependencies -mserialize-volatile enable strict memory access ordering for volatile data object references -mno-serialize-volatile memory access ordering for volatile data object references may be suppressed -ftz[-] enable/disable flush denormal results to zero -IPF_fma[-] enable/disable the combining of floating point multiplies and add/subtract operations -IPF_fltacc[-] enable/disable optimizations that affect floating point accuracy -IPF_flt_eval_method0 floating point operands evaluated to the precision indicated by program -IPF_fp_speculation enable floation point speculations with the following conditions: fast - speculate floating point operations (DEFAULT) safe - speculate only when safe strict - same as off off - disables speculation of floating-point operations 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 -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) -o 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 C Preprocessor -------------- -A[(val)] create an assertion 'name' having value 'val' -A- remove all predefined macros -C don't strip comments -D[=] define macro -E preprocess to stdout -EP preprocess to stdout omitting #line directives -P, -F preprocess to file omitting #line directives -I add directory to include file search path -idirafter add directory to the second include file search path (after -I) -U remove predefined macro -X remove standard directories from include file search path -H print include file order -M generate makefile dependency information -MM similar to -M, but do not include system header files -MG similar to -M, but treat missing header files as generated files -MD preprocess and compile, generating output file containing dependency information ending with extension .d -MMD similar to -MD, but do not include system header files -MF generate makefile dependency information in file (must specify -M or -MM) -MX generate dependency file ending with extension .o.dep containing information used for the Intel wb tool -dM output macro definitions in effect after preprocessing (use with -E) Component Control ----------------- -Qoption,, pass options to tool specified by -Qlocation,, set as the location of tool specified by -Qinstall set as root of compiler installation Language -------- -[no]restrict enable/disable the 'restrict' keyword for disambiguating pointers -Xa select extended ANSI C/C++ dialect (DEFAULT) -Xc, -ansi select strict ANSI C/C++ conformance dialect -c99[-] enable(DEFAULT)/disable C99 support for C programs -std=c99 enable C99 support for C programs -Kc++ compile all source or unrecognized file types as C++ source files -fno-rtti disable RTTI support -Zp[n] specify alignment constraint for structures (n=1,2,4,8,16) -syntax perform syntax and semantic checking only (no object file produced) -fshort-enums allocate as many bytes as needed for enumerated types -fsyntax-only same as -syntax -funsigned-char change default char type to unsigned -funsigned-bitfields change default bitfield type to unsigned Compiler Diagnostics -------------------- -w disable all warnings -w control diagnostics: n=0 display errors (same as -w) n=1 display warnings and errors (DEFAULT) n=2 display remarks, warnings, and errors -wn print a maximum of n errors -wd[,,...] disable diagnostics L1 through LN -we[,,...] change severity of diagnostics L1 through LN to error -ww[,,...] change severity of diagnostics L1 through LN to warning -wr[,,...] change severity of diagnostics L1 through LN to remark -Werror force warnings to be reported as errors -Wall enable all warnings Miscellaneous ------------- -help print this help message -V display compiler version information -dryrun show driver tool commands but do not execute tools -v show driver tool commands and execute tools -x all source files found subsequent to -x will be recognized as one of the following types: c - C source file c++ - C++ source file c-header - C header file cpp-output - C pre-processed file assembler - assembly file assembler-with-cpp - assembly file that needs to be preprocessed none - disable recognition, and revert to file extension -fr32 disable use of high floating point registers -Kpic, -KPIC generate position independent code -fpic, -fPIC generate position independent code -Knopic, -KNOPIC do not generate position independent code -size_lp64 assume 64-bit size for long and pointer types -nobss_init disable placement of zero-initialized variables in BSS (use DATA) Linking/Linker -------------- -L instruct linker to search for libraries -i_dynamic link Intel provided libraries dynamically -mrelax pass -relax to the linker (DEFAULT) -mno-relax do not pass -relax to the linker -dynamic-linker select dynamic linker other than the default -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 -u pretend the is undefined -Xlinker pass directly to the linker for processing -Wl,[,,...] pass options o1, o2, etc. to the linker for processing Copyright (C) 1985-2003, Intel Corporation. All rights reserved. * Other brands and names are the property of their respective owners.