---------- CPU2000 Dell NT flag disclosure ------------ Description of compiler flags for Intel C Compiler 4.5 ------------------------------------------------------- /Qax - While also generating a generic IA-32 code path, generate code for processor extensions as specified by . includes one or more of the following characters: i Pentium Pro and Pentium II processor instructions M MMX(TM) instructions K streaming SIMD extensions /Qx - generate specialized code to run exclusively on processors supporting the extensions indicated by . includes one or more of the following characters: i Pentium Pro and Pentium II processor instructions M MMX(TM) instructions K streaming SIMD extensions /Qipo - enable multi-file interprocedural (ip) optimizations (between files) /Qipo_wp - a higher level of ip optimizations that verifies that the whole program optimizations listed below are possible. These optimizations only happen at link time when it is known that an executable is generated. If the conditions for the listed optimizations are not met, the link time compilation will just do the equivalent of -Qipo Whole program optimizations done at link time: - Data alignment within common blocks - Data layout within common blocks - Elimination of external function not called - Interprocedural constant propagation - No alternate entry needed for stack aligned external function entries /Qprof_dir - specify directory for profiling output files (*.dyn and *.dpi) /Qprof_file - specify file name for profiling summary file /Qprof_gen[x] - instrument program for profiling; with the x qualifier, extra information is gathered for use with the PROFORDER tool /Qprof_use - enable use of profiling information during optimization shlW32M.lib - Microquill SmartHeap Library 5.0 Description of compiler flags for Intel FORTRAN Compiler 4.5 ------------------------------------------------------------ /O1 - optimize for maximum speed, but disable some optimizations which increase code size for a small speed benefit: /Gs /Ob1gysi- /O2 - optimize for maximum speed (same as /Ox) /O3 - enable /O2 plus additional optimizations (for example, scalar replacement, loop interchange, prefetches, etc.). /Qax - While also generating a generic IA-32 code path, generate code for processor extensions as specified by . includes one or more of the following characters: i Pentium Pro and Pentium II processor instructions M MMX(TM) instructions K streaming SIMD extensions /Qx - generate specialized code to run exclusively on processors supporting the extensions indicated by . includes one or more of the following characters: i Pentium Pro and Pentium II processor instructions M MMX(TM) instructions K streaming SIMD extensions /Qipo - enable multi-file interprocedural (ip) optimizations (between files) /Qipo_wp - a higher level of ip optimizations that verifies that the whole program optimizations listed below are possible. These optimizations only happen at link time when it is known that an executable is generated. If the conditions for the listed optimizations are not met, the link time compilation will just do the equivalent of -Qipo Whole program optimizations done at link time: - Data alignment within common blocks - Data layout within common blocks - Elimination of external function not called - Interprocedural constant propagation - No alternate entry needed for stack aligned external function entries /Qpc32 - set internal FPU precision to 24 bit significand (default) /Qprefetch[-] - enable(DEFAULT)/disable prefetch insertion (requires /O3) /Qprof_dir - specify directory for profiling output files (*.dyn and *.dpi) /Qprof_file - specify file name for profiling summary file /Qprof_gen[x] - instrument program for profiling; with the x qualifier, extra information is gathered for use with the PROFORDER tool /Qprof_use - enable use of profiling information during optimization Description of compiler flags for portability --------------------------------------------- -Op - Disable native 80-bit floating point arithmetic and restrict floating point precision to IEEE standard. Needed for 176.gcc. 176.gcc performs a cast from double to float and back to double and expects there to be a change in the value due to the forced loss of precision. With native 80-bit floating point arithmetic, there is no change in value as the cast down is lossless. Thus to match the output that SPEC expects, this flag is needed. -Fi - Tells the compiler that the F90 code is in fixed-format. Needed for 178.galgel. /MT - Use the static, multi-threaded version of the C runtime library. Needed for 253.perlbm since there is call involving file handles which is not present in the default, single-threaded library. /Fn - This tells the compiler to allocate a stack space of n bytes. Needed for 176.gcc and 178.galgel as they require additional space. -stack n - See /Fn Benchmark Portability flags: ---------------------------- -DPERLDLL - perl (from which 253.perlbmk was derived) can be generated as an executable or a DLL in a Microsoft Windows based environemnt with the compiler. SPEC allows this directive to zero out the DLLExport/DLLImport directives within the code and generate a monolithic executable, comparable to how the code would be run on a Unix machine. -Dalloca=_alloca - SPEC allowed definition of the alloca to use for 176.gcc. -DNT_i386 - SPEC provided flag for compilation of 186.crafty on Windows NT. -DSYS_HAS_CALLOC_PROTO -DSYS_HAS_MALLOC_PROTO - SPEC provided defines for compilation of 254.gap on Windows NT.