digest-blake3 0.34.0 → 0.37.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile.lock +1 -1
- data/README.md +1 -1
- data/ext/digest/blake3/blake3.c +9 -4
- data/ext/digest/blake3/blake3.h +2 -0
- data/ext/digest/blake3/blake3_avx2_x86-64_unix.S +15 -0
- data/ext/digest/blake3/blake3_avx512_x86-64_unix.S +17 -1
- data/ext/digest/blake3/blake3_dispatch.c +25 -0
- data/ext/digest/blake3/blake3_impl.h +34 -0
- data/ext/digest/blake3/blake3_portable.c +1 -9
- data/ext/digest/blake3/blake3_sse2.c +565 -0
- data/ext/digest/blake3/blake3_sse2_x86-64_unix.S +2291 -0
- data/ext/digest/blake3/blake3_sse2_x86-64_windows_gnu.S +2332 -0
- data/ext/digest/blake3/blake3_sse2_x86-64_windows_msvc.asm +2350 -0
- data/ext/digest/blake3/blake3_sse41_x86-64_unix.S +17 -0
- data/ext/digest/blake3/extconf.rb +1 -0
- data/lib/digest/blake3/version.rb +1 -1
- metadata +6 -2
@@ -1,3 +1,17 @@
|
|
1
|
+
#if defined(__ELF__) && defined(__linux__)
|
2
|
+
.section .note.GNU-stack,"",%progbits
|
3
|
+
#endif
|
4
|
+
|
5
|
+
#if defined(__ELF__) && defined(__CET__) && defined(__has_include)
|
6
|
+
#if __has_include(<cet.h>)
|
7
|
+
#include <cet.h>
|
8
|
+
#endif
|
9
|
+
#endif
|
10
|
+
|
11
|
+
#if !defined(_CET_ENDBR)
|
12
|
+
#define _CET_ENDBR
|
13
|
+
#endif
|
14
|
+
|
1
15
|
.intel_syntax noprefix
|
2
16
|
.global blake3_hash_many_sse41
|
3
17
|
.global _blake3_hash_many_sse41
|
@@ -13,6 +27,7 @@
|
|
13
27
|
.p2align 6
|
14
28
|
_blake3_hash_many_sse41:
|
15
29
|
blake3_hash_many_sse41:
|
30
|
+
_CET_ENDBR
|
16
31
|
push r15
|
17
32
|
push r14
|
18
33
|
push r13
|
@@ -1774,6 +1789,7 @@ blake3_hash_many_sse41:
|
|
1774
1789
|
.p2align 6
|
1775
1790
|
blake3_compress_in_place_sse41:
|
1776
1791
|
_blake3_compress_in_place_sse41:
|
1792
|
+
_CET_ENDBR
|
1777
1793
|
movups xmm0, xmmword ptr [rdi]
|
1778
1794
|
movups xmm1, xmmword ptr [rdi+0x10]
|
1779
1795
|
movaps xmm2, xmmword ptr [BLAKE3_IV+rip]
|
@@ -1874,6 +1890,7 @@ _blake3_compress_in_place_sse41:
|
|
1874
1890
|
.p2align 6
|
1875
1891
|
blake3_compress_xof_sse41:
|
1876
1892
|
_blake3_compress_xof_sse41:
|
1893
|
+
_CET_ENDBR
|
1877
1894
|
movups xmm0, xmmword ptr [rdi]
|
1878
1895
|
movups xmm1, xmmword ptr [rdi+0x10]
|
1879
1896
|
movaps xmm2, xmmword ptr [BLAKE3_IV+rip]
|
@@ -34,6 +34,7 @@ def check_supported_flags(flags, obj_if_enabled, def_if_disabled)
|
|
34
34
|
end
|
35
35
|
end
|
36
36
|
|
37
|
+
check_supported_flags("-msse2", "blake3_sse2.o", "-DBLAKE3_NO_SSE2")
|
37
38
|
check_supported_flags("-msse4.1", "blake3_sse41.o", "-DBLAKE3_NO_SSE41")
|
38
39
|
check_supported_flags("-mavx2", "blake3_avx2.o", "-DBLAKE3_NO_AVX2")
|
39
40
|
check_supported_flags("-mavx512f -mavx512vl", "blake3_avx512.o", "-DBLAKE3_NO_AVX512")
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: digest-blake3
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.37.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Will Bryant
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-
|
11
|
+
date: 2020-10-12 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -85,6 +85,10 @@ files:
|
|
85
85
|
- ext/digest/blake3/blake3_neon.c
|
86
86
|
- ext/digest/blake3/blake3_portable.c
|
87
87
|
- ext/digest/blake3/blake3_ruby.c
|
88
|
+
- ext/digest/blake3/blake3_sse2.c
|
89
|
+
- ext/digest/blake3/blake3_sse2_x86-64_unix.S
|
90
|
+
- ext/digest/blake3/blake3_sse2_x86-64_windows_gnu.S
|
91
|
+
- ext/digest/blake3/blake3_sse2_x86-64_windows_msvc.asm
|
88
92
|
- ext/digest/blake3/blake3_sse41.c
|
89
93
|
- ext/digest/blake3/blake3_sse41_x86-64_unix.S
|
90
94
|
- ext/digest/blake3/blake3_sse41_x86-64_windows_gnu.S
|