None.
Specifies the processor architecture for which the code (instructions) should be generated.
.-pwr4------. >>- -q--arch--=--+-auto------+--------------------------------->< +-pwr5------+ +-pwr5x-----+ +-pwr6------+ +-pwr6e-----+ +-pwr7------+ +-pwr8------+ +-ppc-------+ +-ppc64v----+ +-ppc64-----+ +-ppcgr-----+ +-ppc64gr---+ +-ppc64grsq-+ '-ppc970----'
All PowerPC machines share a common set of instructions, but may also include additional instructions unique to a given processor or processor family. Using the -qarch option to target a specific architecture for the compilation results in code that may not run on other architectures, but provides the best performance for the selected architecture. If you want maximum performance on a specific architecture and will not be using the program on other architectures, use the appropriate architecture option. If you want to generate code that can run on more than one architecture, specify a -qarch suboption that supports a group of architectures. Table 1 shows the features supported by the different processor architectures and their representative -qarch suboptions:
Architecture | Graphics support | Square root support | 64-bit support | Vector processing support | Large page support |
---|---|---|---|---|---|
pwr4 | yes | yes | yes | no | yes |
pwr5 | yes | yes | yes | no | yes |
pwr5x | yes | yes | yes | no | yes |
ppc | yes | yes | yes | no | yes |
ppc64 | yes | yes | yes | no | yes |
ppc64gr | yes | yes | yes | no | yes |
ppc64grsq | yes | yes | yes | no | yes |
ppc64v | yes | yes | yes | VMX | yes |
ppc970 | yes | yes | yes | VMX | yes |
pwr6 | yes | yes | yes | VMX | yes |
pwr6e | yes | yes | yes | VMX | yes |
pwr7 | yes | yes | yes | VMX, VSX | yes |
pwr8 | yes | yes | yes | VMX, VSX | yes |
For any given -qarch setting, the compiler defaults to a specific, matching -qtune setting, which can provide additional performance improvements. Alternatively, if you specify -qarch with a group argument, you can specify -qtune as either auto or provide a specific architecture in the group. For detailed information on using -qarch and -qtune together, see -qtune.
For a given application program, make sure that you specify the same -qarch setting when you compile each of its source files. Although the linker and loader may detect object files that are compiled with incompatible -qarch settings, you should not rely on it.
See Macros related to architecture settings for a list of macros that are predefined by -qarch suboptions.
xlc -o testing myprogram.c -qarch=pwr7