1
// Copyright 2012 The Go Authors. All rights reserved.
2
// Use of this source code is governed by a BSD-style
3
// license that can be found in the LICENSE file.
5
// This code was translated into a form compatible with 6a from the public
6
// domain sources in SUPERCOP: http://bench.cr.yp.to/supercop.html
10
// func poly1305(out *[16]byte, m *byte, mlen uint64, key *[32]key)
11
TEXT ·poly1305(SB),0,$224-32
37
MOVL $0X43300000,108(SP)
38
MOVL $0X45300000,116(SP)
39
MOVL $0X47300000,124(SP)
40
MOVL $0X49300000,132(SP)
50
FSUBD ·DOFFSET0(SB), F0
52
FSUBD ·DOFFSET1(SB), F0
54
FSUBD ·DOFFSET2(SB), F0
56
FSUBD ·DOFFSET3(SB), F0
75
INITIALATLEAST16BYTES:
88
FSUBD ·DOFFSET3MINUSTWO128(SB), F0
91
FSUBD ·DOFFSET1(SB), F0
94
FSUBD ·DOFFSET2(SB), F0
97
FSUBD ·DOFFSET0(SB), F0
99
JB MULTIPLYADDATMOST15BYTES
100
MULTIPLYADDATLEAST16BYTES:
111
FMOVD ·ALPHA130(SB), F0
113
FSUBD ·ALPHA130(SB), F0
116
FMOVD ·ALPHA32(SB), F0
118
FSUBD ·ALPHA32(SB), F0
122
FMOVD ·ALPHA64(SB), F0
124
FSUBD ·ALPHA64(SB), F0
126
FMOVD ·ALPHA96(SB), F0
128
FSUBD ·ALPHA96(SB), F0
188
FSUBD ·DOFFSET3MINUSTWO128(SB), F0
192
FSUBD ·DOFFSET2(SB), F0
196
FSUBD ·DOFFSET1(SB), F0
200
FSUBD ·DOFFSET0(SB), F0
202
JAE MULTIPLYADDATLEAST16BYTES
203
MULTIPLYADDATMOST15BYTES:
204
FMOVD ·ALPHA130(SB), F0
206
FSUBD ·ALPHA130(SB), F0
209
FMOVD ·ALPHA32(SB), F0
211
FSUBD ·ALPHA32(SB), F0
213
FMOVD ·ALPHA64(SB), F0
215
FSUBD ·ALPHA64(SB), F0
217
FMOVD ·ALPHA96(SB), F0
219
FSUBD ·ALPHA96(SB), F0
296
FSUBD ·DOFFSET3(SB), F0
299
FSUBD ·DOFFSET2(SB), F0
302
FSUBD ·DOFFSET1(SB), F0
305
FSUBD ·DOFFSET0(SB), F0
306
FMOVD ·ALPHA130(SB), F0
308
FSUBD ·ALPHA130(SB), F0
311
FMOVD ·ALPHA32(SB), F0
313
FSUBD ·ALPHA32(SB), F0
315
FMOVD ·ALPHA64(SB), F0
317
FSUBD ·ALPHA64(SB), F0
319
FMOVD ·ALPHA96(SB), F0
321
FSUBD ·ALPHA96(SB), F0
382
FMOVD ·ALPHA130(SB), F0
384
FSUBD ·ALPHA130(SB), F0
387
FMOVD ·ALPHA32(SB), F0
389
FSUBD ·ALPHA32(SB), F0
391
FMOVD ·ALPHA64(SB), F0
393
FSUBD ·ALPHA64(SB), F0
395
FMOVD ·ALPHA96(SB), F0
397
FSUBD ·ALPHA96(SB), F0
409
FADDD ·HOFFSET0(SB), F0
411
FADDD ·HOFFSET1(SB), F0
413
FADDD ·HOFFSET2(SB), F0
415
FADDD ·HOFFSET3(SB), F0