Function report

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:lib\mpi\mpih-mul.c Create Date:2022-07-28 07:19:14
Last Modify:2020-03-12 14:18:49 Copyright©Brick
home page Tree
Annotation kernel can get tool activityDownload SCCTChinese

Name:mpihelp_mul_karatsuba_case

Proto:int mpihelp_mul_karatsuba_case(mpi_ptr_t prodp, mpi_ptr_t up, mpi_size_t usize, mpi_ptr_t vp, mpi_size_t vsize, struct karatsuba_ctx *ctx)

Type:int

Parameter:

TypeParameterName
mpi_ptr_tprodp
mpi_ptr_tup
mpi_size_tusize
mpi_ptr_tvp
mpi_size_tvsize
struct karatsuba_ctx *ctx
328  If Not tspace || tspace_size < vsize Then
329  If tspace Then mpi_free_limb_space(tspace)
331  tspace = -- mpiutil.c --
332  If Not tspace Then Return -ENOMEM
334  tspace_size = vsize
339  prodp += vsize
340  up += vsize
341  usize -= vsize
342  If usize >= vsize Then
343  If Not tp || tp_size < vsize Then
344  If tp Then mpi_free_limb_space(tp)
347  If Not tp Then
350  tspace = NULL
351  Return -ENOMEM
353  tp_size = vsize
356  Do
361  prodp += vsize
362  up += vsize
363  usize -= vsize
364  When usize >= vsize cycle
367  If usize Then
373  Else
390  Return 0
Caller
NameDescribe
mpihelp_mul_karatsuba_case
mpihelp_mulMultiply the natural numbers u (pointed to by UP, with USIZE limbs)* and v (pointed to by VP, with VSIZE limbs), and store the result at* PRODP. USIZE + VSIZE limbs are always stored, but if the input* operands are normalized
mpi_powmRES = BASE ^ EXP mod MOD