[GHC] #9281: Rewrite `integer-gmp` to use only non-allocating GMP functions
GHC
ghc-devs at haskell.org
Wed Nov 19 10:02:57 UTC 2014
#9281: Rewrite `integer-gmp` to use only non-allocating GMP functions
-------------------------------------+-------------------------------------
Reporter: hvr | Owner: hvr
Type: task | Status: patch
Priority: normal | Milestone: 7.10.1
Component: Core | Version:
Libraries | Keywords: integer-gmp
Resolution: | Architecture: Unknown/Multiple
Operating System: | Difficulty: Unknown
Unknown/Multiple | Blocked By:
Type of failure: | Related Tickets: #8647
None/Unknown |
Test Case: |
Blocking: |
Differential Revisions: Phab:D82 |
-------------------------------------+-------------------------------------
Comment (by Herbert Valerio Riedel <hvr@…>):
In [changeset:"42244668af6d8c1dd6a2d64af90ed57d8ecd8d88/ghc"]:
{{{
#!CommitTicketReference repository="ghc"
revision="42244668af6d8c1dd6a2d64af90ed57d8ecd8d88"
Reimplement im/export primitives for integer-gmp2
The import/export operations were available in `integer-gmp-0.5.1`
already, but need to be reimplemented from scratch for the
`integer-gmp-1.0.0` rewrite.
This also adds a few more operations than were previously available for
use w/ the `BigNat` type (which will be useful for implementing
serialisation for the upcoming `Natural` type)
Specifically, the following operations are (re)added (albeit with
slightly different type-signatures):
- `sizeInBaseBigNat`
- `sizeInBaseInteger`
- `sizeInBaseWord#`
- `exportBigNatToAddr`
- `exportIntegerToAddr`
- `exportWordToAddr`
- `exportBigNatToMutableByteArray`
- `exportIntegerToMutableByteArray`
- `exportWordToMutableByteArray`
- `importBigNatFromAddr`
- `importIntegerFromAddr`
- `importBigNatFromByteArray`
- `importIntegerFromByteArray`
NOTE: The `integerGmpInternals` test-case is updated but not yet
re-enabled as it contains tests for other primitives which aren't
yet reimplemented.
This addresses #9281
Reviewed By: austin, duncan
Differential Revision: https://phabricator.haskell.org/D480
}}}
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/9281#comment:18>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list