00001
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028 #ifndef _MP32OPT_H
00029 #define _MP32OPT_H
00030
00031 #ifdef __cplusplus
00032 extern "C" {
00033 #endif
00034
00035 #if WIN32
00036 # if __MWERKS__ && __INTEL__
00037 # define ASM_MP32ZERO
00038 # define ASM_MP32FILL
00039 # define ASM_MP32EVEN
00040 # define ASM_MP32ODD
00041 # define ASM_MP32ADDW
00042 # define ASM_MP32ADD
00043 # define ASM_MP32SUBW
00044 # define ASM_MP32SUB
00045 # define ASM_MP32SETMUL
00046 # define ASM_MP32ADDMUL
00047 # define ASM_MP32ADDSQRTRC
00048 # elif defined(_MSC_VER) && defined(_M_IX86)
00049 # define ASM_MP32ZERO
00050 # define ASM_MP32FILL
00051 # define ASM_MP32EVEN
00052 # define ASM_MP32ODD
00053 # define ASM_MP32ADDW
00054 # define ASM_MP32ADD
00055 # define ASM_MP32SUBW
00056 # define ASM_MP32SUB
00057 # define ASM_MP32DIVTWO
00058 # define ASM_MP32MULTWO
00059 # define ASM_MP32SETMUL
00060 # define ASM_MP32ADDMUL
00061 # define ASM_MP32ADDSQRTRC
00062 # endif
00063 #endif
00064
00065 #if defined(__GNUC__)
00066 # if defined(OPTIMIZE_ARM)
00067 # define ASM_MP32SETMUL
00068 # define ASM_MP32ADDMUL
00069 # endif
00070 # if defined(OPTIMIZE_I386) || defined(OPTIMIZE_I486) || defined(OPTIMIZE_I586) || defined(OPTIMIZE_I686)
00071 # define ASM_MP32ZERO
00072 # define ASM_MP32FILL
00073 # define ASM_MP32EVEN
00074 # define ASM_MP32ODD
00075 # define ASM_MP32ADDW
00076 # define ASM_MP32ADD
00077 # define ASM_MP32SUBW
00078 # define ASM_MP32SUB
00079 # define ASM_MP32DIVTWO
00080 # define ASM_MP32MULTWO
00081 # define ASM_MP32SETMUL
00082 # define ASM_MP32ADDMUL
00083 # define ASM_MP32ADDSQRTRC
00084 # endif
00085 # if defined(OPTIMIZE_IA64)
00086 # define ASM_MP32ZERO
00087 # define ASM_MP32COPY
00088 # define ASM_MP32ADD
00089 # define ASM_MP32SUB
00090 # undef ASM_MP32SETMUL
00091 # undef ASM_MP32ADDMUL
00092 # endif
00093 # if defined(OPTIMIZE_POWERPC)
00094 # define ASM_MP32ADDW
00095 # define ASM_MP32ADD
00096 # define ASM_MP32SUBW
00097 # define ASM_MP32SUB
00098 # define ASM_MP32MULTWO
00099 # define ASM_MP32SETMUL
00100 # define ASM_MP32ADDMUL
00101 # define ASM_MP32ADDSQRTRC
00102 # endif
00103 # if defined(OPTIMIZE_SPARCV8)
00104 # define ASM_MP32SETMUL
00105 # define ASM_MP32ADDMUL
00106 # define ASM_MP32ADDSQRTRC
00107 # endif
00108 # if defined(OPTIMIZE_SPARCV8PLUS) || defined(OPTIMIZE_SPARCV9)
00109 # define ASM_MP32ADDW
00110 # define ASM_MP32ADD
00111 # define ASM_MP32SUBW
00112 # define ASM_MP32SUB
00113 # define ASM_MP32MULTWO
00114 # define ASM_MP32SETMUL
00115 # define ASM_MP32ADDMUL
00116 # define ASM_MP32ADDSQRTRC
00117 # endif
00118 #endif
00119
00120 #if defined(__SUNPRO_C) || defined(__SUNPRO_CC)
00121 # if defined(OPTIMIZE_SPARCV8PLUS)
00122 # define ASM_MP32ADDW
00123 # define ASM_MP32ADD
00124 # define ASM_MP32SUBW
00125 # define ASM_MP32SUB
00126 # define ASM_MP32SETMUL
00127 # define ASM_MP32ADDMUL
00128 # define ASM_MP32ADDSQRTRC
00129 # endif
00130 # if defined(OPTIMIZE_I386) || defined(OPTIMIZE_I486) || defined(OPTIMIZE_I586) || defined(OPTIMIZE_I686)
00131 # define ASM_MP32ADDW
00132 # define ASM_MP32ADD
00133 # define ASM_MP32SUBW
00134 # define ASM_MP32SUB
00135 # define ASM_MP32MULTWO
00136 # define ASM_MP32SETMUL
00137 # define ASM_MP32ADDMUL
00138 # define ASM_MP32ADDSQRTRC
00139 # endif
00140 #endif
00141
00142 #ifdef __cplusplus
00143 }
00144 #endif
00145
00146 #endif