xref: /openbsd-src/lib/libcrypto/arch/alpha/opensslconf.h (revision 902bfdca5279bfeffc5b4c006292470a4b73c32a)
1 #include <openssl/opensslfeatures.h>
2 /* crypto/opensslconf.h.in */
3 
4 #if defined(HEADER_CRYPTO_LOCAL_H) && !defined(OPENSSLDIR)
5 #define OPENSSLDIR "/etc/ssl"
6 #endif
7 
8 #undef OPENSSL_EXPORT_VAR_AS_FUNCTION
9 
10 #if defined(HEADER_IDEA_H) && !defined(IDEA_INT)
11 #define IDEA_INT unsigned int
12 #endif
13 
14 #if defined(HEADER_MD2_H) && !defined(MD2_INT)
15 #define MD2_INT unsigned int
16 #endif
17 
18 #if defined(HEADER_RC2_H) && !defined(RC2_INT)
19 /* I need to put in a mod for the alpha - eay */
20 #define RC2_INT unsigned int
21 #endif
22 
23 #if defined(HEADER_RC4_H)
24 #if !defined(RC4_INT)
25 /* using int types make the structure larger but make the code faster
26  * on most boxes I have tested - up to %20 faster. */
27 /*
28  * I don't know what does "most" mean, but declaring "int" is a must on:
29  * - Intel P6 because partial register stalls are very expensive;
30  * - elder Alpha because it lacks byte load/store instructions;
31  */
32 #define RC4_INT unsigned int
33 #endif
34 #if !defined(RC4_CHUNK)
35 /*
36  * This enables code handling data aligned at natural CPU word
37  * boundary. See crypto/rc4/rc4_enc.c for further details.
38  */
39 #define RC4_CHUNK unsigned long
40 #endif
41 #endif
42 
43 #if (defined(HEADER_NEW_DES_H) || defined(HEADER_DES_H)) && !defined(DES_LONG)
44 /* If this is set to 'unsigned int' on a DEC Alpha, this gives about a
45  * %20 speed up (longs are 8 bytes, int's are 4). */
46 #ifndef DES_LONG
47 #define DES_LONG unsigned int
48 #endif
49 #endif
50 
51 #if defined(HEADER_BN_H) && !defined(CONFIG_HEADER_BN_H)
52 #define CONFIG_HEADER_BN_H
53 #undef BN_LLONG
54 
55 /* Should we define BN_DIV2W here? */
56 
57 /* Only one for the following should be defined */
58 /* The prime number generation stuff may not work when
59  * EIGHT_BIT but I don't care since I've only used this mode
60  * for debugging the bignum libraries */
61 #define SIXTY_FOUR_BIT_LONG
62 #undef SIXTY_FOUR_BIT
63 #undef THIRTY_TWO_BIT
64 #endif
65 
66 #if defined(HEADER_BF_LOCL_H) && !defined(CONFIG_HEADER_BF_LOCL_H)
67 #define CONFIG_HEADER_BF_LOCL_H
68 #define BF_PTR
69 #endif /* HEADER_BF_LOCL_H */
70 
71 #if defined(HEADER_DES_LOCL_H) && !defined(CONFIG_HEADER_DES_LOCL_H)
72 #define CONFIG_HEADER_DES_LOCL_H
73 #ifndef DES_DEFAULT_OPTIONS
74 /* the following is tweaked from a config script, that is why it is a
75  * protected undef/define */
76 #ifndef DES_PTR
77 #define DES_PTR
78 #endif
79 
80 /* This helps C compiler generate the correct code for multiple functional
81  * units.  It reduces register dependencies at the expense of 2 more
82  * registers */
83 #ifndef DES_RISC1
84 #undef DES_RISC1
85 #endif
86 
87 #ifndef DES_RISC2
88 #define DES_RISC2
89 #endif
90 
91 #if defined(DES_RISC1) && defined(DES_RISC2)
92 YOU SHOULD NOT HAVE BOTH DES_RISC1 AND DES_RISC2 DEFINED!!!!!
93 #endif
94 
95 /* Unroll the inner loop, this sometimes helps, sometimes hinders.
96  * Very much CPU dependent */
97 #ifndef DES_UNROLL
98 #undef DES_UNROLL
99 #endif
100 
101 /* These default values were supplied by
102  * Peter Gutman <pgut001@cs.auckland.ac.nz>
103  * They are only used if nothing else has been defined */
104 #if !defined(DES_PTR) && !defined(DES_RISC1) && !defined(DES_RISC2) && !defined(DES_UNROLL)
105 /* Special defines which change the way the code is built depending on the
106    CPU and OS.  For SGI machines you can use _MIPS_SZLONG (32 or 64) to find
107    even newer MIPS CPU's, but at the moment one size fits all for
108    optimization options.  Older Sparc's work better with only UNROLL, but
109    there's no way to tell at compile time what it is you're running on */
110 
111 #if defined( sun )		/* Newer Sparc's */
112 #  define DES_PTR
113 #  define DES_RISC1
114 #  define DES_UNROLL
115 #elif defined( __ultrix )	/* Older MIPS */
116 #  define DES_PTR
117 #  define DES_RISC2
118 #  define DES_UNROLL
119 #elif defined( __osf1__ )	/* Alpha */
120 #  define DES_PTR
121 #  define DES_RISC2
122 #elif defined ( _AIX )		/* RS6000 */
123   /* Unknown */
124 #elif defined( __hpux )		/* HP-PA */
125   /* Unknown */
126 #elif defined( __aux )		/* 68K */
127   /* Unknown */
128 #elif defined( __dgux )		/* 88K (but P6 in latest boxes) */
129 #  define DES_UNROLL
130 #elif defined( __sgi )		/* Newer MIPS */
131 #  define DES_PTR
132 #  define DES_RISC2
133 #  define DES_UNROLL
134 #elif defined(i386) || defined(__i386__)	/* x86 boxes, should be gcc */
135 #  define DES_PTR
136 #  define DES_RISC1
137 #  define DES_UNROLL
138 #endif /* Systems-specific speed defines */
139 #endif
140 
141 #endif /* DES_DEFAULT_OPTIONS */
142 #endif /* HEADER_DES_LOCL_H */
143