[commit: ghc] master: Re-implement `powModInteger` (#9281) (d0d4674)
git at git.haskell.org
git at git.haskell.org
Sat Nov 29 17:46:03 UTC 2014
Repository : ssh://git@git.haskell.org/ghc
On branch : master
Link : http://ghc.haskell.org/trac/ghc/changeset/d0d4674281a80e4148a82f833948c2b4c3051eab/ghc
>---------------------------------------------------------------
commit d0d4674281a80e4148a82f833948c2b4c3051eab
Author: Herbert Valerio Riedel <hvr at gnu.org>
Date: Sat Nov 29 12:18:25 2014 +0100
Re-implement `powModInteger` (#9281)
This also exposes the following type-specialised modular exponentiation
variants of `powModInteger` useful for implementing a `powModNatural`
operation.
powModBigNat :: BigNat -> BigNat -> BigNat -> BigNat
powModBigNatWord :: BigNat -> BigNat -> Word# -> Word#
powModWord :: Word# -> Word# -> Word# -> Word#
`powModInteger` has been available since `integer-gmp-0.5.1`
(added via 4d516855241b70eb687d95e3c121428de885e83e)
>---------------------------------------------------------------
d0d4674281a80e4148a82f833948c2b4c3051eab
libraries/integer-gmp2/cbits/wrappers.c | 89 +++++++++++++++
libraries/integer-gmp2/include/HsIntegerGmp.h.in | 2 -
.../integer-gmp2/src/GHC/Integer/GMP/Internals.hs | 5 +
libraries/integer-gmp2/src/GHC/Integer/Type.hs | 120 +++++++++++++++++++++
testsuite/tests/lib/integer/integerGmpInternals.hs | 13 +--
5 files changed, 215 insertions(+), 14 deletions(-)
Diff suppressed because of size. To see it, use:
git diff-tree --root --patch-with-stat --no-color --find-copies-harder --ignore-space-at-eol --cc d0d4674281a80e4148a82f833948c2b4c3051eab
More information about the ghc-commits
mailing list