WIP: Make Int64#/Word64 useful on all architectures -- contains #3654
The boxed Int64 uses Int64#, but Int32# still uses Int#. The 32-bit case is less pressing to change because it is not a source of brittle CPP---it is the same thing on all platforms.
We need Int64/Word64 constant folding to avoid the let/app restriction on Core, so that is implemented now. 32-bit constant unfolding and 32-bit literals are left as follow-up.
The place to start reading first is
Please take a few moments to verify that your commits fulfill the following:
- are either individually buildable or squashed
have commit messages which describe what they do
(referring to Notes and tickets using
#NNNNsyntax when appropriate)
- have added source comments describing your change. For larger changes you likely should add a Note and cross-reference it from the relevant places.
- add a testcase to the testsuite.
if your MR affects library interfaces (e.g. changes
base) or affects whether GHC will accept user-written code, please add the ~"user facing" label.
- updates the users guide if applicable
- mentions new features in the release notes for the next release
If you have any questions don't hesitate to open your merge request and inquire
in a comment. If your patch isn't quite done yet please do add prefix your MR