/architecture

Syntax:

/architecture:keyword

The /architecture (/arch) option controls the types of processor-specific instructions generated for this program unit. The /arch:keyword option uses the same keywords as the /tune:keyword option.

All processors of a certain architecture type (ia32) implement a core set of instructions. Certain (more recent) processor versions include additional instruction extensions.

Whereas the /tune:keyword option is primarily used by certain higher-level optimizations for instruction scheduling purposes, the /arch:keyword option determines the type of machine-code instructions generated for the program unit being compiled.

In the visual development environment, specify the Generate Code For in the Code Generation Compiler Option Category.

For ia32 (Intel and AMD) 32-bit processor systems, the supported /arch keywords are:

Other processors (not listed) that have instruction-level compatibility with the processors listed above will have results similar to those processors.

For ia64 (64-bit) systems, specify either /arch:generic or /arch:host.

The following table shows the ia32 /arch:keywords and the systems that programs using these keywords can be used on:


keyword AMD
K6
AMD
K6_2
AMD
K6_III
AMD
Athlon
Intel
486
Intel
Pentium
Intel Pentium Pro and
Pentium II
Intel Pentium III Intel Pentium 4
generic  *  *  *  *  X  *  *  *  *
pn1  *  *  *  *  X  *  *  *
pn2  *  *  *  *  X  *  *
pn3  *  *  *  X  *
pn4    X
k6  X  *  *  *  *  *  *
k6_2  X  X  *  
k7  X  

Legend:* indicates supported combinations of keyword and processor type
X indicates the best code generation combination of keyword and processor type

Specifying /fast sets /arch:host.

For more information: