Stg-lint and bootstrapping (fails?)

Gabor Greif ggreif at gmail.com
Thu Aug 24 10:56:47 UTC 2017


Indeed, it does not happen on fresh HEAD, I'll have to dig deeper.
Maybe it is related to my changes, but I only changed Stg-related
stuff. Join-points are a Core thing, right?

Anyway, I'll keep you informed if I figure it out.

Cheers,

    Gabor

On 8/22/17, Simon Peyton Jones <simonpj at microsoft.com> wrote:
> Is this with HEAD?  I have an up to date HEAD, and with your command line I
> don't get those warnings.  But I do get the OccAnal warnings, so it's not
> that the warnings are being suppressed.
>
> I'm not sure how to reproduce.
>
> Does this happen on anything smaller?  Eg. on a testsuite program (you'll
> need to switch off the -dno-debug-output)?
>
> Simon
>
> |  -----Original Message-----
> |  From: Gabor Greif [mailto:ggreif at gmail.com]
> |  Sent: 22 August 2017 09:57
> |  To: Simon Peyton Jones <simonpj at microsoft.com>; ghc-devs <ghc-
> |  devs at haskell.org>
> |  Subject: Re: Stg-lint and bootstrapping (fails?)
> |
> |  On 8/21/17, Gabor Greif <ggreif at gmail.com> wrote:
> |  > Hi Simon,
> |  >
> |  > for me it happens on many files that are compiled with
> |  >
> |  >   $ make GhcStage2HcOpts="-O1 -g"
> |  >
> |  > while the stage1 compiler is active.
> |  >
> |  > Tomorrow I can add a concrete invocation.
> |
> |  Here is it:
> |
> |  "inplace/bin/ghc-stage1" -hisuf hi -osuf o -hcsuf hc -static -O0 -H64m
> -Wall
> |  -fllvm-fill-undef-with-garbage -Werror -Iincludes -Iincludes/dist -
> |  Iincludes/dist-derivedconstants/header
> |  -Iincludes/dist-ghcconstants/header -this-unit-id ghc-8.3
> -hide-all-packages
> |  -i -icompiler/backpack -icompiler/basicTypes -icompiler/cmm -
> |  icompiler/codeGen -icompiler/coreSyn -icompiler/deSugar -icompiler/ghci
> -
> |  icompiler/hsSyn -icompiler/iface -icompiler/llvmGen -icompiler/main -
> |  icompiler/nativeGen -icompiler/parser -icompiler/prelude -
> |  icompiler/profiling -icompiler/rename -icompiler/simplCore -
> |  icompiler/simplStg -icompiler/specialise -icompiler/stgSyn -
> |  icompiler/stranal -icompiler/typecheck -icompiler/types -icompiler/utils
> -
> |  icompiler/vectorise -icompiler/stage2/build -Icompiler/stage2/build -
> |  icompiler/stage2/build/./autogen -Icompiler/stage2/build/./autogen -
> |  Icompiler/. -Icompiler/parser -Icompiler/utils
> -Icompiler/../rts/dist/build
> |  -Icompiler/stage2 -optP-DGHCI -optP-include -
> |  optPcompiler/stage2/build/./autogen/cabal_macros.h
> |  -package-id base-4.10.0.0 -package-id deepseq-1.4.3.0 -package-id
> |  directory-1.3.0.2 -package-id process-1.6.1.0 -package-id
> |  bytestring-0.10.8.2 -package-id binary-0.8.5.1 -package-id
> |  time-1.8.0.2 -package-id containers-0.5.10.2 -package-id array-0.5.2.0 -
> |  package-id filepath-1.4.1.2 -package-id template-haskell-2.12.0.0
> -package-
> |  id hpc-0.6.0.3 -package-id transformers-0.5.2.0 -package-id
> |  ghc-boot-8.3 -package-id ghc-boot-th-8.3 -package-id ghci-8.3
> -package-id
> |  unix-2.7.2.2 -package-id terminfo-0.4.1.0 -Wall -fno-warn-name-shadowing
> -
> |  this-unit-id ghc -XHaskell2010 -optc-DTHREADED_RTS -
> |  DGHCI_TABLES_NEXT_TO_CODE -DSTAGE=2 -Rghc-timing
> |  -O1 -no-user-package-db -rtsopts -Wnoncanonical-monad-instances -odir
> |  compiler/stage2/build -hidir compiler/stage2/build -stubdir
> |  compiler/stage2/build -dynamic-too -c compiler/typecheck/TcEvidence.hs
> -o
> |  compiler/stage2/build/TcEvidence.o -dyno
> |  compiler/stage2/build/TcEvidence.dyn_o
> |  WARNING: file compiler/simplCore/OccurAnal.hs, line 2695
> |    OccurAnal failed to rediscover join point(s): [$j_soeO]
> |  WARNING: file compiler/simplCore/OccurAnal.hs, line 2695
> |    OccurAnal failed to rediscover join point(s): [$j_soeN]
> |  WARNING: file compiler/simplCore/OccurAnal.hs, line 2695
> |    OccurAnal failed to rediscover join point(s): [$j_sosq]
> |  WARNING: file compiler/simplCore/OccurAnal.hs, line 2695
> |    OccurAnal failed to rediscover join point(s): [$j_soxX]
> |  WARNING: file compiler/simplCore/OccurAnal.hs, line 2695
> |    OccurAnal failed to rediscover join point(s): [$j_soy2]
> |  WARNING: file compiler/simplCore/OccurAnal.hs, line 2695
> |    OccurAnal failed to rediscover join point(s): [$j_soy9]
> |  WARNING: file compiler/simplCore/OccurAnal.hs, line 2695
> |    OccurAnal failed to rediscover join point(s): [$j_soyw]
> |  WARNING: file compiler/simplCore/OccurAnal.hs, line 2695
> |    OccurAnal failed to rediscover join point(s): [$j_sowZ]
> |  WARNING: file compiler/simplCore/OccurAnal.hs, line 2695
> |    OccurAnal failed to rediscover join point(s): [$j_sovR]
> |  WARNING: file compiler/simplCore/OccurAnal.hs, line 2695
> |    OccurAnal failed to rediscover join point(s): [$j_sovx]
> |  WARNING: file compiler/simplCore/SimplCore.hs, line 700
> |    Simplifier bailing out after 4 iterations [721, 479, 80, 4]
> |      Size = {terms: 8,035, types: 8,864, coercions: 1,129, joins: 0/96}
> |  WARNING: file compiler/simplCore/OccurAnal.hs, line 2163 Just 3 []
> |  WARNING: file compiler/simplCore/OccurAnal.hs, line 2163 Just 3 []
> |  WARNING: file compiler/simplCore/OccurAnal.hs, line 2163 Just 3 []
> |  WARNING: file compiler/simplCore/SimplCore.hs, line 1024
> |    Not shorting out: ebv_uniq
> |
> |
> |  And with `-g` I get even more:
> |
> |
> |  $ "inplace/bin/ghc-stage1" -hisuf hi -osuf o -hcsuf hc -static -O0 -H64m
> -
> |  Wall -fllvm-fill-undef-with-garbage -Werror -Iincludes -Iincludes/dist -
> |  Iincludes/dist-derivedconstants/header
> |  -Iincludes/dist-ghcconstants/header -this-unit-id ghc-8.3
> -hide-all-packages
> |  -i -icompiler/backpack -icompiler/basicTypes -icompiler/cmm -
> |  icompiler/codeGen -icompiler/coreSyn -icompiler/deSugar -icompiler/ghci
> -
> |  icompiler/hsSyn -icompiler/iface -icompiler/llvmGen -icompiler/main -
> |  icompiler/nativeGen -icompiler/parser -icompiler/prelude -
> |  icompiler/profiling -icompiler/rename -icompiler/simplCore -
> |  icompiler/simplStg -icompiler/specialise -icompiler/stgSyn -
> |  icompiler/stranal -icompiler/typecheck -icompiler/types -icompiler/utils
> -
> |  icompiler/vectorise -icompiler/stage2/build -Icompiler/stage2/build -
> |  icompiler/stage2/build/./autogen -Icompiler/stage2/build/./autogen -
> |  Icompiler/. -Icompiler/parser -Icompiler/utils
> -Icompiler/../rts/dist/build
> |  -Icompiler/stage2 -optP-DGHCI -optP-include -
> |  optPcompiler/stage2/build/./autogen/cabal_macros.h
> |  -package-id base-4.10.0.0 -package-id deepseq-1.4.3.0 -package-id
> |  directory-1.3.0.2 -package-id process-1.6.1.0 -package-id
> |  bytestring-0.10.8.2 -package-id binary-0.8.5.1 -package-id
> |  time-1.8.0.2 -package-id containers-0.5.10.2 -package-id array-0.5.2.0 -
> |  package-id filepath-1.4.1.2 -package-id template-haskell-2.12.0.0
> -package-
> |  id hpc-0.6.0.3 -package-id transformers-0.5.2.0 -package-id
> |  ghc-boot-8.3 -package-id ghc-boot-th-8.3 -package-id ghci-8.3
> -package-id
> |  unix-2.7.2.2 -package-id terminfo-0.4.1.0 -Wall -fno-warn-name-shadowing
> -
> |  this-unit-id ghc -XHaskell2010 -optc-DTHREADED_RTS -
> |  DGHCI_TABLES_NEXT_TO_CODE -DSTAGE=2 -Rghc-timing
> |  -O1 -g -no-user-package-db -rtsopts -Wnoncanonical-monad-instances -odir
> |  compiler/stage2/build -hidir compiler/stage2/build -stubdir
> |  compiler/stage2/build -dynamic-too -c compiler/typecheck/TcEvidence.hs
> -o
> |  compiler/stage2/build/TcEvidence.o -dyno
> |  compiler/stage2/build/TcEvidence.dyn_o
> |  WARNING: file compiler/simplCore/OccurAnal.hs, line 2695
> |    OccurAnal failed to rediscover join point(s): [$j_so9S]
> |  WARNING: file compiler/simplCore/OccurAnal.hs, line 2695
> |    OccurAnal failed to rediscover join point(s): [$j_so9R]
> |  WARNING: file compiler/simplCore/OccurAnal.hs, line 2695
> |    OccurAnal failed to rediscover join point(s): [$j_sonu]
> |  WARNING: file compiler/simplCore/OccurAnal.hs, line 2695
> |    OccurAnal failed to rediscover join point(s): [$j_sot1]
> |  WARNING: file compiler/simplCore/OccurAnal.hs, line 2695
> |    OccurAnal failed to rediscover join point(s): [$j_sot6]
> |  WARNING: file compiler/simplCore/OccurAnal.hs, line 2695
> |    OccurAnal failed to rediscover join point(s): [$j_sotd]
> |  WARNING: file compiler/simplCore/OccurAnal.hs, line 2695
> |    OccurAnal failed to rediscover join point(s): [$j_sotA]
> |  WARNING: file compiler/simplCore/OccurAnal.hs, line 2695
> |    OccurAnal failed to rediscover join point(s): [$j_sos3]
> |  WARNING: file compiler/simplCore/OccurAnal.hs, line 2695
> |    OccurAnal failed to rediscover join point(s): [$j_soqV]
> |  WARNING: file compiler/simplCore/OccurAnal.hs, line 2695
> |    OccurAnal failed to rediscover join point(s): [$j_soqB]
> |  WARNING: file compiler/simplCore/SimplCore.hs, line 700
> |    Simplifier bailing out after 4 iterations [714, 479, 80, 4]
> |      Size = {terms: 8,035, types: 8,864, coercions: 1,129, joins: 0/96}
> |  WARNING: file compiler/simplCore/OccurAnal.hs, line 2695
> |    OccurAnal failed to rediscover join point(s): [go58_akL0]
> |  WARNING: file compiler/simplCore/OccurAnal.hs, line 2695
> |    OccurAnal failed to rediscover join point(s): [go58_akL0]
> |  WARNING: file compiler/simplCore/OccurAnal.hs, line 2695
> |    OccurAnal failed to rediscover join point(s): [go58_akL0]
> |  WARNING: file compiler/simplCore/OccurAnal.hs, line 2695
> |    OccurAnal failed to rediscover join point(s): [go58_akL0]
> |  WARNING: file compiler/simplCore/OccurAnal.hs, line 2695
> |    OccurAnal failed to rediscover join point(s): [go58_akL0]
> |  WARNING: file compiler/simplCore/OccurAnal.hs, line 2695
> |    OccurAnal failed to rediscover join point(s): [go58_akL0]
> |  WARNING: file compiler/simplCore/OccurAnal.hs, line 2695
> |    OccurAnal failed to rediscover join point(s): [go58_akL0]
> |  WARNING: file compiler/simplCore/OccurAnal.hs, line 2695
> |    OccurAnal failed to rediscover join point(s): [go58_akL0]
> |  WARNING: file compiler/simplCore/OccurAnal.hs, line 2695
> |    OccurAnal failed to rediscover join point(s): [go58_akL0]
> |  WARNING: file compiler/simplCore/OccurAnal.hs, line 2695
> |    OccurAnal failed to rediscover join point(s): [go58_akL0]
> |  WARNING: file compiler/simplCore/OccurAnal.hs, line 2695
> |    OccurAnal failed to rediscover join point(s): [go58_akL0]
> |  WARNING: file compiler/simplCore/OccurAnal.hs, line 2695
> |    OccurAnal failed to rediscover join point(s): [go58_akL0]
> |  WARNING: file compiler/simplCore/OccurAnal.hs, line 2695
> |    OccurAnal failed to rediscover join point(s): [go58_akL0]
> |  WARNING: file compiler/simplCore/OccurAnal.hs, line 2695
> |    OccurAnal failed to rediscover join point(s): [go58_akL0]
> |  WARNING: file compiler/simplCore/OccurAnal.hs, line 2695
> |    OccurAnal failed to rediscover join point(s): [go58_akL0]
> |  WARNING: file compiler/simplCore/OccurAnal.hs, line 2695
> |    OccurAnal failed to rediscover join point(s): [go58_akL0]
> |  WARNING: file compiler/simplCore/OccurAnal.hs, line 2695
> |    OccurAnal failed to rediscover join point(s): [go58_akL0] ... ETC.
> |
> |  Cheers,
> |
> |      Gabor
> |
> |
> |
> |  >
> |  > Cheers,
> |  >
> |  >       Gabor
> |  >
> |  > Em seg, 21 de ago de 2017 às 17:49, Simon Peyton Jones <
> |  > simonpj at microsoft.com> escreveu:
> |  >
> |  >> |  Oh dear, then I've really misunderstood the intent of this
> warning.
> |  >> I've
> |  >> |  been noticing these during the GHC build for quite some time now.
> |  >
> |  >> Really?
> |  >
> |  >> After stumbling on #14142, I removed -dno-debug-output from
> |  >> mk/flavours/ validate.mk and re-validated.  Not a single occurrence
> |  >> of
> |  >
> |  >> |  > | WARNING: file compiler/simplCore/OccurAnal.hs, line 2695
> |  >> |  > |   OccurAnal failed to rediscover join point(s): [go58_akKa]
> |  >
> |  >> How can I reproduce what you are seeing?
> |  >
> |  >> Simon
> |  >
> |  >> |  -----Original Message-----
> |  >> |  From: Ben Gamari [mailto:ben at smart-cactus.org]
> |  >> |  Sent: 19 August 2017 16:54
> |  >> |  To: Simon Peyton Jones <simonpj at microsoft.com>; Gabor Greif
> |  >> | <ggreif at gmail.com>
> |  >> |  Cc: ghc-devs <ghc-devs at haskell.org>
> |  >> |  Subject: RE: Stg-lint and bootstrapping (fails?)
> |  >> |
> |  >> |  Simon Peyton Jones <simonpj at microsoft.com> writes:
> |  >> |
> |  >> |  > | WARNING: file compiler/simplCore/OccurAnal.hs, line 2695
> |  >> |  > |   OccurAnal failed to rediscover join point(s): [go58_akKa]
> |  >> |  >
> |  >> |  > That shouldn't happen!  If you can make a repro case, please
> |  >> | open a  ticket.
> |  >> |  >
> |  >> |  Oh dear, then I've really misunderstood the intent of this
> warning.
> |  >> I've
> |  >> |  been noticing these during the GHC build for quite some time now.
> |  >> |
> |  >> |  Cheers,
> |  >> |
> |  >> |  - Ben
> |  >
> |  >
> |  >
>


More information about the ghc-devs mailing list