Skip to content

Commit 2573efc

Browse files
shigekiMyles Borins
authored andcommitted
deps: update openssl asm and asm_obsolete files
Regenerate asm files with Makefile and CC=gcc and ASM=gcc where gcc-5.4.0. Also asm files in asm_obsolete dir to support old compiler and assembler are regenerated without CC and ASM envs. PR-URL: #8714 Reviewed-By: Fedor Indutny <fedor@indutny.com>
1 parent 67751f3 commit 2573efc

File tree

32 files changed

+2040
-1581
lines changed

32 files changed

+2040
-1581
lines changed

deps/openssl/asm/arm-void-gas/aes/bsaes-armv7.S

Lines changed: 3 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1816,8 +1816,6 @@ bsaes_xts_encrypt:
18161816
b .Lxts_enc_done
18171817
.align 4
18181818
.Lxts_enc_6:
1819-
vst1.64 {q14}, [r0,:128] @ next round tweak
1820-
18211819
veor q4, q4, q12
18221820
#ifndef BSAES_ASM_EXTENDED_KEY
18231821
add r4, sp, #0x90 @ pass key schedule
@@ -1853,8 +1851,6 @@ bsaes_xts_encrypt:
18531851

18541852
.align 5
18551853
.Lxts_enc_5:
1856-
vst1.64 {q13}, [r0,:128] @ next round tweak
1857-
18581854
veor q3, q3, q11
18591855
#ifndef BSAES_ASM_EXTENDED_KEY
18601856
add r4, sp, #0x90 @ pass key schedule
@@ -1883,8 +1879,6 @@ bsaes_xts_encrypt:
18831879
b .Lxts_enc_done
18841880
.align 4
18851881
.Lxts_enc_4:
1886-
vst1.64 {q12}, [r0,:128] @ next round tweak
1887-
18881882
veor q2, q2, q10
18891883
#ifndef BSAES_ASM_EXTENDED_KEY
18901884
add r4, sp, #0x90 @ pass key schedule
@@ -1910,8 +1904,6 @@ bsaes_xts_encrypt:
19101904
b .Lxts_enc_done
19111905
.align 4
19121906
.Lxts_enc_3:
1913-
vst1.64 {q11}, [r0,:128] @ next round tweak
1914-
19151907
veor q1, q1, q9
19161908
#ifndef BSAES_ASM_EXTENDED_KEY
19171909
add r4, sp, #0x90 @ pass key schedule
@@ -1936,8 +1928,6 @@ bsaes_xts_encrypt:
19361928
b .Lxts_enc_done
19371929
.align 4
19381930
.Lxts_enc_2:
1939-
vst1.64 {q10}, [r0,:128] @ next round tweak
1940-
19411931
veor q0, q0, q8
19421932
#ifndef BSAES_ASM_EXTENDED_KEY
19431933
add r4, sp, #0x90 @ pass key schedule
@@ -1960,7 +1950,7 @@ bsaes_xts_encrypt:
19601950
.align 4
19611951
.Lxts_enc_1:
19621952
mov r0, sp
1963-
veor q0, q8
1953+
veor q0, q0, q8
19641954
mov r1, sp
19651955
vst1.8 {q0}, [sp,:128]
19661956
mov r2, r10
@@ -2346,8 +2336,6 @@ bsaes_xts_decrypt:
23462336
b .Lxts_dec_done
23472337
.align 4
23482338
.Lxts_dec_5:
2349-
vst1.64 {q13}, [r0,:128] @ next round tweak
2350-
23512339
veor q3, q3, q11
23522340
#ifndef BSAES_ASM_EXTENDED_KEY
23532341
add r4, sp, #0x90 @ pass key schedule
@@ -2376,8 +2364,6 @@ bsaes_xts_decrypt:
23762364
b .Lxts_dec_done
23772365
.align 4
23782366
.Lxts_dec_4:
2379-
vst1.64 {q12}, [r0,:128] @ next round tweak
2380-
23812367
veor q2, q2, q10
23822368
#ifndef BSAES_ASM_EXTENDED_KEY
23832369
add r4, sp, #0x90 @ pass key schedule
@@ -2403,8 +2389,6 @@ bsaes_xts_decrypt:
24032389
b .Lxts_dec_done
24042390
.align 4
24052391
.Lxts_dec_3:
2406-
vst1.64 {q11}, [r0,:128] @ next round tweak
2407-
24082392
veor q1, q1, q9
24092393
#ifndef BSAES_ASM_EXTENDED_KEY
24102394
add r4, sp, #0x90 @ pass key schedule
@@ -2429,8 +2413,6 @@ bsaes_xts_decrypt:
24292413
b .Lxts_dec_done
24302414
.align 4
24312415
.Lxts_dec_2:
2432-
vst1.64 {q10}, [r0,:128] @ next round tweak
2433-
24342416
veor q0, q0, q8
24352417
#ifndef BSAES_ASM_EXTENDED_KEY
24362418
add r4, sp, #0x90 @ pass key schedule
@@ -2453,12 +2435,12 @@ bsaes_xts_decrypt:
24532435
.align 4
24542436
.Lxts_dec_1:
24552437
mov r0, sp
2456-
veor q0, q8
2438+
veor q0, q0, q8
24572439
mov r1, sp
24582440
vst1.8 {q0}, [sp,:128]
2441+
mov r5, r2 @ preserve magic
24592442
mov r2, r10
24602443
mov r4, r3 @ preserve fp
2461-
mov r5, r2 @ preserve magic
24622444

24632445
bl AES_decrypt
24642446

deps/openssl/asm/x64-elf-gas/bn/x86_64-mont.s

Lines changed: 95 additions & 60 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,8 @@
66
.type bn_mul_mont,@function
77
.align 16
88
bn_mul_mont:
9+
movl %r9d,%r9d
10+
movq %rsp,%rax
911
testl $3,%r9d
1012
jnz .Lmul_enter
1113
cmpl $8,%r9d
@@ -26,29 +28,36 @@ bn_mul_mont:
2628
pushq %r14
2729
pushq %r15
2830

29-
movl %r9d,%r9d
30-
leaq 2(%r9),%r10
31+
negq %r9
3132
movq %rsp,%r11
32-
negq %r10
33-
leaq (%rsp,%r10,8),%rsp
34-
andq $-1024,%rsp
33+
leaq -16(%rsp,%r9,8),%r10
34+
negq %r9
35+
andq $-1024,%r10
3536

36-
movq %r11,8(%rsp,%r9,8)
37-
.Lmul_body:
3837

3938

4039

4140

4241

4342

44-
subq %rsp,%r11
43+
subq %r10,%r11
4544
andq $-4096,%r11
45+
leaq (%r10,%r11,1),%rsp
46+
movq (%rsp),%r11
47+
cmpq %r10,%rsp
48+
ja .Lmul_page_walk
49+
jmp .Lmul_page_walk_done
50+
51+
.align 16
4652
.Lmul_page_walk:
47-
movq (%rsp,%r11,1),%r10
48-
subq $4096,%r11
49-
.byte 0x66,0x2e
50-
jnc .Lmul_page_walk
53+
leaq -4096(%rsp),%rsp
54+
movq (%rsp),%r11
55+
cmpq %r10,%rsp
56+
ja .Lmul_page_walk
57+
.Lmul_page_walk_done:
5158

59+
movq %rax,8(%rsp,%r9,8)
60+
.Lmul_body:
5261
movq %rdx,%r12
5362
movq (%r8),%r8
5463
movq (%r12),%rbx
@@ -216,19 +225,21 @@ bn_mul_mont:
216225

217226
movq 8(%rsp,%r9,8),%rsi
218227
movq $1,%rax
219-
movq (%rsi),%r15
220-
movq 8(%rsi),%r14
221-
movq 16(%rsi),%r13
222-
movq 24(%rsi),%r12
223-
movq 32(%rsi),%rbp
224-
movq 40(%rsi),%rbx
225-
leaq 48(%rsi),%rsp
228+
movq -48(%rsi),%r15
229+
movq -40(%rsi),%r14
230+
movq -32(%rsi),%r13
231+
movq -24(%rsi),%r12
232+
movq -16(%rsi),%rbp
233+
movq -8(%rsi),%rbx
234+
leaq (%rsi),%rsp
226235
.Lmul_epilogue:
227236
.byte 0xf3,0xc3
228237
.size bn_mul_mont,.-bn_mul_mont
229238
.type bn_mul4x_mont,@function
230239
.align 16
231240
bn_mul4x_mont:
241+
movl %r9d,%r9d
242+
movq %rsp,%rax
232243
.Lmul4x_enter:
233244
andl $0x80100,%r11d
234245
cmpl $0x80100,%r11d
@@ -240,23 +251,29 @@ bn_mul4x_mont:
240251
pushq %r14
241252
pushq %r15
242253

243-
movl %r9d,%r9d
244-
leaq 4(%r9),%r10
254+
negq %r9
245255
movq %rsp,%r11
246-
negq %r10
247-
leaq (%rsp,%r10,8),%rsp
248-
andq $-1024,%rsp
256+
leaq -32(%rsp,%r9,8),%r10
257+
negq %r9
258+
andq $-1024,%r10
249259

250-
movq %r11,8(%rsp,%r9,8)
251-
.Lmul4x_body:
252-
subq %rsp,%r11
260+
subq %r10,%r11
253261
andq $-4096,%r11
262+
leaq (%r10,%r11,1),%rsp
263+
movq (%rsp),%r11
264+
cmpq %r10,%rsp
265+
ja .Lmul4x_page_walk
266+
jmp .Lmul4x_page_walk_done
267+
254268
.Lmul4x_page_walk:
255-
movq (%rsp,%r11,1),%r10
256-
subq $4096,%r11
257-
.byte 0x2e
258-
jnc .Lmul4x_page_walk
269+
leaq -4096(%rsp),%rsp
270+
movq (%rsp),%r11
271+
cmpq %r10,%rsp
272+
ja .Lmul4x_page_walk
273+
.Lmul4x_page_walk_done:
259274

275+
movq %rax,8(%rsp,%r9,8)
276+
.Lmul4x_body:
260277
movq %rdi,16(%rsp,%r9,8)
261278
movq %rdx,%r12
262279
movq (%r8),%r8
@@ -625,13 +642,13 @@ bn_mul4x_mont:
625642
movdqu %xmm2,16(%rdi,%r14,1)
626643
movq 8(%rsp,%r9,8),%rsi
627644
movq $1,%rax
628-
movq (%rsi),%r15
629-
movq 8(%rsi),%r14
630-
movq 16(%rsi),%r13
631-
movq 24(%rsi),%r12
632-
movq 32(%rsi),%rbp
633-
movq 40(%rsi),%rbx
634-
leaq 48(%rsi),%rsp
645+
movq -48(%rsi),%r15
646+
movq -40(%rsi),%r14
647+
movq -32(%rsi),%r13
648+
movq -24(%rsi),%r12
649+
movq -16(%rsi),%rbp
650+
movq -8(%rsi),%rbx
651+
leaq (%rsi),%rsp
635652
.Lmul4x_epilogue:
636653
.byte 0xf3,0xc3
637654
.size bn_mul4x_mont,.-bn_mul4x_mont
@@ -641,14 +658,15 @@ bn_mul4x_mont:
641658
.type bn_sqr8x_mont,@function
642659
.align 32
643660
bn_sqr8x_mont:
644-
.Lsqr8x_enter:
645661
movq %rsp,%rax
662+
.Lsqr8x_enter:
646663
pushq %rbx
647664
pushq %rbp
648665
pushq %r12
649666
pushq %r13
650667
pushq %r14
651668
pushq %r15
669+
.Lsqr8x_prologue:
652670

653671
movl %r9d,%r10d
654672
shll $3,%r9d
@@ -661,33 +679,42 @@ bn_sqr8x_mont:
661679

662680

663681
leaq -64(%rsp,%r9,2),%r11
682+
movq %rsp,%rbp
664683
movq (%r8),%r8
665684
subq %rsi,%r11
666685
andq $4095,%r11
667686
cmpq %r11,%r10
668687
jb .Lsqr8x_sp_alt
669-
subq %r11,%rsp
670-
leaq -64(%rsp,%r9,2),%rsp
688+
subq %r11,%rbp
689+
leaq -64(%rbp,%r9,2),%rbp
671690
jmp .Lsqr8x_sp_done
672691

673692
.align 32
674693
.Lsqr8x_sp_alt:
675694
leaq 4096-64(,%r9,2),%r10
676-
leaq -64(%rsp,%r9,2),%rsp
695+
leaq -64(%rbp,%r9,2),%rbp
677696
subq %r10,%r11
678697
movq $0,%r10
679698
cmovcq %r10,%r11
680-
subq %r11,%rsp
699+
subq %r11,%rbp
681700
.Lsqr8x_sp_done:
682-
andq $-64,%rsp
683-
movq %rax,%r11
684-
subq %rsp,%r11
701+
andq $-64,%rbp
702+
movq %rsp,%r11
703+
subq %rbp,%r11
685704
andq $-4096,%r11
705+
leaq (%r11,%rbp,1),%rsp
706+
movq (%rsp),%r10
707+
cmpq %rbp,%rsp
708+
ja .Lsqr8x_page_walk
709+
jmp .Lsqr8x_page_walk_done
710+
711+
.align 16
686712
.Lsqr8x_page_walk:
687-
movq (%rsp,%r11,1),%r10
688-
subq $4096,%r11
689-
.byte 0x2e
690-
jnc .Lsqr8x_page_walk
713+
leaq -4096(%rsp),%rsp
714+
movq (%rsp),%r10
715+
cmpq %rbp,%rsp
716+
ja .Lsqr8x_page_walk
717+
.Lsqr8x_page_walk_done:
691718

692719
movq %r9,%r10
693720
negq %r9
@@ -800,30 +827,38 @@ bn_sqr8x_mont:
800827
.type bn_mulx4x_mont,@function
801828
.align 32
802829
bn_mulx4x_mont:
803-
.Lmulx4x_enter:
804830
movq %rsp,%rax
831+
.Lmulx4x_enter:
805832
pushq %rbx
806833
pushq %rbp
807834
pushq %r12
808835
pushq %r13
809836
pushq %r14
810837
pushq %r15
838+
.Lmulx4x_prologue:
811839

812840
shll $3,%r9d
813-
.byte 0x67
814841
xorq %r10,%r10
815842
subq %r9,%r10
816843
movq (%r8),%r8
817-
leaq -72(%rsp,%r10,1),%rsp
818-
andq $-128,%rsp
819-
movq %rax,%r11
820-
subq %rsp,%r11
844+
leaq -72(%rsp,%r10,1),%rbp
845+
andq $-128,%rbp
846+
movq %rsp,%r11
847+
subq %rbp,%r11
821848
andq $-4096,%r11
849+
leaq (%r11,%rbp,1),%rsp
850+
movq (%rsp),%r10
851+
cmpq %rbp,%rsp
852+
ja .Lmulx4x_page_walk
853+
jmp .Lmulx4x_page_walk_done
854+
855+
.align 16
822856
.Lmulx4x_page_walk:
823-
movq (%rsp,%r11,1),%r10
824-
subq $4096,%r11
825-
.byte 0x66,0x2e
826-
jnc .Lmulx4x_page_walk
857+
leaq -4096(%rsp),%rsp
858+
movq (%rsp),%r10
859+
cmpq %rbp,%rsp
860+
ja .Lmulx4x_page_walk
861+
.Lmulx4x_page_walk_done:
827862

828863
leaq (%rdx,%r9,1),%r10
829864

0 commit comments

Comments
 (0)