00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00026 #ifndef _MPOPT_H
00027 #define _MPOPT_H
00028
00029 #if WIN32
00030 # if __MWERKS__ && __INTEL__
00031 # elif defined(_MSC_VER) && defined(_M_IX86)
00032 # define ASM_MPZERO
00033 # define ASM_MPFILL
00034 # define ASM_MPEVEN
00035 # define ASM_MPODD
00036 # define ASM_MPADDW
00037 # define ASM_MPSUBW
00038 # define ASM_MPADD
00039 # define ASM_MPSUB
00040 # define ASM_MPMULTWO
00041 # define ASM_MPDIVTWO
00042 # define ASM_MPSETMUL
00043 # define ASM_MPADDMUL
00044 # define ASM_MPADDSQRTRC
00045 # endif
00046 #endif
00047
00048 #if defined(__DECC)
00049 # if defined(OPTIMIZE_ALPHA)
00050 # define ASM_MPADD
00051 # define ASM_MPSUB
00052 # define ASM_MPSETMUL
00053 # define ASM_MPADDMUL
00054 # define ASM_MPADDSQRTRC
00055 # endif
00056 #endif
00057
00058 #if defined(__GNUC__)
00059 # if defined(OPTIMIZE_ALPHA)
00060 # define ASM_MPADD
00061 # define ASM_MPSUB
00062 # define ASM_MPSETMUL
00063 # define ASM_MPADDMUL
00064 # define ASM_MPADDSQRTRC
00065 # elif defined(OPTIMIZE_ARM)
00066 # define ASM_MPSETMUL
00067 # define ASM_MPADDMUL
00068 # define ASM_MPADDSQRTRC
00069 # elif defined(OPTIMIZE_I386) || defined(OPTIMIZE_I486) || defined(OPTIMIZE_I586) || defined(OPTIMIZE_I686)
00070 # define ASM_MPZERO
00071 # define ASM_MPFILL
00072 # define ASM_MPEVEN
00073 # define ASM_MPODD
00074 # define ASM_MPADD
00075 # define ASM_MPADDW
00076 # define ASM_MPSUB
00077 # define ASM_MPSUBW
00078 # define ASM_MPMULTWO
00079 # define ASM_MPDIVTWO
00080 # define ASM_MPSETMUL
00081 # define ASM_MPADDMUL
00082 # define ASM_MPADDSQRTRC
00083 # define ASM_MPPNDIV
00084 # elif defined(OPTIMIZE_IA64)
00085 # define ASM_MPZERO
00086 # define ASM_MPCOPY
00087 # define ASM_MPADD
00088 # define ASM_MPSUB
00089 # define ASM_MPMULTWO
00090 # define ASM_MPSETMUL
00091 # define ASM_MPADDMUL
00092 # elif defined(OPTIMIZE_M68K)
00093 # define ASM_MPADD
00094 # define ASM_MPSUB
00095 # define ASM_MPSETMUL
00096 # define ASM_MPADDMUL
00097 # define ASM_MPADDSQRTRC
00098 # elif defined(OPTIMIZE_POWERPC) || defined(OPTIMIZE_POWERPC64)
00099 # define ASM_MPSETMUL
00100 # define ASM_MPADD
00101 # define ASM_MPADDW
00102 # define ASM_MPSUB
00103 # define ASM_MPSUBW
00104 # define ASM_MPMULTWO
00105 # define ASM_MPADDMUL
00106 # define ASM_MPADDSQRTRC
00107 # elif defined(OPTIMIZE_S390X)
00108 # define ASM_MPSETMUL
00109 # define ASM_MPADDMUL
00110 # define ASM_MPADDSQRTRC
00111 # elif defined(OPTIMIZE_SPARCV8)
00112 # define ASM_MPSETMUL
00113 # define ASM_MPADDMUL
00114 # define ASM_MPADDSQRTRC
00115 # elif defined(OPTIMIZE_SPARCV8PLUS)
00116 # define ASM_MPADDW
00117 # define ASM_MPSUBW
00118 # define ASM_MPADD
00119 # define ASM_MPSUB
00120 # define ASM_MPMULTWO
00121 # define ASM_MPSETMUL
00122 # define ASM_MPADDMUL
00123 # define ASM_MPADDSQRTRC
00124 # elif defined(OPTIMIZE_X86_64)
00125 # define ASM_MPZERO
00126 # define ASM_MPFILL
00127 # define ASM_MPEVEN
00128 # define ASM_MPODD
00129 # define ASM_MPADD
00130 # define ASM_MPADDW
00131 # define ASM_MPSUB
00132 # define ASM_MPSUBW
00133 # define ASM_MPDIVTWO
00134 # define ASM_MPMULTWO
00135 # define ASM_MPSETMUL
00136 # define ASM_MPADDMUL
00137 # define ASM_MPADDSQRTRC
00138 # endif
00139 #endif
00140
00141 #if defined(__IBMC__)
00142 # if defined(OPTIMIZE_POWERPC) || defined(OPTIMIZE_POWERPC64)
00143 # define ASM_MPSETMUL
00144 # define ASM_MPADDW
00145 # define ASM_MPSUBW
00146 # define ASM_MPADD
00147 # define ASM_MPSUB
00148 # define ASM_MPMULTWO
00149 # define ASM_MPADDMUL
00150 # define ASM_MPADDSQRTRC
00151 # endif
00152 #endif
00153
00154 #if defined(__INTEL_COMPILER)
00155 # if defined(OPTIMIZE_I386) || defined(OPTIMIZE_I486) || defined(OPTIMIZE_I586) || defined(OPTIMIZE_I686)
00156 # define ASM_MPZERO
00157 # define ASM_MPFILL
00158 # define ASM_MPEVEN
00159 # define ASM_MPODD
00160 # define ASM_MPADDW
00161 # define ASM_MPSUBW
00162 # define ASM_MPADD
00163 # define ASM_MPSUB
00164 # define ASM_MPMULTWO
00165 # define ASM_MPDIVTWO
00166 # define ASM_MPSETMUL
00167 # define ASM_MPADDMUL
00168 # define ASM_MPADDSQRTRC
00169 # define ASM_MPPNDIV
00170 # endif
00171 #endif
00172
00173 #if defined(__SUNPRO_C) || defined(__SUNPRO_CC)
00174 # if defined(OPTIMIZE_SPARCV8)
00175 # define ASM_MPSETMUL
00176 # define ASM_MPADDMUL
00177 # define ASM_MPADDSQRTRC
00178 # elif defined(OPTIMIZE_SPARCV8PLUS)
00179 # define ASM_MPADDW
00180 # define ASM_MPSUBW
00181 # define ASM_MPADD
00182 # define ASM_MPSUB
00183 # define ASM_MPMULTWO
00184 # define ASM_MPSETMUL
00185 # define ASM_MPADDMUL
00186 # define ASM_MPADDSQRTRC
00187 # endif
00188 #endif
00189
00190 #endif