// Code generated by command: go run md5block_amd64_asm.go -out ../md5block_amd64.s -pkg md5. DO NOT EDIT.
//go:build !purego
#include "textflag.h"
// func block(dig *digest, p []byte)
TEXT ·block(SB), NOSPLIT, $8-32
MOVQ dig+0(FP), BP
MOVQ p_base+8(FP), SI
MOVQ p_len+16(FP), DX
SHRQ $0x06, DX
SHLQ $0x06, DX
LEAQ (SI)(DX*1), DI
MOVL (BP), AX
MOVL 4(BP), BX
MOVL 8(BP), CX
MOVL 12(BP), DX
MOVL $0xffffffff, R11
CMPQ SI, DI
JEQ end
loop:
MOVL AX, R12
MOVL BX, R13
MOVL CX, R14
MOVL DX, R15
MOVL (SI), R8
MOVL DX, R9
XORL CX, R9
ADDL $0xd76aa478, AX
ADDL R8, AX
ANDL BX, R9
XORL DX, R9
MOVL 4(SI), R8
ADDL R9, AX
ROLL $0x07, AX
MOVL CX, R9
ADDL BX, AX
XORL BX, R9
ADDL $0xe8c7b756, DX
ADDL R8, DX
ANDL AX, R9
XORL CX, R9
MOVL 8(SI), R8
ADDL R9, DX
ROLL $0x0c, DX
MOVL BX, R9
ADDL AX, DX
XORL AX, R9
ADDL $0x242070db, CX
ADDL R8, CX
ANDL DX, R9
XORL BX, R9
MOVL 12(SI), R8
ADDL R9, CX
ROLL $0x11, CX
MOVL AX, R9
ADDL DX, CX
XORL DX, R9
ADDL $0xc1bdceee, BX
ADDL R8, BX
ANDL CX, R9
XORL AX, R9
MOVL 16(SI), R8
ADDL R9, BX
ROLL $0x16, BX
MOVL DX, R9
ADDL CX, BX
XORL CX, R9
ADDL $0xf57c0faf, AX
ADDL R8, AX
ANDL BX, R9
XORL DX, R9
MOVL 20(SI), R8
ADDL R9, AX
ROLL $0x07, AX
MOVL CX, R9
ADDL BX, AX
XORL BX, R9
ADDL $0x4787c62a, DX
ADDL R8, DX
ANDL AX, R9
XORL CX, R9
MOVL 24(SI), R8
ADDL R9, DX
ROLL $0x0c, DX
MOVL BX, R9
ADDL AX, DX
XORL AX, R9
ADDL $0xa8304613, CX
ADDL R8, CX
ANDL DX, R9
XORL BX, R9
MOVL 28(SI), R8
ADDL R9, CX
ROLL $0x11, CX
MOVL AX, R9
ADDL DX, CX
XORL DX, R9
ADDL $0xfd469501, BX
ADDL R8, BX
ANDL CX, R9
XORL AX, R9
MOVL 32(SI), R8
ADDL R9, BX
ROLL $0x16, BX
MOVL DX, R9
ADDL CX, BX
XORL CX, R9
ADDL $0x698098d8, AX
ADDL R8, AX
ANDL BX, R9
XORL DX, R9
MOVL 36(SI), R8
ADDL R9, AX
ROLL $0x07, AX
MOVL CX, R9
ADDL BX, AX
XORL BX, R9
ADDL $0x8b44f7af, DX
ADDL R8, DX
ANDL AX, R9
XORL CX, R9
MOVL 40(SI), R8
ADDL R9, DX
ROLL $0x0c, DX
MOVL BX, R9
ADDL AX, DX
XORL AX, R9
ADDL $0xffff5bb1, CX
ADDL R8, CX
ANDL DX, R9
XORL BX, R9
MOVL 44(SI), R8
ADDL R9, CX
ROLL $0x11, CX
MOVL AX, R9
ADDL DX, CX
XORL DX, R9
ADDL $0x895cd7be, BX
ADDL R8, BX
ANDL CX, R9
XORL AX, R9
MOVL 48(SI), R8
ADDL R9, BX
ROLL $0x16, BX
MOVL DX, R9
ADDL CX, BX
XORL CX, R9
ADDL $0x6b901122, AX
ADDL R8, AX
ANDL BX, R9
XORL DX, R9
MOVL 52(SI), R8
ADDL R9, AX
ROLL $0x07, AX
MOVL CX, R9
ADDL BX, AX
XORL BX, R9
ADDL $0xfd987193, DX
ADDL R8, DX
ANDL AX, R9
XORL CX, R9
MOVL 56(SI), R8
ADDL R9, DX
ROLL $0x0c, DX
MOVL BX, R9
ADDL AX, DX
XORL AX, R9
ADDL $0xa679438e, CX
ADDL R8, CX
ANDL DX, R9
XORL BX, R9
MOVL 60(SI), R8
ADDL R9, CX
ROLL $0x11, CX
MOVL AX, R9
ADDL DX, CX
XORL DX, R9
ADDL $0x49b40821, BX
ADDL R8, BX
ANDL CX, R9
XORL AX, R9
MOVL 4(SI), R8
ADDL R9, BX
ROLL $0x16, BX
MOVL DX, R9
ADDL CX, BX
MOVL DX, R9
MOVL DX, R10
XORL R11, R9
ADDL $0xf61e2562, AX
ADDL R8, AX
ANDL BX, R10
ANDL CX, R9
MOVL 24(SI), R8
ADDL R9, AX
ADDL R10, AX
MOVL CX, R9
MOVL CX, R10
ROLL $0x05, AX
ADDL BX, AX
XORL R11, R9
ADDL $0xc040b340, DX
ADDL R8, DX
ANDL AX, R10
ANDL BX, R9
MOVL 44(SI), R8
ADDL R9, DX
ADDL R10, DX
MOVL BX, R9
MOVL BX, R10
ROLL $0x09, DX
ADDL AX, DX
XORL R11, R9
ADDL $0x265e5a51, CX
ADDL R8, CX
ANDL DX, R10
ANDL AX, R9
MOVL (SI), R8
ADDL R9, CX
ADDL R10, CX
MOVL AX, R9
MOVL AX, R10
ROLL $0x0e, CX
ADDL DX, CX
XORL R11, R9
ADDL $0xe9b6c7aa, BX
ADDL R8, BX
ANDL CX, R10
ANDL DX, R9
MOVL 20(SI), R8
ADDL R9, BX
ADDL R10, BX
MOVL DX, R9
MOVL DX, R10
ROLL $0x14, BX
ADDL CX, BX
XORL R11, R9
ADDL $0xd62f105d, AX
ADDL R8, AX
ANDL BX, R10
ANDL CX, R9
MOVL 40(SI), R8
ADDL R9, AX
ADDL R10, AX
MOVL CX, R9
MOVL CX, R10
ROLL $0x05, AX
ADDL BX, AX
XORL R11, R9
ADDL $0x02441453, DX
ADDL R8, DX
ANDL AX, R10
ANDL BX, R9
MOVL 60(SI), R8
ADDL R9, DX
ADDL R10, DX
MOVL BX, R9
MOVL BX, R10
ROLL $0x09, DX
ADDL AX, DX
XORL R11, R9
ADDL $0xd8a1e681, CX
ADDL R8, CX
ANDL DX, R10
ANDL AX, R9
MOVL 16(SI), R8
ADDL R9, CX
ADDL R10, CX
MOVL AX, R9
MOVL AX, R10
ROLL $0x0e, CX
ADDL DX, CX
XORL R11, R9
ADDL $0xe7d3fbc8, BX
ADDL R8, BX
ANDL CX, R10
ANDL DX, R9
MOVL 36(SI), R8
ADDL R9, BX
ADDL R10, BX
MOVL DX, R9
MOVL DX, R10
ROLL $0x14, BX
ADDL CX, BX
XORL R11, R9
ADDL $0x21e1cde6, AX
ADDL R8, AX
ANDL BX, R10
ANDL CX, R9
MOVL 56(SI), R8
ADDL R9, AX
ADDL R10, AX
MOVL CX, R9
MOVL CX, R10
ROLL $0x05, AX
ADDL BX, AX
XORL R11, R9
ADDL $0xc33707d6, DX
ADDL R8, DX
ANDL AX, R10
ANDL BX, R9
MOVL 12(SI), R8
ADDL R9, DX
ADDL R10, DX
MOVL BX, R9
MOVL BX, R10
ROLL $0x09, DX
ADDL AX, DX
XORL R11, R9
ADDL $0xf4d50d87, CX
ADDL R8, CX
ANDL DX, R10
ANDL AX, R9
MOVL 32(SI), R8
ADDL R9, CX
ADDL R10, CX
MOVL AX, R9
MOVL AX, R10
ROLL $0x0e, CX
ADDL DX, CX
XORL R11, R9
ADDL $0x455a14ed, BX
ADDL R8, BX
ANDL CX, R10
ANDL DX, R9
MOVL 52(SI), R8
ADDL R9, BX
ADDL R10, BX
MOVL DX, R9
MOVL DX, R10
ROLL $0x14, BX
ADDL CX, BX
XORL R11, R9
ADDL $0xa9e3e905, AX
ADDL R8, AX
ANDL BX, R10
ANDL CX, R9
MOVL 8(SI), R8
ADDL R9, AX
ADDL R10, AX
MOVL CX, R9
MOVL CX, R10
ROLL $0x05, AX
ADDL BX, AX
XORL R11, R9
ADDL $0xfcefa3f8, DX
ADDL R8, DX
ANDL AX, R10
ANDL BX, R9
MOVL 28(SI), R8
ADDL R9, DX
ADDL R10, DX
MOVL BX, R9
MOVL BX, R10
ROLL $0x09, DX
ADDL AX, DX
XORL R11, R9
ADDL $0x676f02d9, CX
ADDL R8, CX
ANDL DX, R10
ANDL AX, R9
MOVL 48(SI), R8
ADDL R9, CX
ADDL R10, CX
MOVL AX, R9
MOVL AX, R10
ROLL $0x0e, CX
ADDL DX, CX
XORL R11, R9
ADDL $0x8d2a4c8a, BX
ADDL R8, BX
ANDL CX, R10
ANDL DX, R9
MOVL 20(SI), R8
ADDL R9, BX
ADDL R10, BX
MOVL DX, R9
MOVL DX, R10
ROLL $0x14, BX
ADDL CX, BX
MOVL CX, R9
MOVL DX, R9
XORL CX, R9
XORL BX, R9
ADDL $0xfffa3942, AX
ADDL R8, AX
MOVL 32(SI), R8
ADDL R9, AX
ROLL $0x04, AX
ADDL BX, AX
XORL DX, R9
XORL AX, R9
ADDL $0x8771f681, DX
ADDL R8, DX
MOVL 44(SI), R8
ADDL R9, DX
ROLL $0x0b, DX
ADDL AX, DX
XORL CX, R9
XORL DX, R9
ADDL $0x6d9d6122, CX
ADDL R8, CX
MOVL 56(SI), R8
ADDL R9, CX
ROLL $0x10, CX
ADDL DX, CX
XORL BX, R9
XORL CX, R9
ADDL $0xfde5380c, BX
ADDL R8, BX
MOVL 4(SI), R8
ADDL R9, BX
ROLL $0x17, BX
ADDL CX, BX
XORL AX, R9
XORL BX, R9
ADDL $0xa4beea44, AX
ADDL R8, AX
MOVL 16(SI), R8
ADDL R9, AX
ROLL $0x04, AX
ADDL BX, AX
XORL DX, R9
XORL AX, R9
ADDL $0x4bdecfa9, DX
ADDL R8, DX
MOVL 28(SI), R8
ADDL R9, DX
ROLL $0x0b, DX
ADDL AX, DX
XORL CX, R9
XORL DX, R9
ADDL $0xf6bb4b60, CX
ADDL R8, CX
MOVL 40(SI), R8
ADDL R9, CX
ROLL $0x10, CX
ADDL DX, CX
XORL BX, R9
XORL CX, R9
ADDL $0xbebfbc70, BX
ADDL R8, BX
MOVL 52(SI), R8
ADDL R9, BX
ROLL $0x17, BX
ADDL CX, BX
XORL AX, R9
XORL BX, R9
ADDL $0x289b7ec6, AX
ADDL R8, AX
MOVL (SI), R8
ADDL R9, AX
ROLL $0x04, AX
ADDL BX, AX
XORL DX, R9
XORL AX, R9
ADDL $0xeaa127fa, DX
ADDL R8, DX
MOVL 12(SI), R8
ADDL R9, DX
ROLL $0x0b, DX
ADDL AX, DX
XORL CX, R9
XORL DX, R9
ADDL $0xd4ef3085, CX
ADDL R8, CX
MOVL 24(SI), R8
ADDL R9, CX
ROLL $0x10, CX
ADDL DX, CX
XORL BX, R9
XORL CX, R9
ADDL $0x04881d05, BX
ADDL R8, BX
MOVL 36(SI), R8
ADDL R9, BX
ROLL $0x17, BX
ADDL CX, BX
XORL AX, R9
XORL BX, R9
ADDL $0xd9d4d039, AX
ADDL R8, AX
MOVL 48(SI), R8
ADDL R9, AX
ROLL $0x04, AX
ADDL BX, AX
XORL DX, R9
XORL AX, R9
ADDL $0xe6db99e5, DX
ADDL R8, DX
MOVL 60(SI), R8
ADDL R9, DX
ROLL $0x0b, DX
ADDL AX, DX
XORL CX, R9
XORL DX, R9
ADDL $0x1fa27cf8, CX
ADDL R8, CX
MOVL 8(SI), R8
ADDL R9, CX
ROLL $0x10, CX
ADDL DX, CX
XORL BX, R9
XORL CX, R9
ADDL $0xc4ac5665, BX
ADDL R8, BX
MOVL (SI), R8
ADDL R9, BX
ROLL $0x17, BX
ADDL CX, BX
MOVL R11, R9
XORL DX, R9
ADDL $0xf4292244, AX
ADDL R8, AX
ORL BX, R9
XORL CX, R9
ADDL R9, AX
MOVL 28(SI), R8
MOVL $0xffffffff, R9
ROLL $0x06, AX
XORL CX, R9
ADDL BX, AX
ADDL $0x432aff97, DX
ADDL R8, DX
ORL AX, R9
XORL BX, R9
ADDL R9, DX
MOVL 56(SI), R8
MOVL $0xffffffff, R9
ROLL $0x0a, DX
XORL BX, R9
ADDL AX, DX
ADDL $0xab9423a7, CX
ADDL R8, CX
ORL DX, R9
XORL AX, R9
ADDL R9, CX
MOVL 20(SI), R8
MOVL $0xffffffff, R9
ROLL $0x0f, CX
XORL AX, R9
ADDL DX, CX
ADDL $0xfc93a039, BX
ADDL R8, BX
ORL CX, R9
XORL DX, R9
ADDL R9, BX
MOVL 48(SI), R8
MOVL $0xffffffff, R9
ROLL $0x15, BX
XORL DX, R9
ADDL CX, BX
ADDL $0x655b59c3, AX
ADDL R8, AX
ORL BX, R9
XORL CX, R9
ADDL R9, AX
MOVL 12(SI), R8
MOVL $0xffffffff, R9
ROLL $0x06, AX
XORL CX, R9
ADDL BX, AX
ADDL $0x8f0ccc92, DX
ADDL R8, DX
ORL AX, R9
XORL BX, R9
ADDL R9, DX
MOVL 40(SI), R8
MOVL $0xffffffff, R9
ROLL $0x0a, DX
XORL BX, R9
ADDL AX, DX
ADDL $0xffeff47d, CX
ADDL R8, CX
ORL DX, R9
XORL AX, R9
ADDL R9, CX
MOVL 4(SI), R8
MOVL $0xffffffff, R9
ROLL $0x0f, CX
XORL AX, R9
ADDL DX, CX
ADDL $0x85845dd1, BX
ADDL R8, BX
ORL CX, R9
XORL DX, R9
ADDL R9, BX
MOVL 32(SI), R8
MOVL $0xffffffff, R9
ROLL $0x15, BX
XORL DX, R9
ADDL CX, BX
ADDL $0x6fa87e4f, AX
ADDL R8, AX
ORL BX, R9
XORL CX, R9
ADDL R9, AX
MOVL 60(SI), R8
MOVL $0xffffffff, R9
ROLL $0x06, AX
XORL CX, R9
ADDL BX, AX
ADDL $0xfe2ce6e0, DX
ADDL R8, DX
ORL AX, R9
XORL BX, R9
ADDL R9, DX
MOVL 24(SI), R8
MOVL $0xffffffff, R9
ROLL $0x0a, DX
XORL BX, R9
ADDL AX, DX
ADDL $0xa3014314, CX
ADDL R8, CX
ORL DX, R9
XORL AX, R9
ADDL R9, CX
MOVL 52(SI), R8
MOVL $0xffffffff, R9
ROLL $0x0f, CX
XORL AX, R9
ADDL DX, CX
ADDL $0x4e0811a1, BX
ADDL R8, BX
ORL CX, R9
XORL DX, R9
ADDL R9, BX
MOVL 16(SI), R8
MOVL $0xffffffff, R9
ROLL $0x15, BX
XORL DX, R9
ADDL CX, BX
ADDL $0xf7537e82, AX
ADDL R8, AX
ORL BX, R9
XORL CX, R9
ADDL R9, AX
MOVL 44(SI), R8
MOVL $0xffffffff, R9
ROLL $0x06, AX
XORL CX, R9
ADDL BX, AX
ADDL $0xbd3af235, DX
ADDL R8, DX
ORL AX, R9
XORL BX, R9
ADDL R9, DX
MOVL 8(SI), R8
MOVL $0xffffffff, R9
ROLL $0x0a, DX
XORL BX, R9
ADDL AX, DX
ADDL $0x2ad7d2bb, CX
ADDL R8, CX
ORL DX, R9
XORL AX, R9
ADDL R9, CX
MOVL 36(SI), R8
MOVL $0xffffffff, R9
ROLL $0x0f, CX
XORL AX, R9
ADDL DX, CX
ADDL $0xeb86d391, BX
ADDL R8, BX
ORL CX, R9
XORL DX, R9
ADDL R9, BX
MOVL (SI), R8
MOVL $0xffffffff, R9
ROLL $0x15, BX
XORL DX, R9
ADDL CX, BX
ADDL R12, AX
ADDL R13, BX
ADDL R14, CX
ADDL R15, DX
ADDQ $0x40, SI
CMPQ SI, DI
JB loop
end:
MOVL AX, (BP)
MOVL BX, 4(BP)
MOVL CX, 8(BP)
MOVL DX, 12(BP)
RET
|
The pages are generated with Golds v0.7.3. (GOOS=linux GOARCH=amd64)
Golds is a Go 101 project developed by Tapir Liu.
PR and bug reports are welcome and can be submitted to the issue list.
Please follow @zigo_101 (reachable from the left QR code) to get the latest news of Golds. |