Make BCO# lifted

In #17424 Simon PJ noted that there is a potentially unsafe occurrence
of unsafeCoerce#, coercing from an unlifted to lifted type. However,
nowhere in the compiler do we assume that a BCO# is not a thunk.
Moreover, in the case of a CAF the result returned by `createBCO` *will*
be a thunk (as noted in [Updatable CAF BCOs]).  Consequently it seems
better to rather make BCO# a lifted type and rename it to BCO.
23 jobs for master in 321 minutes and 34 seconds (queued for 3 seconds)
Status Job ID Name Coverage
  Lint
passed #215441
lint
lint-linters

00:00:14

passed #215444
lint
lint-submods-branch

00:00:16

passed #215442
lint
lint-testsuite

00:00:15

passed #215443
lint
typecheck-testsuite

00:00:13

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

00:08:14

 
  Build
passed #215448
x86_64-linux
release-x86_64-linux-deb9

00:46:22

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

01:29:44

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

01:13:26

passed #215446
x86_64-linux
validate-x86_64-linux-deb9-hadrian

01:13:31

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

03:10:11

failed #215453
armv7-linux allowed to fail
validate-armv7-linux-deb9

03:15:28

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

01:06:20

passed #215451
x86_64-darwin
validate-x86_64-darwin

01:05:59

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

00:44:14

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

02:16:40

passed #215456
x86_64-linux
validate-x86_64-linux-fedora27

01:19:33

failed #215458
x86_64-windows allowed to fail
validate-x86_64-windows

00:31:38

failed #215457
x86_64-windows allowed to fail
validate-x86_64-windows-hadrian

00:47:10

 
  Cleanup
passed #215459
x86_64-darwin
cleanup-darwin

00:00:09

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

00:00:26

 
  Testing
manual #215461
x86_64-linux allowed to fail manual
hackage
passed #215462
x86_64-linux
perf-nofib

00:24:08

 
  Deploy
failed #215463
x86_64-linux allowed to fail
pages

00:02:46

 
Name Stage Failure
failed
validate-armv7-linux-deb9 Full Build
Uploading artifacts...
ghc-armv7-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=215453 responseStatus=201 Created token=u11CkVKK
Uploading artifacts...
junit.xml: found 1 matching files

Uploading artifacts to coordinator... ok
id=215453 responseStatus=201 Created token=u11CkVKK
ERROR: Job failed: exit code 1
failed
pages Deploy
$ git fetch https://gitlab.haskell.org/ghc/ghc-performance-notes.git refs/notes/perf:refs/notes/perf || true
warning: no common commits
From https://gitlab.haskell.org/ghc/ghc-performance-notes
* [new ref] refs/notes/perf -> refs/notes/perf
$ mkdir -p public/doc
$ tar -xf haddock.html.tar.xz -C public/doc
tar: haddock.html.tar.xz: Cannot open: No such file or directory
tar: Error is not recoverable: exiting now
ERROR: Job failed: exit code 1
failed
validate-x86_64-windows Full Build
Runtime platform                                    arch=amd64 os=windows pid=1000 revision=1f513601 version=11.10.1
WARNING: ghc-x86_64-mingw32.tar.xz: no matching files
WARNING: junit.xml: no matching files
ERROR: No files to upload
Uploading artifacts...
Runtime platform
arch=amd64 os=windows pid=3880 revision=1f513601 version=11.10.1
WARNING: junit.xml: no matching files
ERROR: No files to upload
ERROR: Job failed: exit status 2
failed
validate-x86_64-windows-hadrian Full Build
Runtime platform                                    arch=amd64 os=windows pid=8864 revision=1f513601 version=11.10.1
WARNING: ghc.tar.xz: no matching files
WARNING: junit.xml: no matching files
ERROR: No files to upload
Uploading artifacts...
Runtime platform
arch=amd64 os=windows pid=10988 revision=1f513601 version=11.10.1
WARNING: junit.xml: no matching files
ERROR: No files to upload
ERROR: Job failed: exit status 1
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=215452 responseStatus=201 Created token=2EstyNA1
Uploading artifacts...
junit.xml: found 1 matching files

Uploading artifacts to coordinator... ok
id=215452 responseStatus=201 Created token=2EstyNA1
ERROR: Job failed: exit code 1
failed
doc-tarball Packaging
Synchronizing submodule url for 'utils/hsc2hs'
$ git submodule update --init --recursive
$ git checkout .gitmodules
$ git fetch https://gitlab.haskell.org/ghc/ghc-performance-notes.git refs/notes/perf:refs/notes/perf || true
From https://gitlab.haskell.org/ghc/ghc-performance-notes
0611c2bc68..1ab850c936 refs/notes/perf -> refs/notes/perf
$ 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