Files
avo/examples/fnv1a/fnv1a.s

23 lines
419 B
ArmAsm
Raw Normal View History

2018-12-18 22:57:26 -08:00
// Code generated by command: go run asm.go -out fnv1a.s -stubs stub.go. DO NOT EDIT.
2018-12-13 00:18:44 -08:00
#include "textflag.h"
2018-12-13 00:18:44 -08:00
// func Hash64(data []byte) uint64
TEXT ·Hash64(SB), NOSPLIT, $0-32
2018-12-13 00:18:44 -08:00
MOVQ data_base(FP), CX
MOVQ data_len+8(FP), BX
MOVQ $0xcbf29ce484222325, AX
2018-12-26 17:08:58 -08:00
MOVQ $0x00000100000001b3, BP
2018-12-13 00:18:44 -08:00
loop:
2018-12-26 17:08:58 -08:00
CMPQ BX, $0x00
2018-12-13 00:18:44 -08:00
JE done
MOVBQZX (CX), DX
XORQ DX, AX
MULQ BP
INCQ CX
DECQ BX
JMP loop
done:
MOVQ AX, ret+24(FP)
2018-12-18 21:05:05 -08:00
RET