The following table shows how to combine processor target and dispatch options to compile applications with different optimizations and exclusions.
Optimize exclusively for... |
...without excluding... |
|||||
---|---|---|---|---|---|---|
Intel |
Pentium Processor with MMX(TM) technology |
Pentium Pro Processor |
Pentium II Processor |
Pentium III Processor |
Pentium 4 Processor | |
Pentium Processor |
-tpp5 |
-tpp5 |
-tpp6 |
-tpp6 |
-tpp6 |
-tpp7 |
Pentium Processor with MMX(TM) technology |
N-A |
-tpp5, -xM |
-tpp6, -xM |
-tpp6, -xM |
-tpp6, -xM |
-tpp7, -xM |
Pentium Pro Processor |
N-A |
N-A |
-tpp6,-xi |
-tpp6,-xi |
-tpp6,-xi |
-tpp7,-xi |
Pentium II Processor |
N-A |
N-A |
N-A |
-tpp6,-xiM |
-tpp6,-xiM |
-tpp7,-xiM |
Pentium III Processor |
N-A |
N-A |
N-A |
N-A |
-tpp6,-xK |
-tpp7,-xK |
Pentium 4 Processor |
N-A |
N-A |
N-A |
N-A |
N-A |
-tpp7, -xW |
If you wanted your application to
always require the MMX(TM) technology extensions
use Pentium Pro processor extensions when the processor it is run on offers it
and to not use them when it does not
you could generate such an application with the following command line:
prompt>icc -O2 -xM -axi myprog.cpp
-xM above restricts the application to running on Pentium processors with MMX(TM) technology or later processors. If you wanted to enable the application to run on earlier generations of Intel 32-bit processors as well, you would use the following command line:
prompt>icc -O2 -axiM myprog.cpp
Note that this specifically optimized code will run only on processors that support both the i and M extensions.