opensslconf-arm.h revision 162915
1202375Srdivacky/* $FreeBSD: head/secure/lib/libcrypto/opensslconf-arm.h 162915 2006-10-01 07:56:51Z simon $ */
2202375Srdivacky/* opensslconf.h */
3202375Srdivacky/* WARNING: Generated automatically from opensslconf.h.in by Configure. */
4202375Srdivacky
5202375Srdivacky/* OpenSSL was configured with the following options: */
6202375Srdivacky#ifndef OPENSSL_DOING_MAKEDEPEND
7202375Srdivacky
8202375Srdivacky/* Disabled by default in OpenSSL 0.9.8. */
9202375Srdivacky#ifndef OPENSSL_NO_CAMELLIA
10202375Srdivacky# define OPENSSL_NO_CAMELLIA
11202375Srdivacky#endif
12202375Srdivacky/* libgmp is not in the FreeBSD base system. */
13202375Srdivacky#ifndef OPENSSL_NO_GMP
14202375Srdivacky# define OPENSSL_NO_GMP
15226633Sdim#endif
16249423Sdim/* The Kerberos 5 support is MIT-specific. */
17249423Sdim#ifndef OPENSSL_NO_KRB5
18234353Sdim# define OPENSSL_NO_KRB5
19202375Srdivacky#endif
20202375Srdivacky
21202375Srdivacky#endif /* OPENSSL_DOING_MAKEDEPEND */
22202375Srdivacky#ifndef OPENSSL_THREADS
23202375Srdivacky# define OPENSSL_THREADS
24202375Srdivacky#endif
25202375Srdivacky#ifndef OPENSSL_NO_STATIC_ENGINE
26202375Srdivacky# define OPENSSL_NO_STATIC_ENGINE
27210299Sed#endif
28202375Srdivacky
29202375Srdivacky/* The OPENSSL_NO_* macros are also defined as NO_* if the application
30202375Srdivacky   asks for it.  This is a transient feature that is provided for those
31210299Sed   who haven't had the time to do the appropriate changes in their
32202375Srdivacky   applications.  */
33249423Sdim#ifdef OPENSSL_ALGORITHM_DEFINES
34202375Srdivacky# if defined(OPENSSL_NO_GMP) && !defined(NO_GMP)
35224145Sdim#  define NO_GMP
36224145Sdim# endif
37239462Sdim# if defined(OPENSSL_NO_KRB5) && !defined(NO_KRB5)
38224145Sdim#  define NO_KRB5
39224145Sdim# endif
40224145Sdim# endif
41224145Sdim#ifdef OPENSSL_OTHER_DEFINES
42224145Sdim# ifndef NO_ASM
43202375Srdivacky#  define NO_ASM
44202375Srdivacky# endif
45202375Srdivacky#endif
46210299Sed
47202375Srdivacky/* crypto/opensslconf.h.in */
48202375Srdivacky
49202375Srdivacky/* Generate 80386 code? */
50249423Sdim#undef I386_ONLY
51202375Srdivacky
52202375Srdivacky#if !(defined(VMS) || defined(__VMS)) /* VMS uses logical names instead */
53202375Srdivacky#if defined(HEADER_CRYPTLIB_H) && !defined(OPENSSLDIR)
54202375Srdivacky#define ENGINESDIR "/usr/lib/engines"
55202375Srdivacky#define OPENSSLDIR "/etc/ssl"
56202375Srdivacky#endif
57249423Sdim#endif
58202375Srdivacky
59249423Sdim#undef OPENSSL_UNISTD
60202375Srdivacky#define OPENSSL_UNISTD <unistd.h>
61202375Srdivacky
62249423Sdim#undef OPENSSL_EXPORT_VAR_AS_FUNCTION
63202375Srdivacky
64202375Srdivacky#if defined(HEADER_IDEA_H) && !defined(IDEA_INT)
65202375Srdivacky#define IDEA_INT unsigned int
66202375Srdivacky#endif
67202375Srdivacky
68202375Srdivacky#if defined(HEADER_MD2_H) && !defined(MD2_INT)
69202375Srdivacky#define MD2_INT unsigned int
70202375Srdivacky#endif
71202375Srdivacky
72202375Srdivacky#if defined(HEADER_RC2_H) && !defined(RC2_INT)
73202375Srdivacky/* I need to put in a mod for the alpha - eay */
74202375Srdivacky#define RC2_INT unsigned int
75202375Srdivacky#endif
76202375Srdivacky
77202375Srdivacky#if defined(HEADER_RC4_H)
78202375Srdivacky#if !defined(RC4_INT)
79202375Srdivacky/* using int types make the structure larger but make the code faster
80202375Srdivacky * on most boxes I have tested - up to %20 faster. */
81243830Sdim/*
82202375Srdivacky * I don't know what does "most" mean, but declaring "int" is a must on:
83202375Srdivacky * - Intel P6 because partial register stalls are very expensive;
84226633Sdim * - elder Alpha because it lacks byte load/store instructions;
85249423Sdim */
86202375Srdivacky#define RC4_INT unsigned int
87202375Srdivacky#endif
88202375Srdivacky#if !defined(RC4_CHUNK)
89202375Srdivacky/*
90226633Sdim * This enables code handling data aligned at natural CPU word
91226633Sdim * boundary. See crypto/rc4/rc4_enc.c for further details.
92202375Srdivacky */
93202375Srdivacky#undef RC4_CHUNK
94202375Srdivacky#endif
95202375Srdivacky#endif
96202375Srdivacky
97202375Srdivacky#if (defined(HEADER_NEW_DES_H) || defined(HEADER_DES_H)) && !defined(DES_LONG)
98202375Srdivacky/* If this is set to 'unsigned int' on a DEC Alpha, this gives about a
99202375Srdivacky * %20 speed up (longs are 8 bytes, int's are 4). */
100221345Sdim#ifndef DES_LONG
101221345Sdim#define DES_LONG unsigned long
102202375Srdivacky#endif
103202375Srdivacky#endif
104202375Srdivacky
105202375Srdivacky#if defined(HEADER_BN_H) && !defined(CONFIG_HEADER_BN_H)
106202375Srdivacky#define CONFIG_HEADER_BN_H
107249423Sdim#define BN_LLONG
108249423Sdim
109249423Sdim/* Should we define BN_DIV2W here? */
110249423Sdim
111249423Sdim/* Only one for the following should be defined */
112249423Sdim/* The prime number generation stuff may not work when
113202375Srdivacky * EIGHT_BIT but I don't care since I've only used this mode
114202375Srdivacky * for debuging the bignum libraries */
115202375Srdivacky#undef SIXTY_FOUR_BIT_LONG
116210299Sed#undef SIXTY_FOUR_BIT
117202375Srdivacky#define THIRTY_TWO_BIT
118202375Srdivacky#undef SIXTEEN_BIT
119249423Sdim#undef EIGHT_BIT
120202375Srdivacky#endif
121202375Srdivacky
122202375Srdivacky#if defined(HEADER_RC4_LOCL_H) && !defined(CONFIG_HEADER_RC4_LOCL_H)
123202375Srdivacky#define CONFIG_HEADER_RC4_LOCL_H
124202375Srdivacky/* if this is defined data[i] is used instead of *data, this is a %20
125202375Srdivacky * speedup on x86 */
126202375Srdivacky#define RC4_INDEX
127202375Srdivacky#endif
128202375Srdivacky
129202375Srdivacky#if defined(HEADER_BF_LOCL_H) && !defined(CONFIG_HEADER_BF_LOCL_H)
130210299Sed#define CONFIG_HEADER_BF_LOCL_H
131202375Srdivacky#undef BF_PTR
132226633Sdim#endif /* HEADER_BF_LOCL_H */
133202375Srdivacky
134249423Sdim#if defined(HEADER_DES_LOCL_H) && !defined(CONFIG_HEADER_DES_LOCL_H)
135210299Sed#define CONFIG_HEADER_DES_LOCL_H
136210299Sed#ifndef DES_DEFAULT_OPTIONS
137202375Srdivacky/* the following is tweaked from a config script, that is why it is a
138226633Sdim * protected undef/define */
139202375Srdivacky#ifndef DES_PTR
140249423Sdim#define DES_PTR
141202375Srdivacky#endif
142202375Srdivacky
143202375Srdivacky/* This helps C compiler generate the correct code for multiple functional
144249423Sdim * units.  It reduces register dependancies at the expense of 2 more
145202375Srdivacky * registers */
146202375Srdivacky#ifndef DES_RISC1
147202375Srdivacky#define DES_RISC1
148221345Sdim#endif
149202375Srdivacky
150202375Srdivacky#ifndef DES_RISC2
151202375Srdivacky#undef DES_RISC2
152223017Sdim#endif
153202375Srdivacky
154202375Srdivacky#if defined(DES_RISC1) && defined(DES_RISC2)
155202375SrdivackyYOU SHOULD NOT HAVE BOTH DES_RISC1 AND DES_RISC2 DEFINED!!!!!
156202375Srdivacky#endif
157249423Sdim
158202375Srdivacky/* Unroll the inner loop, this sometimes helps, sometimes hinders.
159202375Srdivacky * Very mucy CPU dependant */
160249423Sdim#ifndef DES_UNROLL
161202375Srdivacky#define DES_UNROLL
162202375Srdivacky#endif
163202375Srdivacky
164202375Srdivacky/* These default values were supplied by
165202375Srdivacky * Peter Gutman <pgut001@cs.auckland.ac.nz>
166234353Sdim * They are only used if nothing else has been defined */
167202375Srdivacky#if !defined(DES_PTR) && !defined(DES_RISC1) && !defined(DES_RISC2) && !defined(DES_UNROLL)
168202375Srdivacky/* Special defines which change the way the code is built depending on the
169202375Srdivacky   CPU and OS.  For SGI machines you can use _MIPS_SZLONG (32 or 64) to find
170202375Srdivacky   even newer MIPS CPU's, but at the moment one size fits all for
171202375Srdivacky   optimization options.  Older Sparc's work better with only UNROLL, but
172202375Srdivacky   there's no way to tell at compile time what it is you're running on */
173202375Srdivacky
174202375Srdivacky#if defined( sun )		/* Newer Sparc's */
175202375Srdivacky#  define DES_PTR
176202375Srdivacky#  define DES_RISC1
177202375Srdivacky#  define DES_UNROLL
178202375Srdivacky#elif defined( __ultrix )	/* Older MIPS */
179202375Srdivacky#  define DES_PTR
180202375Srdivacky#  define DES_RISC2
181202375Srdivacky#  define DES_UNROLL
182202375Srdivacky#elif defined( __osf1__ )	/* Alpha */
183202375Srdivacky#  define DES_PTR
184202375Srdivacky#  define DES_RISC2
185202375Srdivacky#elif defined ( _AIX )		/* RS6000 */
186202375Srdivacky  /* Unknown */
187202375Srdivacky#elif defined( __hpux )		/* HP-PA */
188202375Srdivacky  /* Unknown */
189202375Srdivacky#elif defined( __aux )		/* 68K */
190249423Sdim  /* Unknown */
191202375Srdivacky#elif defined( __dgux )		/* 88K (but P6 in latest boxes) */
192202375Srdivacky#  define DES_UNROLL
193202375Srdivacky#elif defined( __sgi )		/* Newer MIPS */
194202375Srdivacky#  define DES_PTR
195202375Srdivacky#  define DES_RISC2
196202375Srdivacky#  define DES_UNROLL
197202375Srdivacky#elif defined( i386 )		/* x86 boxes, should be gcc */
198202375Srdivacky#  define DES_PTR
199249423Sdim#  define DES_RISC1
200202375Srdivacky#  define DES_UNROLL
201202375Srdivacky#endif /* Systems-specific speed defines */
202202375Srdivacky#endif
203202375Srdivacky
204202375Srdivacky#endif /* DES_DEFAULT_OPTIONS */
205202375Srdivacky#endif /* HEADER_DES_LOCL_H */
206202375Srdivacky