|
20 | 20 | {$IF CompilerVersion < 21.0} |
21 | 21 | {$MESSAGE ERROR 'This Library requires Delphi 2010 or higher.'} |
22 | 22 | {$IFEND} |
23 | | - |
| 23 | + |
24 | 24 | {$DEFINE DELPHI} |
25 | 25 |
|
26 | 26 | {$DEFINITIONINFO ON} // Enable code browsing (Ctrl+Click) |
27 | 27 | {$STRINGCHECKS OFF} |
28 | 28 | {$WARN DUPLICATE_CTOR_DTOR OFF} |
29 | 29 |
|
30 | | - {$DEFINE HASHLIB_LITTLE_ENDIAN} |
31 | | - |
32 | | - {$IFDEF CPUARM} |
33 | | - {$DEFINE HASHLIB_REQUIRES_PROPER_ALIGNMENT} |
34 | | - {$ENDIF} |
35 | | - |
36 | 30 | {$DEFINE USE_UNROLLED_VARIANT} |
37 | 31 |
|
38 | 32 | {$IF CompilerVersion >= 25.0} |
|
43 | 37 | {$DEFINE HASHLIB_USE_PPL} // Use Parallel Programming Library |
44 | 38 | {$IFEND} |
45 | 39 |
|
46 | | - {============================== CPU Architecture ==============================} |
| 40 | + {============================= CPU Architecture =============================} |
| 41 | + |
| 42 | + {$DEFINE HASHLIB_LITTLE_ENDIAN} |
| 43 | + |
| 44 | + {$IFDEF CPUARM} |
| 45 | + {$DEFINE HASHLIB_REQUIRES_PROPER_ALIGNMENT} |
| 46 | + {$ENDIF} |
47 | 47 |
|
48 | | - {$IF DEFINED(CPU386)} |
| 48 | + {$IFDEF CPU386} |
49 | 49 | {$DEFINE HASHLIB_I386} |
50 | 50 | {$IFDEF MSWINDOWS} |
51 | 51 | {$DEFINE HASHLIB_I386_ASM} |
52 | 52 | {$ENDIF} |
53 | | - {$IFEND} |
| 53 | + {$ENDIF} |
54 | 54 |
|
55 | | - {$IF DEFINED(CPUX64)} |
| 55 | + {$IFDEF CPUX64} |
56 | 56 | {$DEFINE HASHLIB_X86_64} |
57 | 57 | {$IFDEF MSWINDOWS} |
58 | 58 | {$DEFINE HASHLIB_X86_64_ASM} |
59 | 59 | {$ENDIF} |
60 | | - {$IFEND} |
| 60 | + {$ENDIF} |
61 | 61 |
|
62 | 62 | {$IFDEF CPUARM32} |
63 | 63 | {$DEFINE HASHLIB_ARM32} |
|
67 | 67 | {$DEFINE HASHLIB_AARCH64} |
68 | 68 | {$ENDIF} |
69 | 69 |
|
70 | | - {================================= Target OS ==================================} |
| 70 | + {================================ Target OS =================================} |
71 | 71 |
|
72 | 72 | {$IFDEF MSWINDOWS} |
73 | 73 | {$DEFINE HASHLIB_MSWINDOWS} |
|
93 | 93 |
|
94 | 94 | {$ENDIF} |
95 | 95 |
|
| 96 | +{========================== Common Feature Detection ==========================} |
| 97 | + |
| 98 | +{$IF DEFINED(HASHLIB_LITTLE_ENDIAN) AND NOT DEFINED(HASHLIB_REQUIRES_PROPER_ALIGNMENT)} |
| 99 | + {$DEFINE HASHLIB_HAS_FAST_UNALIGNED_ACCESS_LE} |
| 100 | +{$IFEND} |
| 101 | + |
96 | 102 | {========================== Common Compiler Settings ==========================} |
97 | 103 |
|
98 | 104 | {$HINTS OFF} |
|
131 | 137 | // {$DEFINE HASHLIB_FORCE_SSSE3} |
132 | 138 |
|
133 | 139 | {$IF (DEFINED(HASHLIB_FORCE_SCALAR) AND DEFINED(HASHLIB_FORCE_SSE2)) |
134 | | - OR (DEFINED(HASHLIB_FORCE_SCALAR) AND DEFINED(HASHLIB_FORCE_SSSE3)) |
135 | | - OR (DEFINED(HASHLIB_FORCE_SSE2) AND DEFINED(HASHLIB_FORCE_SSSE3))} |
| 140 | + OR (DEFINED(HASHLIB_FORCE_SCALAR) AND DEFINED(HASHLIB_FORCE_SSSE3)) |
| 141 | + OR (DEFINED(HASHLIB_FORCE_SSE2) AND DEFINED(HASHLIB_FORCE_SSSE3))} |
136 | 142 | {$MESSAGE ERROR 'Only one HASHLIB_FORCE_* define may be enabled at a time.'} |
137 | 143 | {$IFEND} |
138 | 144 |
|
|
144 | 150 | // {$DEFINE HASHLIB_FORCE_SVE} |
145 | 151 |
|
146 | 152 | {$IF (DEFINED(HASHLIB_FORCE_SCALAR) AND DEFINED(HASHLIB_FORCE_NEON)) |
147 | | - OR (DEFINED(HASHLIB_FORCE_SCALAR) AND DEFINED(HASHLIB_FORCE_SVE)) |
148 | | - OR (DEFINED(HASHLIB_FORCE_NEON) AND DEFINED(HASHLIB_FORCE_SVE))} |
| 153 | + OR (DEFINED(HASHLIB_FORCE_SCALAR) AND DEFINED(HASHLIB_FORCE_SVE)) |
| 154 | + OR (DEFINED(HASHLIB_FORCE_NEON) AND DEFINED(HASHLIB_FORCE_SVE))} |
149 | 155 | {$MESSAGE ERROR 'Only one HASHLIB_FORCE_* define may be enabled at a time.'} |
150 | 156 | {$IFEND} |
151 | 157 |
|
|
0 commit comments