Author: Dann Corbit
Date: 11:05:48 12/31/02
Go up one level in this thread
On December 31, 2002 at 13:55:45, Uri Blass wrote:
>On December 31, 2002 at 13:50:06, Uri Blass wrote:
>
>>On December 31, 2002 at 13:14:36, Dann Corbit wrote:
>>
>>>On December 31, 2002 at 12:01:56, Uri Blass wrote:
>>>
>>>>On December 31, 2002 at 11:49:37, Uri Blass wrote:
>>>>
>>>>>1)I read in the intel tutorial that I can use optimization like loop
>>>>>optimization.
>>>>>Does it mean that it is always better to change my project option from 02 to 03
>>>>>and if it is the case why not using 03 as the default option?
>>>>>
>>>>>2)I read that G7 is the default option but for some reason I see GX in my
>>>>>computer.
>>>>>What does it mean?
>>>>>
>>>>>The following table was copied and edited by me from the intel tutorial
>>>>>
>>>>> Option Setting Processor
>>>>>Windows* Linux*
>>>>>
>>>>>-G6 -tpp6 Pentium Pro, Pentium II and Pentium III processors
>>>>>
>>>>>-G7 default -tpp7 default Pentium 4 processor
>>>>>
>>>>>
>>>>>tpp7 is for linux and it is not relevant for me.
>>>>>I expected to see G7 in my project option and not GX and I am afraid to change
>>>>>the X.
>>>>>
>>>>>3)From reading the tutorial I get the impression that I cannot give a version
>>>>>that is the best for all processors and the only way to get a version that is
>>>>>best for all processors is to have 4 different exe files when everyone of them
>>>>>run only on specific processors.
>>>>>
>>>>>The following is copied from intel's totorial
>>>>>
>>>>>"Because they contain multiple versions of code, applications compiled with
>>>>>these options have increased code size. However, the performance of such code is
>>>>>better than standard optimized code, although slightly slower than code compiled
>>>>>with the -Qx[i|M|K|W] options,"
>>>>>
>>>>>How much is slightly slower for chess programs and is there a way to avoid the
>>>>>problem(for some reason I do not see programmers release 4 different version
>>>>>when they ask the user to choose based on the processor)?
>>>>>
>>>>>Uri
>>>>
>>>>Another question that I have is which option is best for AMD duron(tm)
>>>>proccesor.
>>>>
>>>>Intel for some reason talk only about pentium and I do not read the
>>>>word pentium when I look at my system properties so I do not know if to optimize
>>>>for Ppro,pMMX,PIII or PIV.
>>>
>>>These flags work well for the intel compiler:
>>> /FD /G7 /GA /GF /Gs /O3 /QaxiMKW /Qip /Zm500 /W5 /Qprof_use /Qipo /c
>>>
>>>In order to use /Qprof_use you will need to do several runs before hand with
>>>/Qprof_genx to create profile guided feedback.
>>>
>>>Test sets are a decent way to get some feedback. If your program has an 'auto'
>>>mode where it plays against itself, then that is even better.
>>
>>My flags are now
>>/nologo /ML /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS"
>>/Fp"Release/main.pch" /YX /Fo"Release/" /Fd"Release/" /FD /c
>>
>>Do you suggest to delete it and use the flags that you give.
>>I will try it.
>>
>>Uri
>
>I am not sure exactly what to change.
>I simply used copy and paste for the what I have in the compiler options.
>
>I see that I have 4 things before /02 when you have 5 things before /03 and I
>also do not know the meaning of most of the flags.
Where your command line ends with "/FD /c" replace those two flags with the flag
list I gave. However, you should start with /Qprof_genx instead of /Qprof_use
because you have not generated any feedback yet. As for the meaning of the
flags, from the documentation:
Basic PGO Options
The basic PGO options are:
-Qprof_gen[x] for generating instrumented code
-Qprof_use for generating a profile-optimized executable
-Qfnsplit[-] for enabling [disabling] function splitting. This option is enabled
by default if -Qprof_use is specified.
In cases where your code behavior differs greatly between executions, you should
ensure that the benefit of the profile information is worth the effort required
to maintain up-to-date profiles. In the basic profile-guided optimization, the
above options are used in the three phases of PGO.
Generating Instrumented Code
The -Qprof_gen[x] option instruments the program for profiling to derive the
execution count of each basic block. This option is used in phase 1 of PGO to
instruct the compiler to produce instrumented code in your object files in
preparation for instrumented execution. With x qualifier, -Qprof_genx gathers
extra information for use with the PROFORDER tool.
Generating a Profile-optimized Executable
The -Qprof_use option is used in phase 3 of the PGO to instruct the compiler to
produce a profile-optimized executable and to merge available dynamic
information (.dyn) files into a pgopti.dpi file.
Note
The dynamic information files are produced in phase 2 when you run the
instrumented executable.
If you perform multiple executions of the instrumented program, -Qprof_use
merges the dynamic information files again and overwrites the previous
pgopti.dpi file.
Function Splitting
-Qfnsplit[-] enables [disables] function splitting. This option is used in
phases 3 to improve the placement of executed instructions by separating the
executed and non-executed instructions. The executed code is emitted for each
function, while the non-executed code is grouped together in a separate text
section.
See an example of using PGO.
Compiler Options Quick Reference Guide
Options specific to IA-32 architecture (IA-32 only)
Options specific to the Itanium architecture (Itanium-based systems only)
Options available for both IA-32 and Itanium architecture
Option Description Default
-?, -help Display compiler options summary.
OFF
-Ap64
Itanium-based systems only Enables 64-bit pointers. ON
-As32
Itanium-based systems only Enables a virtual address space of 4 gigabytes (GB)
or 232 bytes. OFF
-As64
Itanium-based systems only Enables a virtual address space of 16 exabytes (EB)
or 264 bytes. ON
-C Places comments in preprocessed source output. OFF
-c Stops the compilation process after an object file has been generated. The
compiler generates an object file for each C or C++ source file or preprocessed
source file. Also takes an assembler file and invokes the assembler to generate
an object file.
OFF
-Dname[{=|#}value] Defines a macro name and associates it with the specified
value.
OFF
-E Stops the compilation process after the C or C++ source files have been
preprocessed, and writes the results to stdout.
OFF
-EHa Enables asynchronous C++ exception handling model. OFF
-EHc Specifies that extern C functions do not throw exceptions. ON
-EHs Enables the synchronous C++ exception handling model. OFF
-EP Stops the compilation process after the C or C++ source files have been
preprocessed and writes the results to stdout. The #line directives are stripped
(that is, not included in the output). Use -EP -P to preprocess to a file,
omitting #line directives.
OFF
-EP -P Preprocess to file omitting #line directives.
OFF
-Fn Sets the amount of stack to reserve for the program by passing -stack: n to
the linker. OFF
-FA[cs] Produce an assembly listing with optional code and/or source
annotations. On Itanium-based systems, the result is the same as using -Fa (no
annotations).
OFF
-Fa[filename] Produces an assembly output file with the specified filename, or
the default name if the filename is not specified. Use this option to specify
filename other than that of the first source or object file on the command line.
OFF
-FD Generates file dependencies; this option invokes the Microsoft compiler and
passes the option to it OFF
-Fe[filename] Produces an executable output file with the specified filename, or
the default name if the filename is not specified. Use this option to specify
filename other than that of the first source or object file on the command line.
ON
-FI[filename] Instructs the preprocessor to include the filename specified as
the header file.
OFF
-Fm[filename] Instructs the linker to produce a map file.
OFF
-Fo[filename] Produces an object output file with the specified filename, or the
default name if the filename is not specified. Use this option to specify
filename other than that of the first source or object file on the command line.
ON
-Fp[filename] Provides an alternate filename for precompiled header files.
OFF
-FR[file] Invokes the Microsoft compiler to produce an .SBR file with complete
symbolic information.
OFF
-Fr[file] Invokes the Microsoft compiler to produce an .SBR file without
information on local variables.
OFF
-G5
IA-32 only Targets the optimizations to the Intel® Pentium® processor.
OFF
-G6
IA-32 only Targets the optimizations to the Intel Pentium Pro, Pentium II and
Pentium III processors.
ON
-G7
IA-32 only Targets the optimizations to the Intel Pentium 4 processor.
OFF
-GA
IA-32 only Optimizes for Microsoft Windows applications. OFF
-GB
IA-32 only Same as -G6. OFF
-Gd
IA-32 only Makes __cdecl the default calling convention. ON
-Ge Enables stack-checking for all functions. OFF
-GF Enables read-only string-pooling. OFF
-Gf Enables string-pooling optimization. ON
-Gh
IA-32 only Adds a call to user-supplied __penter routine in each function
prolog. OFF
-Gr
IA-32 only Selects Microsoft __fastcall as the default calling convention. OFF
-GR[-] Enables [disables] C++ Run Time Type Information (RTTI).
Default is -GR- OFF
-Gs[n] Disables stack-checking for routines with n or more bytes of local
variables and compiler temporaries. Default: n=4096 ON
-GT Enable fiber-safe thread local storage. OFF
-GX[-] Enables [disables] C++ exception handling. Default is -GX-. OFF
-Gy Packages functions to enable linker optimization. ON
-Gz
IA-32 only Makes __stdcall the default calling convention. OFF
-GZ Initializes all local variables when used with -Od. OFF
-help, -? Display compiler options summary.
-Hn Limits the length of external symbol names to n characters. OFF
-Idirectory Specifies an additional directory to search for include files.
OFF
-J Makes the default char type unsigned. OFF
-LD, LDd Produces a DLL. OFF
-link Passes options to the linker.
OFF
-MD, -MDd Compiles and links with the dynamic, multi-thread C run time library.
d indicates debug version. OFF
-ML, -MLd Compiles and links with the static, single-thread C run time library.
d indicates debug version. ON
-MT, -MTd Compiles and links with the static, multi-thread C run time library. d
indicates debug version. OFF
-noBool Disable bool keyword. OFF
-nologo Do not display compiler version information. OFF
-O1 Optimize for speed, but disable some optimizations that increase code size
for small speed benefit. The -O1 option has the same effect as specifying the
options: -Og, -Oi-, -Os, -Ob1, -Gf, -Gs, and -Gy. For Itanium compiler, -O1
turns off software pipelining to reduce code size.
OFF
-O2 Optimizes for speed. The -O2 option has the same effect as specifying the
following options: -Og, -Oi, -Ot, -Oy, -Ob1, -Gf, -Gs, and -Gy. The compiler may
reassociate floating-point expressions to improve application performance. Use
-QIPF_fltacc or -Op to disable this behavior.
ON
-O3 Optimes for speed. Enables high-level optimization. This level does not
guarantee higher performance. Using this option may increase the compilation
time. Impact on performance is application dependent, some applications may not
see a performance improvement.
OFF
-Oa[-] Assume [not assume] no aliasing. OFF
-Obn Controls the compiler's inline expansion. The amount of inline expansion
performed varies with the value of n as follows:
0: Disables inlining.
1: Enables (default) inlining of functions declared with the __inline keyword.
Also enables inlining according to the C++ language.
2: Enables inlining of any function. However, the compiler decides which
functions to inline. Enables interprocedural optimizations and has the same
effect as -Qip.
ON
n=1
-Od Disables optimizations.
OFF
-Og Enables global optimizations. ON
-Oi[-] Enables [disables] inline expansion of intrinsic functions.
ON
-Op[-] Enables [disables] conformance to the ANSI C and IEEE 754 standards for
floating-point arithmetic.
OFF
-Os Enables most speed optimizations, but disable optimizations that increase
code size for a small speed benefit. OFF
-Ot Enables all speed optimizations. OFF
-Ow[-] Assume [not assume] no cross-function aliasing. OFF
-Ox Same as the -O2 option without the -Gfy options. OFF
-Oy[-]
IA-32 only Enables [disables] the use of the EBP register in optimizations. When
you disable with -Oy-, the EBP register is used as frame pointer.
ON
-P Stops the compilation process after C or C++ source files have been
preprocessed and writes the results to files named according to the compiler's
default file-naming conventions.
OFF
-QA[-] Enables [disables] all predefined macros (other than those beginning with
__) and all assertions.
ON
-QAname[(value,...)] Associates a symbol name with the specified sequence of
values. Equivalent to an #assert preprocessing directive.
OFF
-Qansi[-] Enables [disables] assumption of the program's ANSI conformance. OFF
-Qax{i|M|K|W}
IA-32 only Generates specialized code for processor-specific codes i, M, K, W
while also generating generic IA-32 code.
i = Pentium® Pro and Pentium II processor instructions
M = MMX(TM) instructions
K = streaming SIMD extensions
W = Pentium 4 processor instructions
OFF
-Qc99[-]
Enable [disable] C99 support for C programs.
OFF
-Qchkstk[-]
Itanium-based systems only
Calls __chkstk for every call to alloca(). -Qchkstk- cancels calls to
__chkstk.
ON
-Qfnsplit[-]
IA-32 only Enables [disables] function splitting. Default is ON with -Qprof_use.
ON
-Qfp_port
IA-32 only Round fp results at assignments and casts (some speed impact).
-Qftz
Itanium-based systems only Flushes denormal results to zero.
OFF
-QH Display "include" file order; don't compile. OFF
-QIA64_fr32
Itanium-based systems only Disable use of high floating-point registers. OFF
-QI0f[-]
IA-32 only Avoids the incorrect decoding of certain 0f instructions for code
targeted at older processors.
OFF
-QIfist[-], -Qrcd
IA-32 only Enables [disables] fast floating-point-to-integer conversions. OFF
-Qinline_debug_info Preserve source information for inlined functions.
OFF
-QIPF_fma[-]
Itanium-based systems only Enables [disables] the contraction of floating-point
multiply and add/subtract operations into a single operation.
OFF
-QIPF_fltacc[-]
Itanium-based systems only Enables [disables] the compiler from applying
optimizations that affect floating-point accuracy.
OFF
-QIPF_flt_eval_method0
Itanium-based systems only The expressions involving floating-point operands are
evaluated in the precision indicated by the program.
OFF
-QIPF_fp_speculationstring
Itanium-based systems only -QIPF_fp_speculationfast: instructs the compiler to
speculate floating-point operations
-QIPF_fp_speculationsafe: allows the compiler to speculate floating-point
operations only when it is safe to do
-QIPF_fp_speculationstrict: disables the speculation of floating-point
operations
-QIPF_fp_speculationoff: same as the strict interpretation
OFF
-Qip Enables interprocedural optimizations for single file compilation.
OFF
-Qip_no_inlining Disables inlining that would result from the -Qip or -Ob2
interprocedural optimizations, but has no effect on other interprocedural
optimizations. This option has no effect on user-directed inlining (-Ob1).
OFF
-Qip_no_pinlining
IA-32 only Disable partial inlining. Requires -Qip or -Qipo. OFF
-Qipo Enables interprocedural optimizations across files.
OFF
-Qipo_c Generates a multifile object file (ipo_out.obj) that can be used in
further link steps .
OFF
-Qipo_obj Forces the compiler to create real object files when used with -Qipo.
This option is ON by default for Itanium-based systems.
OFF
-Qipo_S Generates a multifile assembly file named ipo_out.asm that can be used
in further link steps.
OFF
-Qivdep_parallel
Itanium-based systems only This option indicates there is absolutely no
loop-carried memory dependency in the loop where IVDEP directive is specified.
OFF
-Qlocation,tool,path Specifies the path to tool.
OFF
-Qlong_double Changes the default size of the long double data type from 64 to
80 bits.
OFF
-QM Generates makefile dependency lines for each source file, based on the
#include lines found in the source file. OFF
-Qms Allow compilation regardless of possible source language standards
violations.
OFF
-Qmspp[-]
IA-32 only Enables [disables] Microsoft* Visual C++* 6.0 Processor Pack binary
compatibility.
ON
-Qnobss_init Places variables that are initialized with zeroes in the DATA
section.
OFF
-Qnopic
Itanium-based systems only Disable generation of position-independent code. OFF
-Qopenmp Enables the parallelizer to generate multi-threaded code based on the
OpenMP* directives. The -Qopenmp option works with both -Od and any optimization
level of -O1, -O2 (default ), and -O3. The support of -Od by OpenMP helps to
debug OpenMP applications.
OFF
-QopenmpP Same as -Qopenmp.
OFF
-QopenmpS Enables the compilation of OpenMP programs in sequential mode. The
openmp directives are ignored and a stub library is linked (sequential). OFF
-Qopenmp_report{0|1|2} Controls the OpenMP parallelizer's diagnostic levels. The
default is -Qopenmp_report1.
OFF
-Qoption,tool,list Passes an argument list to another program in the compilation
sequence, such as the assembler or linker.
OFF
-Qopt_report Generates an optimization report directed to stderr, unless
-Qopt_report_file is specified.
OFF
-Qopt_report_filefilename Specifies the filename for the optimization report. It
is not necessary to invoke -Qopt_report when this option is specified.
OFF
-Qopt_report_level[level] Specifies the verbosity level of the output. Valid
level arguments:
min
med
max
If a level is not specified, min is used by default.
OFF
-Qopt_report_phasephase Specifies the compilation phase for which reports are
generated. The option can be used multiple times in the same compilation to get
output from multiple phases.
Valid phase arguments:
ipo: Interprocedural Optimizer
hlo: High Level Optimizer
ilo: Intermediate Language Scalar Optimizer
ecg: Electron Code Generator
omp: OpenMP*
all: All phases
OFF
-Qopt_report_routine[substring] Specifies a routine substring. Reports from all
routines with names that include substring as part of the name are generated. By
default, reports for all routines are generated.
OFF
-Qopt_report_help Displays all possible settings for -Qopt_report_phase. No
compilation is performed.
OFF
-Qparallel Detects parallel loops capable of being executed safely in parallel
and automatically generates multithreaded code for these loops.
OFF
-Qpar_report{0|1|2|3} Controls the auto-parallelizer's diagnostic levels 0, 1,
2, or 3 as follows:
-Qpar_report0: no diagnostic information is displayed.
-Qpar_report1: indicates loops successfully auto-parallelized (default).
-Qpar_report2: loops successfully and unsccessfully auto-parallelized.
-Qpar_report3: same as 2 plus additional information about any proven or assumed
dependences inhibiting auto-parallelization.
OFF
-Qpar_threshold[n] Sets a threshold for the auto-parallelization of loops based
on the probability of profitable execution of the loop in parallel, n=0 to 100.
Default: n=75. This option is used for loops whose computation work volume
cannot be determined at compile time.
-Qpar_threshold0: loops get auto-parallelized regardless of computation work
volume.
-Qpar_threshold100: loops get auto-parallelized only if profitable parallel
execution is almost certain.
OFF
-Qpc{32|64|80}
IA-32 only Enables floating-point significand precision control. The value is
used to round the significand to the correct number of bits. The value must be
either 32, 64, or 80.
Default: -Qpc64
ON
-Qpch_compress Specify compression of PCH files.
-Qpch_memn Allocates n megabytes of memory space for precompiled header files.
OFF
-Qpchi[-] Enables [disables] precompiled header files coexistence to reduce
build time.
ON
-Qprec
IA-32 only Improves floating-point precision with less performance degradation
than -Op.
OFF
-Qprec_div
IA-32 only Disables the floating point division-to-multiplication optimization.
OFF
-Qprof_dir dirname Specifies the directory (dirname) to hold profile
information.
OFF
-Qprof_file filename Specifies filename for profiling summary file.
OFF
-Qprof_gen[x] Instruments the program to prepare for instrumented execution and
also creates a new static profile information file (.spi).
OFF
-Qprof_use Uses dynamic feedback information.
OFF
-Qrcd, -QIfist[-]
IA-32 only Enables [disables] fast conversions of floating-point-to-integer
conversions. This option does not guarantee that any particular rounding mode
will be used.
OFF
-Qrestrict Enables pointer disambiguation with the restrict qualifier. OFF
-Qsfalign{8|16}
IA-32 only -Qsfalign8: may align stack for functions with 8 or 16 byte vars.
-Qsfalign16: may align stack for functions with 16 byte vars
Default: -Qsfalign8
ON
-Qsfalign[-]
IA-32 only Enables [disables] stack alignment for all functions. OFF
-Qsox[-]
IA-32 only Enables [disables] the saving of compiler options and version
information in the executable file.
Default: -Qsox
ON
-Qunroll[n]
IA-32 only Specifies the maximum number of times to unroll a loop. Omit n to let
the compiler decide whether to perform unrolling or not. Use n = 0 to disable
unroller. (Currently, the compiler only processes n = 0 for Itanium-based
systems; all other values are NOPs). If n is not specified, the compiler
automatically chooses the maximum number of times to unroll a loop.
ON
-Qunroll0
Itanium-based systems only Disable loop unrolling. OFF
-Quse_asm[-] Enables [disables] use of assembler to produce object files. OFF
-Qvc5
IA-32 only Enables compatibility with Visual C++* 5.0. OFF
-Qvc6
IA-32 only Enables compatibility with Visual C++ 6.0.
ON
-Qvc7
IA-32 only Enables compatibility with Visual C++ .NET*. OFF
-Qvec[-]
IA-32 only Enables [disables] the vectorizor.
ON
-Qvec_report[n]
IA-32 only Controls the amount of vectorizer diagnostic information produced
depending on the value of n described as follows:
0: no diagnostic information
1: indicate vectorized loops(default)
2: indicate vectorized/non-vectorized loops
3: indicate vectorized/non-vectorized loops and prohibiting data dependence
information
4: indicate non-vectorized loops
5: indicate non-vectorized loops and prohibiting data dependence information
OFF
-Qwd[tag] Disables the soft diagnostic that corresponds to tag.
OFF
-Qwe[tag] Overrides the severity of the soft diagnostic corresponding to tag and
makes it an error.
OFF
-Qwnn Limits the number of errors displayed prior to aborting compilation to n.
Default value for n is 100.
OFF
-Qwp_ipo Compile all objects over entire program with multifile interprocedural
optimizations.
OFF
-Qwr[tag] Overrides the severity of the soft diagnostic corresponding to tag and
makes it a remark.
OFF
-Qww[tag] Overrides the severity of the soft diagnostic corresponding to tag and
makes it a warning.
OFF
-Qx{i|M|K|W}
IA-32 only Generates specialized code for processor-specific codes i, M, K, W
while also generating generic IA-32 code.
i = Pentium® Pro and Pentium II processor instructions
M = MMX(TM) instructions
K = streaming SIMD extensions
W = Pentium 4 processor instructions
OFF
-RTC1 Equivalent to -Gz or -RTCsu OFF
-RTCs Enable stack frame run time checks OFF
-RTCu Report use of variable that was not initialized. OFF
-S Generate assembly files with .asm suffix OFF
-TC Compiles all source or unrecognized file types as C source files. OFF
-Tcfilename Treats filename as a C source file. OFF
-TP Compiles all source or unrecognized file types as C++ source files.
OFF
-Tpfilename Treats filename as a C++ source file.
OFF
-u Disables all predefined macros (other than those starting with __ ) and
assertions. (Same as -QA-.)
OFF
-Uname Suppresses any definition of a macro name; equivalent to a #undef
preprocessing directive.
OFF
-vd{0|1} Disables (0) or generates (1) C++ hidden vtordisp
constructor/destructor displacement member. Default is -vd1. OFF
-Vstring Embeds version string in executable. OFF
-vmb Selects the smallest representation for pointers to members. Use this
option if you define each class before you declare a pointer to a member of the
class. ON
-vmg Selects the general representation for pointers to members. Use this option
if you declare a pointer to a member before you define the corresponding class.
OFF
-vmm Enables pointers to class members with single or multiple inheritance with
-vmg. OFF
-vms Enables pointers to members of single-inheritance classes with -vmg. OFF
-vmv Enables pointers to members of any inheritance type with -vmg. OFF
-W0 Display only errors. OFF
-w Disable all warnings.
OFF
-W1, -W2, -W3 Display error and warning messages. ON
-W4, -Wall Display error, warning, and remark messages. OFF
-Wp64
Itanium-based systems only Print diagnostics for 64-bit porting. OFF
-Wport Issue portability diagnostics. OFF
-WX
IA-32 only Force warnings to be reported as errors. OFF
-X Removes the standard directories from the list of directories to be searched
for include files.
OFF
Y- Ignore all other precompiled header files. OFF
-Yc[hfile] Create a precompiled header file.
OFF
-Yu[hfile] Use a precompiled header file.
OFF
-YX Enables automatic precompiled header file creation and usage.
OFF
-Za Enforces strict conformance to the ANSI standard for C.
OFF
-Zc:arg1[,arg2] Specify standard conformance when -Ze is specified for the
following arguments:
forscope -- enforce standard behavior for initializers of loops.
wchar_t -- specify that wchar_t is a native data type.
OFF
-Zd Adds line number information in the object file (for debugging) and causes
sub-invoke of the assembler ias. OFF
-Ze Enables Microsoft* Visual C++* compiler language extensions.
ON
-Zg Enable the generation of function prototypes. OFF
-Zi, -Z7 Produce symbolic debug information in object file.
OFF
-ZI Same as -Zi
OFF
-Zl Disables embedding default libraries in object files.
OFF
-Zp{1|2|4|8|16} Specifies the strictest alignment constraint for structure and
union types as one of the following: 1, 2, 4, 8, or 16 (default) bytes.
OFF
-Zs Checks the syntax of a program and stops the compilation process after the C
or C++ source files and preprocessed source files have been parsed. Generates no
code and produces no output files. Warnings and messages appear on stderr.
OFF
-Z7, -Zi Produce symbolic debug information in object file
OFF
This page took 0 seconds to execute
Last modified: Thu, 15 Apr 21 08:11:13 -0700
Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.