// 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