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