Update sanity checking for TSOs:

- Remove an invalid assumption about GC checking what_next field. The GC
  doesn't care about what_next at all, if a TSO is reachable then all
  its pointers are followed (other than global_tso, which is only
  followed by compacting GC).

- Remove checkSTACK in checkTSO: TSO stacks will be visited in
  checkHeapChain, or checkLargeObjects etc.

- Add an assertion in checkTSO to check that the global_link field is
  sane.

- Did some refactor to remove forward decls in checkGlobalTSOList and
  added braces around single-statement if statements.
36 jobs for master in 363 minutes and 22 seconds (queued for 2 seconds)
Status Job ID Name Coverage
  Lint
passed #283239
lint
lint-linters

00:00:14

passed #283242
lint
lint-submods-branch

00:00:25

passed #283240
lint
lint-testsuite

00:00:16

passed #283241
lint
typecheck-testsuite

00:00:14

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

00:10:01

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

01:23:07

 
  Full Build
failed #283249
aarch64-linux allowed to fail
nightly-aarch64-linux-deb9

03:03:38

passed #283251
armv7-linux
nightly-armv7-linux-deb9

04:21:48

passed #283253
x86_64-linux
nightly-i386-linux-deb9

02:10:57

failed #283268
new-x86_64-windows test allowed to fail
nightly-i386-windows

00:00:44

failed #283264
new-x86_64-windows test allowed to fail
nightly-i386-windows-hadrian

00:00:52

failed #283246
x86_64-freebsd allowed to fail
nightly-x86_64-freebsd

00:18:35

failed #283261
x86_64-linux allowed to fail
nightly-x86_64-linux-alpine

03:19:41

passed #283260
x86_64-linux
nightly-x86_64-linux-deb10

01:41:55

passed #283254
x86_64-linux
nightly-x86_64-linux-deb9

01:29:19

failed #283258
x86_64-linux
nightly-x86_64-linux-deb9-integer-simple

01:33:56

failed #283256
x86_64-linux
nightly-x86_64-linux-deb9-llvm

00:43:25

failed #283266
new-x86_64-windows test allowed to fail
nightly-x86_64-windows

00:10:25

failed #283248
aarch64-linux allowed to fail
validate-aarch64-linux-deb9

03:04:14

passed #283250
armv7-linux
validate-armv7-linux-deb9

04:20:43

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

01:17:10

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

00:00:50

passed #283247
x86_64-darwin
validate-x86_64-darwin

01:09:12

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

01:47:30

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

01:47:14

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

01:31:03

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

03:02:39

passed #283262
x86_64-linux
validate-x86_64-linux-fedora27

01:41:53

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

03:11:41

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

01:00:23

 
  Cleanup
passed #283269
x86_64-darwin
cleanup-darwin

00:00:20

 
  Packaging
skipped #283270
x86_64-linux allowed to fail
doc-tarball
 
  Testing
skipped #283271
x86_64-linux allowed to fail manual
hackage
skipped #283272
x86_64-linux
nightly-hackage
skipped #283273
x86_64-linux
perf-nofib
 
  Deploy
skipped #283274
x86_64-linux allowed to fail
pages
 
Name Stage Failure
failed
validate-aarch64-linux-deb9 Full Build
Uploading artifacts...
ghc-aarch64-linux-deb9.tar.xz: found 1 matching files
junit.xml: found 1 matching files

performance-metrics.tsv: found 1 matching files

Uploading artifacts to coordinator... ok
id=283248 responseStatus=201 Created token=EN5zmxnu
Uploading artifacts...
junit.xml: found 1 matching files

Uploading artifacts to coordinator... ok
id=283248 responseStatus=201 Created token=EN5zmxnu
ERROR: Job failed: exit code 1
failed
nightly-x86_64-linux-deb9-llvm Full Build
Uploading artifacts...
WARNING: ./ghc-x86_64-deb9-linux.tar.xz: no matching files
WARNING: junit.xml: no matching files
WARNING: performance-metrics.tsv: no matching files
ERROR: No files to upload
Uploading artifacts...
WARNING: junit.xml: no matching files
ERROR: No files to upload
ERROR: Job failed: exit code 1
failed
nightly-x86_64-freebsd Full Build
WARNING: ghc-x86_64-portbld-freebsd.tar.xz: no matching files 
WARNING: junit.xml: no matching files
WARNING: performance-metrics.tsv: no matching files
ERROR: No files to upload
Uploading artifacts...
Runtime platform
arch=amd64 os=freebsd pid=52424 revision=58272c27 version=12.7.0
WARNING: junit.xml: no matching files
ERROR: No files to upload
ERROR: Job failed: exit status 1
failed
nightly-i386-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=7192 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=3736 revision=ac8e767a version=12.6.0
WARNING: junit.xml: no matching files
ERROR: No files to upload
ERROR: Job failed: exit status 1
failed
nightly-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=4600 revision=ac8e767a version=12.6.0
WARNING: junit.xml: no matching files
ERROR: No files to upload
ERROR: Job failed: exit status 1
failed
nightly-x86_64-linux-deb9-integer-simple Full Build
Uploading artifacts...
./ghc-x86_64-deb9-linux.tar.xz: found 1 matching files
junit.xml: found 1 matching files

performance-metrics.tsv: found 1 matching files

Uploading artifacts to coordinator... ok
id=283258 responseStatus=201 Created token=Zi1x-Ycw
Uploading artifacts...
junit.xml: found 1 matching files

Uploading artifacts to coordinator... ok
id=283258 responseStatus=201 Created token=Zi1x-Ycw
ERROR: Job failed: exit code 1
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=6596 revision=ac8e767a version=12.6.0
WARNING: junit.xml: no matching files
ERROR: No files to upload
ERROR: Job failed: exit status 1
failed
nightly-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=5464 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
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=7812 revision=ac8e767a version=12.6.0
junit.xml: found 1 matching files

WARNING: Failed to load system CertPool: crypto/x509: system root pool is not available on Windows
Uploading artifacts to coordinator... ok
id=283265 responseStatus=201 Created token=gfHjAf-G
ERROR: Job failed: exit status 1
failed
nightly-aarch64-linux-deb9 Full Build
Uploading artifacts...
ghc-aarch64-linux-deb9.tar.xz: found 1 matching files
junit.xml: found 1 matching files

performance-metrics.tsv: found 1 matching files

Uploading artifacts to coordinator... ok
id=283249 responseStatus=201 Created token=mSaX-P94
Uploading artifacts...
junit.xml: found 1 matching files

Uploading artifacts to coordinator... ok
id=283249 responseStatus=201 Created token=mSaX-P94
ERROR: Job failed: exit code 1
failed
nightly-x86_64-linux-alpine Full Build
Running rm -Rf _build...
Uploading artifacts...
ghc.tar.xz: found 1 matching files
junit.xml: found 1 matching files

Uploading artifacts to coordinator... ok
id=283261 responseStatus=201 Created token=NqgG8Z_Z
Uploading artifacts...
junit.xml: found 1 matching files

Uploading artifacts to coordinator... ok
id=283261 responseStatus=201 Created token=NqgG8Z_Z
ERROR: Job failed: exit code 1