mirror of
https://github.com/superseriousbusiness/gotosocial.git
synced 2025-10-28 19:02:26 -05:00
Bumps [github.com/minio/minio-go/v7](https://github.com/minio/minio-go) from 7.0.85 to 7.0.86. - [Release notes](https://github.com/minio/minio-go/releases) - [Commits](https://github.com/minio/minio-go/compare/v7.0.85...v7.0.86) --- updated-dependencies: - dependency-name: github.com/minio/minio-go/v7 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
155 lines
4.3 KiB
ArmAsm
155 lines
4.3 KiB
ArmAsm
// Copyright (c) 2025 Minio Inc. All rights reserved.
|
|
// Use of this source code is governed by a license that can be
|
|
// found in the LICENSE file.
|
|
|
|
#include "textflag.h"
|
|
|
|
TEXT ·updateAsm(SB), $0-40
|
|
MOVD crc+0(FP), R0 // checksum
|
|
MOVD p_base+8(FP), R1 // start pointer
|
|
MOVD p_len+16(FP), R2 // length of buffer
|
|
MOVD $·const(SB), R3 // constants
|
|
MVN R0, R0
|
|
LSR $7, R2, R2
|
|
CMP $1, R2
|
|
BLT skip128
|
|
|
|
FLDPQ (R1), (F0, F1)
|
|
FLDPQ 32(R1), (F2, F3)
|
|
FLDPQ 64(R1), (F4, F5)
|
|
FLDPQ 96(R1), (F6, F7)
|
|
FMOVD R0, F8
|
|
VMOVI $0, V9.B16
|
|
VMOV V9.D[0], V8.D[1]
|
|
VEOR V8.B16, V0.B16, V0.B16
|
|
CMP $1, R2
|
|
BEQ tail128
|
|
|
|
MOVD 112(R3), R4
|
|
MOVD 120(R3), R5
|
|
FMOVD R4, F8
|
|
VDUP R5, V9.D2
|
|
|
|
loop128:
|
|
ADD $128, R1, R1
|
|
SUB $1, R2, R2
|
|
VPMULL V0.D1, V8.D1, V10.Q1
|
|
VPMULL2 V0.D2, V9.D2, V0.Q1
|
|
FLDPQ (R1), (F11, F12)
|
|
VEOR3 V0.B16, V11.B16, V10.B16, V0.B16
|
|
VPMULL V1.D1, V8.D1, V10.Q1
|
|
VPMULL2 V1.D2, V9.D2, V1.Q1
|
|
VEOR3 V1.B16, V12.B16, V10.B16, V1.B16
|
|
VPMULL V2.D1, V8.D1, V10.Q1
|
|
VPMULL2 V2.D2, V9.D2, V2.Q1
|
|
FLDPQ 32(R1), (F11, F12)
|
|
VEOR3 V2.B16, V11.B16, V10.B16, V2.B16
|
|
VPMULL V3.D1, V8.D1, V10.Q1
|
|
VPMULL2 V3.D2, V9.D2, V3.Q1
|
|
VEOR3 V3.B16, V12.B16, V10.B16, V3.B16
|
|
VPMULL V4.D1, V8.D1, V10.Q1
|
|
VPMULL2 V4.D2, V9.D2, V4.Q1
|
|
FLDPQ 64(R1), (F11, F12)
|
|
VEOR3 V4.B16, V11.B16, V10.B16, V4.B16
|
|
VPMULL V5.D1, V8.D1, V10.Q1
|
|
VPMULL2 V5.D2, V9.D2, V5.Q1
|
|
VEOR3 V5.B16, V12.B16, V10.B16, V5.B16
|
|
VPMULL V6.D1, V8.D1, V10.Q1
|
|
VPMULL2 V6.D2, V9.D2, V6.Q1
|
|
FLDPQ 96(R1), (F11, F12)
|
|
VEOR3 V6.B16, V11.B16, V10.B16, V6.B16
|
|
VPMULL V7.D1, V8.D1, V10.Q1
|
|
VPMULL2 V7.D2, V9.D2, V7.Q1
|
|
VEOR3 V7.B16, V12.B16, V10.B16, V7.B16
|
|
CMP $1, R2
|
|
BHI loop128
|
|
|
|
tail128:
|
|
MOVD (R3), R4
|
|
FMOVD R4, F11
|
|
VPMULL V0.D1, V11.D1, V11.Q1
|
|
MOVD 8(R3), R4
|
|
VDUP R4, V12.D2
|
|
VPMULL2 V0.D2, V12.D2, V0.Q1
|
|
VEOR3 V0.B16, V7.B16, V11.B16, V7.B16
|
|
MOVD 16(R3), R4
|
|
FMOVD R4, F11
|
|
VPMULL V1.D1, V11.D1, V11.Q1
|
|
MOVD 24(R3), R4
|
|
VDUP R4, V12.D2
|
|
VPMULL2 V1.D2, V12.D2, V1.Q1
|
|
VEOR3 V1.B16, V11.B16, V7.B16, V1.B16
|
|
MOVD 32(R3), R4
|
|
FMOVD R4, F11
|
|
VPMULL V2.D1, V11.D1, V11.Q1
|
|
MOVD 40(R3), R4
|
|
VDUP R4, V12.D2
|
|
VPMULL2 V2.D2, V12.D2, V2.Q1
|
|
VEOR3 V2.B16, V11.B16, V1.B16, V2.B16
|
|
MOVD 48(R3), R4
|
|
FMOVD R4, F11
|
|
VPMULL V3.D1, V11.D1, V11.Q1
|
|
MOVD 56(R3), R4
|
|
VDUP R4, V12.D2
|
|
VPMULL2 V3.D2, V12.D2, V3.Q1
|
|
VEOR3 V3.B16, V11.B16, V2.B16, V3.B16
|
|
MOVD 64(R3), R4
|
|
FMOVD R4, F11
|
|
VPMULL V4.D1, V11.D1, V11.Q1
|
|
MOVD 72(R3), R4
|
|
VDUP R4, V12.D2
|
|
VPMULL2 V4.D2, V12.D2, V4.Q1
|
|
VEOR3 V4.B16, V11.B16, V3.B16, V4.B16
|
|
MOVD 80(R3), R4
|
|
FMOVD R4, F11
|
|
VPMULL V5.D1, V11.D1, V11.Q1
|
|
MOVD 88(R3), R4
|
|
VDUP R4, V12.D2
|
|
VPMULL2 V5.D2, V12.D2, V5.Q1
|
|
VEOR3 V5.B16, V11.B16, V4.B16, V5.B16
|
|
MOVD 96(R3), R4
|
|
FMOVD R4, F11
|
|
VPMULL V6.D1, V11.D1, V11.Q1
|
|
MOVD 104(R3), R4
|
|
VDUP R4, V12.D2
|
|
VPMULL2 V6.D2, V12.D2, V6.Q1
|
|
VEOR3 V6.B16, V11.B16, V5.B16, V6.B16
|
|
FMOVD R4, F5
|
|
VPMULL V6.D1, V5.D1, V5.Q1
|
|
VDUP V6.D[1], V6.D2
|
|
VEOR V5.B8, V6.B8, V6.B8
|
|
MOVD 128(R3), R4
|
|
FMOVD R4, F4
|
|
VPMULL V4.D1, V6.D1, V6.Q1
|
|
FMOVD F6, R4
|
|
MOVD 136(R3), R5
|
|
FMOVD R5, F4
|
|
VPMULL V4.D1, V6.D1, V6.Q1
|
|
VEOR V6.B16, V5.B16, V6.B16
|
|
VMOV V6.D[1], R5
|
|
EOR R4, R5, R0
|
|
|
|
skip128:
|
|
MVN R0, R0
|
|
MOVD R0, checksum+32(FP)
|
|
RET
|
|
|
|
DATA ·const+0x000(SB)/8, $0xd083dd594d96319d // K_959
|
|
DATA ·const+0x008(SB)/8, $0x946588403d4adcbc // K_895
|
|
DATA ·const+0x010(SB)/8, $0x3c255f5ebc414423 // K_831
|
|
DATA ·const+0x018(SB)/8, $0x34f5a24e22d66e90 // K_767
|
|
DATA ·const+0x020(SB)/8, $0x7b0ab10dd0f809fe // K_703
|
|
DATA ·const+0x028(SB)/8, $0x03363823e6e791e5 // K_639
|
|
DATA ·const+0x030(SB)/8, $0x0c32cdb31e18a84a // K_575
|
|
DATA ·const+0x038(SB)/8, $0x62242240ace5045a // K_511
|
|
DATA ·const+0x040(SB)/8, $0xbdd7ac0ee1a4a0f0 // K_447
|
|
DATA ·const+0x048(SB)/8, $0xa3ffdc1fe8e82a8b // K_383
|
|
DATA ·const+0x050(SB)/8, $0xb0bc2e589204f500 // K_319
|
|
DATA ·const+0x058(SB)/8, $0xe1e0bb9d45d7a44c // K_255
|
|
DATA ·const+0x060(SB)/8, $0xeadc41fd2ba3d420 // K_191
|
|
DATA ·const+0x068(SB)/8, $0x21e9761e252621ac // K_127
|
|
DATA ·const+0x070(SB)/8, $0xa1ca681e733f9c40 // K_1087
|
|
DATA ·const+0x078(SB)/8, $0x5f852fb61e8d92dc // K_1023
|
|
DATA ·const+0x080(SB)/8, $0x27ecfa329aef9f77 // MU
|
|
DATA ·const+0x088(SB)/8, $0x34d926535897936b // POLY
|
|
GLOBL ·const(SB), (NOPTR+RODATA), $144
|