opensslconf-mips.h revision 210843
1/* $FreeBSD: head/secure/lib/libcrypto/opensslconf-mips.h 210843 2010-08-04 10:46:17Z jchandra $ */ 2/* opensslconf.h */ 3/* WARNING: Generated automatically from opensslconf.h.in by Configure. */ 4 5/* OpenSSL was configured with the following options: */ 6#ifndef OPENSSL_DOING_MAKEDEPEND 7 8/* Disabled by default in OpenSSL 0.9.8. */ 9#ifndef OPENSSL_NO_CAMELLIA 10# define OPENSSL_NO_CAMELLIA 11#endif 12/* Disabled by default in OpenSSL 0.9.8. */ 13#ifndef OPENSSL_NO_CMS 14# define OPENSSL_NO_CMS 15#endif 16/* Disabled by default in OpenSSL 0.9.8. */ 17#ifndef OPENSSL_NO_SEED 18# define OPENSSL_NO_SEED 19#endif 20/* jpake is marked experimental in OpenSSL 0.9.8. */ 21#ifndef OPENSSL_NO_JPAKE 22# define OPENSSL_NO_JPAKE 23#endif 24/* libgmp is not in the FreeBSD base system. */ 25#ifndef OPENSSL_NO_GMP 26# define OPENSSL_NO_GMP 27#endif 28/* The Kerberos 5 support is MIT-specific. */ 29#ifndef OPENSSL_NO_KRB5 30# define OPENSSL_NO_KRB5 31#endif 32 33#endif /* OPENSSL_DOING_MAKEDEPEND */ 34#ifndef OPENSSL_THREADS 35# define OPENSSL_THREADS 36#endif 37#ifndef OPENSSL_NO_STATIC_ENGINE 38# define OPENSSL_NO_STATIC_ENGINE 39#endif 40 41/* The OPENSSL_NO_* macros are also defined as NO_* if the application 42 asks for it. This is a transient feature that is provided for those 43 who haven't had the time to do the appropriate changes in their 44 applications. */ 45#ifdef OPENSSL_ALGORITHM_DEFINES 46# if defined(OPENSSL_NO_GMP) && !defined(NO_GMP) 47# define NO_GMP 48# endif 49# if defined(OPENSSL_NO_KRB5) && !defined(NO_KRB5) 50# define NO_KRB5 51# endif 52# endif 53#ifdef OPENSSL_OTHER_DEFINES 54# ifndef NO_ASM 55# define NO_ASM 56# endif 57#endif 58 59/* crypto/opensslconf.h.in */ 60 61/* Generate 80386 code? */ 62#undef I386_ONLY 63 64#if !(defined(VMS) || defined(__VMS)) /* VMS uses logical names instead */ 65#if defined(HEADER_CRYPTLIB_H) && !defined(OPENSSLDIR) 66#define ENGINESDIR "/usr/lib/engines" 67#define OPENSSLDIR "/etc/ssl" 68#endif 69#endif 70 71#undef OPENSSL_UNISTD 72#define OPENSSL_UNISTD <unistd.h> 73 74#undef OPENSSL_EXPORT_VAR_AS_FUNCTION 75 76#if defined(HEADER_IDEA_H) && !defined(IDEA_INT) 77#define IDEA_INT unsigned int 78#endif 79 80#if defined(HEADER_MD2_H) && !defined(MD2_INT) 81#define MD2_INT unsigned int 82#endif 83 84#if defined(HEADER_RC2_H) && !defined(RC2_INT) 85/* I need to put in a mod for the alpha - eay */ 86#define RC2_INT unsigned int 87#endif 88 89#if defined(HEADER_RC4_H) 90#if !defined(RC4_INT) 91/* using int types make the structure larger but make the code faster 92 * on most boxes I have tested - up to %20 faster. */ 93/* 94 * I don't know what does "most" mean, but declaring "int" is a must on: 95 * - Intel P6 because partial register stalls are very expensive; 96 * - elder Alpha because it lacks byte load/store instructions; 97 */ 98#define RC4_INT unsigned int 99#endif 100#if !defined(RC4_CHUNK) 101/* 102 * This enables code handling data aligned at natural CPU word 103 * boundary. See crypto/rc4/rc4_enc.c for further details. 104 */ 105#undef RC4_CHUNK 106#endif 107#endif 108 109#if (defined(HEADER_NEW_DES_H) || defined(HEADER_DES_H)) && !defined(DES_LONG) 110/* If this is set to 'unsigned int' on a DEC Alpha, this gives about a 111 * %20 speed up (longs are 8 bytes, int's are 4). */ 112#ifndef DES_LONG 113#ifdef __mips_n64 114#define DES_LONG unsigned int 115#else 116#define DES_LONG unsigned long 117#endif 118#endif 119#endif 120 121#if defined(HEADER_BN_H) && !defined(CONFIG_HEADER_BN_H) 122#define CONFIG_HEADER_BN_H 123#ifdef __mips_n64 124#undef BN_LLONG 125#else 126#define BN_LLONG 127#endif 128 129/* Should we define BN_DIV2W here? */ 130 131/* Only one for the following should be defined */ 132/* The prime number generation stuff may not work when 133 * EIGHT_BIT but I don't care since I've only used this mode 134 * for debuging the bignum libraries */ 135#ifdef __mips_n64 136#define SIXTY_FOUR_BIT_LONG 137#undef SIXTY_FOUR_BIT 138#undef THIRTY_TWO_BIT 139#else 140#undef SIXTY_FOUR_BIT_LONG 141#undef SIXTY_FOUR_BIT 142#define THIRTY_TWO_BIT 143#endif 144#undef SIXTEEN_BIT 145#undef EIGHT_BIT 146#endif 147 148#if defined(HEADER_RC4_LOCL_H) && !defined(CONFIG_HEADER_RC4_LOCL_H) 149#define CONFIG_HEADER_RC4_LOCL_H 150/* if this is defined data[i] is used instead of *data, this is a %20 151 * speedup on x86 */ 152#define RC4_INDEX 153#endif 154 155#if defined(HEADER_BF_LOCL_H) && !defined(CONFIG_HEADER_BF_LOCL_H) 156#define CONFIG_HEADER_BF_LOCL_H 157#undef BF_PTR 158#endif /* HEADER_BF_LOCL_H */ 159 160#if defined(HEADER_DES_LOCL_H) && !defined(CONFIG_HEADER_DES_LOCL_H) 161#define CONFIG_HEADER_DES_LOCL_H 162#ifndef DES_DEFAULT_OPTIONS 163/* the following is tweaked from a config script, that is why it is a 164 * protected undef/define */ 165#ifndef DES_PTR 166#define DES_PTR 167#endif 168 169/* This helps C compiler generate the correct code for multiple functional 170 * units. It reduces register dependancies at the expense of 2 more 171 * registers */ 172#ifndef DES_RISC1 173#define DES_RISC1 174#endif 175 176#ifndef DES_RISC2 177#undef DES_RISC2 178#endif 179 180#if defined(DES_RISC1) && defined(DES_RISC2) 181YOU SHOULD NOT HAVE BOTH DES_RISC1 AND DES_RISC2 DEFINED!!!!! 182#endif 183 184/* Unroll the inner loop, this sometimes helps, sometimes hinders. 185 * Very mucy CPU dependant */ 186#ifndef DES_UNROLL 187#define DES_UNROLL 188#endif 189 190/* These default values were supplied by 191 * Peter Gutman <pgut001@cs.auckland.ac.nz> 192 * They are only used if nothing else has been defined */ 193#if !defined(DES_PTR) && !defined(DES_RISC1) && !defined(DES_RISC2) && !defined(DES_UNROLL) 194/* Special defines which change the way the code is built depending on the 195 CPU and OS. For SGI machines you can use _MIPS_SZLONG (32 or 64) to find 196 even newer MIPS CPU's, but at the moment one size fits all for 197 optimization options. Older Sparc's work better with only UNROLL, but 198 there's no way to tell at compile time what it is you're running on */ 199 200#if defined( sun ) /* Newer Sparc's */ 201# define DES_PTR 202# define DES_RISC1 203# define DES_UNROLL 204#elif defined( __ultrix ) /* Older MIPS */ 205# define DES_PTR 206# define DES_RISC2 207# define DES_UNROLL 208#elif defined( __osf1__ ) /* Alpha */ 209# define DES_PTR 210# define DES_RISC2 211#elif defined ( _AIX ) /* RS6000 */ 212 /* Unknown */ 213#elif defined( __hpux ) /* HP-PA */ 214 /* Unknown */ 215#elif defined( __aux ) /* 68K */ 216 /* Unknown */ 217#elif defined( __dgux ) /* 88K (but P6 in latest boxes) */ 218# define DES_UNROLL 219#elif defined( __sgi ) /* Newer MIPS */ 220# define DES_PTR 221# define DES_RISC2 222# define DES_UNROLL 223#elif defined( i386 ) /* x86 boxes, should be gcc */ 224# define DES_PTR 225# define DES_RISC1 226# define DES_UNROLL 227#endif /* Systems-specific speed defines */ 228#endif 229 230#endif /* DES_DEFAULT_OPTIONS */ 231#endif /* HEADER_DES_LOCL_H */ 232