Do not define hs_atomic{read,write}64() on non-64bit

Do not define hs_atomicread64() and hs_atomicwrite64() on machines where
WORD_SIZE_IN_BITS is less than 64, just like we do with the rest of the atomic
functions which work on 64-bit values.

Without this, compilation fails on MIPSel and PowerPC with the following error:

/usr/bin/ld: /<<PKGBUILDDIR>>/libraries/ghc-prim/dist-install/build/libHSghc-prim-0.5.3_p.a(atomic.p_o): in function `hs_atomicread64':
atomic.c:(.text.hs_atomicread64+0x8): undefined reference to `__sync_add_and_fetch_8'
/usr/bin/ld: /<<PKGBUILDDIR>>/libraries/ghc-prim/dist-install/build/libHSghc-prim-0.5.3_p.a(atomic.p_o): in function `hs_atomicwrite64':
atomic.c:(.text.hs_atomicwrite64+0x38): undefined reference to `__sync_bool_compare_and_swap_8'

Fixes #17886.
23 jobs for !2804 with feature-fix-mipsel in 344 minutes and 48 seconds (queued for 2 seconds)
latest detached
Status Name Job ID Coverage
  Lint
passed ghc-linters #273601
lint

00:00:48

passed lint-linters #273602
lint

00:00:48

passed lint-submods-mr #273605
lint

00:00:17

passed lint-testsuite #273603
lint

00:00:18

passed typecheck-testsuite #273604
lint

00:00:15

 
  Quick Build
passed hadrian-ghc-in-ghci #273606
x86_64-linux

00:20:33

 
  Build
passed validate-x86_64-linux-deb9-hadrian #273607
x86_64-linux

01:27:01

 
  Full Build
failed validate-aarch64-linux-deb9 #273610
aarch64-linux allowed to fail

03:21:16

passed validate-armv7-linux-deb9 #273611
armv7-linux

03:14:14

passed validate-i386-linux-deb9 #273612
x86_64-linux

01:36:13

failed validate-i386-windows #273619
new-x86_64-windows test allowed to fail

00:02:56

passed validate-x86_64-darwin #273609
x86_64-darwin

01:09:14

passed validate-x86_64-linux-deb9-debug #273613
x86_64-linux

01:48:46

passed validate-x86_64-linux-deb9-dwarf #273615
x86_64-linux

01:50:14

passed validate-x86_64-linux-deb9-integer-simple #273614
x86_64-linux

01:24:40

passed validate-x86_64-linux-deb9-unreg-hadrian #273608
x86_64-linux

03:12:52

passed validate-x86_64-linux-fedora27 #273616
x86_64-linux

01:38:07

failed validate-x86_64-windows #273618
new-x86_64-windows test allowed to fail

00:48:25

failed validate-x86_64-windows-hadrian #273617
new-x86_64-windows test allowed to fail

00:41:54

 
  Cleanup
passed cleanup-darwin #273620
x86_64-darwin

00:00:09

 
  Packaging
failed doc-tarball #273621
x86_64-linux allowed to fail

00:00:15

 
  Testing
manual hackage #273622
x86_64-linux allowed to fail manual
passed perf-nofib #273623
x86_64-linux

00:34:04

 
Name Stage Failure
failed
validate-i386-windows Full Build
Git branch:   12-6-stable
GO version: go1.13.4
Built: 2019-12-22T11:55:34+0000
OS/Arch: windows/amd64
Uploading artifacts...
Runtime platform
arch=amd64 os=windows pid=5240 revision=ac8e767a version=12.6.0
WARNING: junit.xml: no matching files
ERROR: No files to upload
ERROR: Job failed: exit status 1
failed
validate-x86_64-windows-hadrian Full Build
Git branch:   12-6-stable
GO version: go1.13.4
Built: 2019-12-22T11:55:34+0000
OS/Arch: windows/amd64
Uploading artifacts...
Runtime platform
arch=amd64 os=windows pid=6464 revision=ac8e767a version=12.6.0
WARNING: junit.xml: no matching files
ERROR: No files to upload
ERROR: Job failed: exit status 1
failed
validate-x86_64-windows Full Build
Git branch:   12-6-stable
GO version: go1.13.4
Built: 2019-12-22T11:55:34+0000
OS/Arch: windows/amd64
Uploading artifacts...
Runtime platform
arch=amd64 os=windows pid=3556 revision=ac8e767a version=12.6.0
WARNING: junit.xml: no matching files
ERROR: No files to upload
ERROR: Job failed: exit status 1
failed
validate-aarch64-linux-deb9 Full Build
cd "libraries/base/tests/IO/hGetLine001.run" && ./hGetLine001   < hGetLine001.hs
=====> hGetPosn001(normal) 7174 of 7384 [0, 102, 8]
cd "libraries/base/tests/IO/hGetPosn001.run" && "/builds/iliastsi/ghc/inplace/bin/ghc-stage2" -o hGetPosn001 hGetPosn001.hs -dcore-lint -dstg-lint -dcmm-lint -no-user-package-db -rtsopts -fno-warn-missed-specialisations -fshow-warning-groups -fdiagnostics-color=never -fno-diagnostics-show-caret -Werror=compat -dno-debug-output -cpp<
=====> hIsEOF001(normal) 7175 of 7384 [0, 102, 8]
cd "libraries/base/tests/IO/hIsEOF001.run" && "/builds/iliastsi/ghc/inplace/bin/ghc-stage2" -o hIsEOF001 hIsEOF001.hs -dcore-lint -dstg-lint -dcmm-lint -no-user-package-db -rtsopts -fno-warn-missed-specialisations -fshow-warning-groups -fdiagnostics-color=never -fno-diagnostics-show-caret -Werror=compat -dno-debug-output <
=====> hIsEOF002(normal) 7176 of 7384 [0, 102, 8]
cd "libraries/base/tests/IO/hIsEOF002.run" && "/builds/iliastsi/ghc/inplace/bin/ghc-stage2" -o hIsEOF002 hIsEOF002.hs -dcore-lint -dstg-lint -dcmm-lint -no-user-package-db -rtsopts -fno-warn-missed-specialisations -fshow-warning-groups -fdiagnostics-color=never -fno-diagnostics-show-caret -Werror=compat -dno-debug-output -cpp<
=====> hReady001(normal) 7177 of 7384 [0, 102, 8]
cd "libraries/base/tests/IO/hReady001.run" && "/builds/iliastsi/ghc/inplace/bin/ghc-stage2" -o hReady001 hReady001.hs -dcore-lint -dstg-lint -dcmm-lint -no-user-package-db -rtsopts -fno-warn-missed-specialisations -fshow-warning-groups -fdiagnostics-color=never -fno-diagnostics-show-caret -W
Job's log exceeded limit of 16384000 bytes.
failed
doc-tarball Packaging
Entering 'nofib'
Entering 'utils/haddock'
Entering 'utils/hsc2hs'
Downloading artifacts for validate-x86_64-linux-deb9-debug (273613)...
Downloading artifacts from coordinator... ok id=273613 responseStatus=200 OK token=y94GCY8r
Authenticating with credentials from job payload (GitLab Registry)
$ if [ ! -f "$LINUX_BINDIST" ]; then # collapsed multi-line command
Error: ghc-x86_64-mingw32.tar.xz does not exist. Did the 64-bit Windows job fail?
ERROR: Job failed: exit code 1