Fix typos 'resizze'
Revert "Fix typos 'resizze'"
this is z-encoding (as hvr tells me)

This reverts commit 425d5178af55620efa00e6e16426f491c63ad533.
Workaround GCC `__ctzdi2` intrinsic linker errors

On Linux/i386 the 64bit `__builtin_ctzll()` instrinsic doesn't get
inlined by GCC but rather a short `__ctzdi2` runtime function is
inserted when needed into compiled object files.

This causes failures for the four test-cases

  TEST="T8639_api T8628 dynCompileExpr T5313"

with error messages of the kind

  dynCompileExpr: .../libraries/ghc-prim/dist-install/build/libHSghcpr_BE58KUgBe9ELCsPXiJ1Q2r.a: unknown symbol `__ctzdi2'
  dynCompileExpr: dynCompileExpr: unable to load package `ghc-prim'

This workaround forces GCC on 32bit x86 to to express `hs_ctz64` in
terms of the 32bit `__builtin_ctz()` (this is no loss, as there's no
64bit BSF instruction on i686 anyway) and thus avoid the problematic
out-of-line runtime function.

Note: `__builtin_ctzll()` is used since
      e0c1767d0ea8d12e0a4badf43682a08784e379c6 (re #9340)
Remove obsolete `digitsTyConKey :: Unique`

This became dead with 1e87c0a6e485e1dbef8e9ed19191e54f6cdc54e0
and was probably just missed.

I plan to re-use the freed up `mkPreludeTyConUnique 23` slot soon
for a new `bigNatTyConKey` (as part of the #9281 effort)
Implement `decodeDouble_Int64#` primop

Summary:
The existing `decodeDouble_2Int#` primop is rather inconvenient to use
(and in fact is not even used by `integer-gmp`) as the mantissa is split
into 3 components which would actually fit in an `Int64#` value.

However, `decodeDouble_Int64#` is to be used by the new `integer-gmp2`
re-implementation (see #9281).

Moreover, `decodeDouble_2Int#` performs direct bit-wise operations on the
IEEE representation which can be replaced by a combination of the
portable standard C99 `scalbn(3)` and `frexp(3)` functions.

Test Plan: tested via `integer-gmp2`

Reviewers: simonmar, austin

Subscribers: simonmar, relrod, ezyang, carter

Differential Revision: https://phabricator.haskell.org/D160

GHC Trac Issues: #9281
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). We may need to re-introduce the use of autoconf at some point.

Test Plan: nofib & testsuite

Reviewers: #ghc, austin, simonmar, rwbarton

Subscribers: simonmar, relrod, carter

Differential Revision: https://phabricator.haskell.org/D82
[WIP] fixup wired-in BigNat