[commit: ghc] wip/T9281: DRAFT: Implement new integer-gmp2 from scratch (re #9281) (46f362a)

git at git.haskell.org git at git.haskell.org
Sun Nov 9 20:52:08 UTC 2014


Repository : ssh://git@git.haskell.org/ghc

On branch  : wip/T9281
Link       : http://ghc.haskell.org/trac/ghc/changeset/46f362a5f599f34fe5e8ceae8f4023ee249deaec/ghc

>---------------------------------------------------------------

commit 46f362a5f599f34fe5e8ceae8f4023ee249deaec
Author: Herbert Valerio Riedel <hvr at gnu.org>
Date:   Sun Oct 19 20:37:40 2014 +0200

    DRAFT: Implement new integer-gmp2 from scratch (re #9281)
    
    Summary:
    (preliminary commit message)
    
    This is done as a separate integer-gmp2 backend library because it
    turned out to become a complete rewrite from scratch. This has been
    tested only on Linux/x86_64 so far. The code has been written while
    taking into account Linux/i386 and "64-bit" Windows, but will probably
    need some tweaking to get right.
    
    Also, we don't do any autoconf stuff anymore, and rely on Cabal's
    "extra-libraries: gmp" to do the right thing (which probably won't work
    everywhere)
    
    Moreover, this is currently a big huge patch, which could easily be
    split into 2 or 3 commits.
    
    Test Plan: nofib & testsuite
    
    Reviewers: #ghc, austin
    
    Subscribers: ekmett, simonpj, ezyang, rwbarton, phaskell, simonmar, relrod, carter
    
    Differential Revision: https://phabricator.haskell.org/D82
    
    GHC Trac Issues: #9281


>---------------------------------------------------------------

46f362a5f599f34fe5e8ceae8f4023ee249deaec
 compiler/coreSyn/CorePrep.lhs                      |    3 +-
 compiler/ghc.mk                                    |    8 +-
 compiler/prelude/PrelNames.lhs                     |    2 +
 ghc.mk                                             |   10 +-
 libraries/base/GHC/Real.hs                         |    6 +
 libraries/base/base.cabal                          |   19 +-
 libraries/integer-gmp2/.gitignore                  |   13 +
 libraries/integer-gmp2/LICENSE                     |   30 +
 libraries/{base => integer-gmp2}/Setup.hs          |    0
 libraries/{integer-gmp => integer-gmp2}/aclocal.m4 |    0
 libraries/integer-gmp2/cbits/wrappers.c            |  281 ++++
 .../integer-gmp2/config.guess                      |    0
 config.sub => libraries/integer-gmp2/config.sub    |    0
 .../{integer-gmp => integer-gmp2}/configure.ac     |    4 +-
 .../{integer-gmp => integer-gmp2}/gmp/config.mk.in |    0
 libraries/{integer-gmp => integer-gmp2}/gmp/ghc.mk |   76 +-
 libraries/integer-gmp2/gmp/gmpsrc.patch            |   37 +
 {libffi => libraries/integer-gmp2/gmp}/ln          |    0
 libraries/integer-gmp2/include/HsIntegerGmp2.h.in  |    6 +
 .../integer-gmp2.buildinfo.in}                     |    0
 libraries/integer-gmp2/integer-gmp2.cabal          |   62 +
 .../src/GHC/Integer.hs}                            |   49 +-
 .../integer-gmp2/src/GHC/Integer/GMP2/Internals.hs |  126 ++
 .../integer-gmp2/src/GHC/Integer/Logarithms.hs     |   73 +
 .../src/GHC/Integer/Logarithms/Internals.hs        |  118 ++
 libraries/integer-gmp2/src/GHC/Integer/Type.hs     | 1663 ++++++++++++++++++++
 mk/config.mk.in                                    |    2 +-
 rules/foreachLibrary.mk                            |    2 +
 testsuite/driver/testlib.py                        |    2 +-
 testsuite/tests/ghci/scripts/ghci025.stdout        |    6 +-
 testsuite/tests/perf/should_run/all.T              |    3 +-
 testsuite/tests/perf/space_leaks/all.T             |    4 +-
 testsuite/tests/rename/should_compile/T3103/test.T |    2 +-
 testsuite/tests/rts/Makefile                       |    4 +-
 testsuite/tests/safeHaskell/check/pkg01/all.T      |    8 +-
 testsuite/tests/simplCore/should_run/T5603.hs      |    7 +-
 testsuite/tests/typecheck/should_fail/T5095.stderr |    4 +-
 .../tests/typecheck/should_fail/tcfail072.stderr   |    2 +-
 38 files changed, 2548 insertions(+), 84 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 46f362a5f599f34fe5e8ceae8f4023ee249deaec


More information about the ghc-commits mailing list