Files
avo/examples/sum/sum.s

19 lines
249 B
ArmAsm
Raw Normal View History

#include "textflag.h"
// func Sum(xs []uint64) uint64
TEXT ·Sum(SB),0,$0-32
MOVQ xs_base(FP), DX
2018-12-12 00:02:22 -08:00
MOVQ xs_len+8(FP), AX
XORQ CX, CX
loop:
2018-12-12 00:02:22 -08:00
CMPQ AX, $0x0
JE done
2018-12-12 00:02:22 -08:00
ADDQ (DX), CX
ADDQ $0x8, DX
2018-12-12 00:02:22 -08:00
DECQ AX
JMP loop
done:
2018-12-12 00:02:22 -08:00
MOVQ CX, ret+24(FP)
RET