Ticket #4237 (closed bug: fixed)

Opened 3 years ago

Last modified 2 years ago

-dcore-lint error after simplifier iteration 1 when profiling

Reported by: wkahl Owned by:
Priority: high Milestone: 6.12 branch
Component: Compiler Version: 6.12.3
Keywords: profiling, simplifier, core-lint Cc:
Operating System: Linux Architecture: x86_64 (amd64)
Type of failure: Compile-time crash Difficulty:
Test Case: Blocked By: #4172
Blocking: Related Tickets:

Description

This happens with the current development version of Agda, with last change from July 20.

darcs get --lazy http://code.haskell.org/Agda

I did:

./Setup configure -p --prefix=/usr/local/packages/ghc-6.12.3 --ghc-option=-dcore-lint
./Setup build -v > build.log 2>&1

build.log is attached, and shows a core-lint error in the profiling way.

I tried this since I am getting segfaults and other errors in long Agda runs with more than 4GB heap, and have no idea yet how to trim them down.

Wolfram

Attachments

build.log.bz2 Download (57.8 KB) - added by wkahl 3 years ago.
bild.log (bzip2'ed because of size limit) showing core-ling error in profiling way

Change History

Changed 3 years ago by wkahl

bild.log (bzip2'ed because of size limit) showing core-ling error in profiling way

Changed 3 years ago by igloo

  • priority changed from normal to high
  • blockedby 4172, 4186 added
  • milestone set to 6.14.1

Thanks for the report. Let's see if fixing either #4186 or #4172 fixes this before looking into it.

Changed 3 years ago by simonpj

  • status changed from new to infoneeded

I believe that this patch will cure the problem.

Fri Aug 13 17:31:20 BST 2010  simonpj@microsoft.com
  * Modify FloatOut to fix Trac #4237
  
  The problem was that a strict binding was getting floated
  out into a letrec. This only happened when profiling was
  on.  It exposed a fragility in the floating strategy.  This
  patch makes it more robust.  See
        Note [Avoiding unnecessary floating]

Or, just using the HEAD (after today) should do it.

Can you try it out? It'll be in 6.14.

Simon

Changed 3 years ago by wkahl

What does this patch refer to exactly? Is there an easy way to apply it to a 6.12.3 source distribution?

Installing HEAD currently fails with

echo 'pgmgcc="/usr/bin/gcc"'                      >> "/usr/local/packages/ghc-6.13/bin/haddock-6.13.20100813"
cat utils/haddock/haddock.wrapper                         >> "/usr/local/packages/ghc-6.13/bin/haddock-6.13.20100813"
chmod +x                                         "/usr/local/packages/ghc-6.13/bin/haddock-6.13.20100813"
/usr/bin/install -c -m 755 -d "/usr/local/packages/ghc-6.13/share/doc/ghc/html"
"cp" -R utils/haddock/html "/usr/local/packages/ghc-6.13/share/doc/ghc/html"
/usr/bin/install -c -m 755 -d "/usr/local/packages/ghc-6.13/lib/ghc-6.13.20100813/html"
for i in utils/haddock/html/*; do \
	    /usr/bin/install -c -m 644  $i "/usr/local/packages/ghc-6.13/lib/ghc-6.13.20100813/html"; \
	done
/usr/bin/install: omitting directory `utils/haddock/html/Classic.theme'
/usr/bin/install: omitting directory `utils/haddock/html/Ocean.std-theme'
/usr/bin/install: omitting directory `utils/haddock/html/Snappy.theme'
make[1]: *** [install_utils/haddock_data] Error 1
make: *** [install] Error 2

...

Wolfram

Changed 3 years ago by wkahl

I found out that what keeps me from trying out HEAD is #4250.

Changed 3 years ago by simonpj

"This patch" refers to the patch shown above, namely

Fri Aug 13 17:31:20 BST 2010  simonpj@microsoft.com
  * Modify FloatOut to fix Trac #4237

Get HEAD, pull at least this patch, and try. I hope Ian may look into #4250 for you.

Simon

Changed 3 years ago by wkahl

Since I do not know enough darcs to be able to easily turn that information into a patch that could be applied to a GHC-6.12.3 source distribution, I tried HEAD, blindly bumped quite a few upper bounds in Cabal dependency declarations in Agda and in intermediate packages, and used more recent versions of some of the intermediate packages. (In mtl, I also had to comment some MonadError-related instances.) For Agda, I still have exactly the same source as with the original report --- it now compiles without core-lint error.

Wolfram

Changed 3 years ago by igloo

  • blockedby 4186 removed

Changed 3 years ago by simonpj

  • status changed from infoneeded to new
  • milestone changed from 6.14.1 to 6.12 branch

Great, thanks. We are not currently planning to release another compiler on the 6.12 branch, and it sounds as if the bug is fixed on the HEAD.

I'll re-milestone it as "6.12 branch" just in case we change our minds about 6.12, and want to apply the patch to 6.12 after all

Simon

Changed 2 years ago by batterseapower

  • status changed from new to closed
  • resolution set to fixed

I think this bug can be closed now since 6.12 is well and truly dormant.

Note: See TracTickets for help on using tickets.