do not redefine the _gnutls_x86_cpuid_s symbol
[gnutls:gnutls.git] / lib / accelerated / x86 / x86.h
1 /*
2  * Copyright (C) 2011-2012 Free Software Foundation, Inc.
3  *
4  * Author: Nikos Mavrogiannopoulos
5  *
6  * This file is part of GnuTLS.
7  *
8  * The GnuTLS is free software; you can redistribute it and/or
9  * modify it under the terms of the GNU Lesser General Public License
10  * as published by the Free Software Foundation; either version 2.1 of
11  * the License, or (at your option) any later version.
12  *
13  * This library is distributed in the hope that it will be useful, but
14  * WITHOUT ANY WARRANTY; without even the implied warranty of
15  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
16  * Lesser General Public License for more details.
17  *
18  * You should have received a copy of the GNU Lesser General Public License
19  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
20  *
21  */
22
23 #include <config.h>
24
25 extern unsigned int _gnutls_x86_cpuid_s[4];
26
27 #if defined(ASM_X86)
28
29 void gnutls_cpuid(unsigned int func, unsigned int *ax, unsigned int *bx,
30                   unsigned int *cx, unsigned int *dx);
31
32 #ifdef ASM_X86_32
33 unsigned int gnutls_have_cpuid(void);
34 #else
35 #define gnutls_have_cpuid() 1
36 #endif                          /* ASM_X86_32 */
37
38 #define NN_HASH(name, update_func, digest_func, NAME) { \
39  #name,                                         \
40  sizeof(struct name##_ctx),                     \
41  NAME##_DIGEST_SIZE,                            \
42  NAME##_DATA_SIZE,                              \
43  (nettle_hash_init_func *) name##_init,         \
44  (nettle_hash_update_func *) update_func,       \
45  (nettle_hash_digest_func *) digest_func        \
46
47
48 #endif