Fabcoin Core
0.16.2
P2P Digital Currency
Main Page
Related Pages
Modules
Namespaces
Classes
Files
Examples
File List
File Members
src
cuda
blake2
blake2-config.h
Go to the documentation of this file.
1
/*
2
BLAKE2 reference source code package - optimized C implementations
3
4
Written in 2012 by Samuel Neves <sneves@dei.uc.pt>
5
6
To the extent possible under law, the author(s) have dedicated all copyright
7
and related and neighboring rights to this software to the public domain
8
worldwide. This software is distributed without any warranty.
9
10
You should have received a copy of the CC0 Public Domain Dedication along with
11
this software. If not, see <http://creativecommons.org/publicdomain/zero/1.0/>.
12
*/
13
#pragma once
14
#ifndef __BLAKE2_CONFIG_H__
15
#define __BLAKE2_CONFIG_H__
16
17
// These don't work everywhere
18
#if (defined(__SSE2__) || defined(_M_AMD_64) || defined(_M_X64))
19
#define HAVE_SSE2
20
#endif
21
22
#if defined(__SSSE3__)
23
#define HAVE_SSSE3
24
#endif
25
26
#if defined(__SSE4_1__)
27
#define HAVE_SSE41
28
#endif
29
30
#if defined(__AVX__)
31
#define HAVE_AVX
32
#endif
33
34
#if defined(__XOP__)
35
#define HAVE_XOP
36
#endif
37
38
39
#ifdef HAVE_AVX2
40
#ifndef HAVE_AVX
41
#define HAVE_AVX
42
#endif
43
#endif
44
45
#ifdef HAVE_XOP
46
#ifndef HAVE_AVX
47
#define HAVE_AVX
48
#endif
49
#endif
50
51
#ifdef HAVE_AVX
52
#ifndef HAVE_SSE41
53
#define HAVE_SSE41
54
#endif
55
#endif
56
57
#ifdef HAVE_SSE41
58
#ifndef HAVE_SSSE3
59
#define HAVE_SSSE3
60
#endif
61
#endif
62
63
#ifdef HAVE_SSSE3
64
#define HAVE_SSE2
65
#endif
66
67
#if !defined(HAVE_SSE2)
68
69
#ifdef _MSC_VER
70
// enforce required stuff for now
71
#define HAVE_SSE2
72
//#define HAVE_SSSE3
73
#define HAVE_SSE41
74
#else
75
# error "This code requires at least SSE 4.1"
76
#endif
77
78
#endif
79
80
#endif
81
Generated on Mon Oct 22 2018 15:15:33 for Fabcoin Core by
1.8.11