Function report

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:lib\crypto\curve25519-hacl64.c Create Date:2022-07-28 06:46:32
Last Modify:2022-05-21 12:16:42 Copyright©Brick
home page Tree
Annotation kernel can get tool activityDownload SCCTChinese

Name:addanddouble_fmonty

Proto:static __always_inline void addanddouble_fmonty(u64 *pp, u64 *ppq, u64 *p, u64 *pq, u64 *qmqp)

Type:void

Parameter:

TypeParameterName
u64 *pp
u64 *ppq
u64 *p
u64 *pq
u64 *qmqp
482  qx = qmqp
483  x2 = pp
484  z2 = pp + 5
485  x3 = ppq
486  z3 = ppq + 5
487  x = p
488  z = p + 5
489  xprime = pq
490  zprime = pq + 5
491  u64 buf[40] = {0}
492  origx = buf
493  origxprime0 = buf + 5
497  xxprime0 = buf + 25
498  zzprime0 = buf + 30
499  No 3D Now!(origx, x, 5 * size of x )
500  fsum(x, z)
501  fdifference(z, origx)
502  No 3D Now!(origxprime0, xprime, 5 * size of xprime )
503  fsum(xprime, zprime)
504  fdifference(zprime, origxprime0)
505  fmul(xxprime0, xprime, z)
506  fmul(zzprime0, x, zprime)
507  origxprime = buf + 5
514  xx0 = buf + 15
515  zz0 = buf + 20
516  xxprime = buf + 25
517  zzprime = buf + 30
518  zzzprime = buf + 35
519  No 3D Now!(origxprime, xxprime, 5 * size of xxprime )
520  fsum(xxprime, zzprime)
521  fdifference(zzprime, origxprime)
522  fsquare_fsquare_times(x3, xxprime, 1)
523  fsquare_fsquare_times(zzzprime, zzprime, 1)
524  fmul(z3, zzzprime, qx)
525  fsquare_fsquare_times(xx0, x, 1)
532  zzz = buf + 10
533  xx = buf + 15
534  zz = buf + 20
535  fmul(x2, xx, zz)
536  fdifference(zz, xx)
537  scalar = 121665
538  fscalar(zzz, zz, scalar)
539  fsum(zzz, xx)
540  fmul(z2, zzz, zz)
Caller
NameDescribe
ladder_smallloop_cmult_small_loop_step