Ticket #948 (closed bug: fixed)

Opened 6 years ago

Last modified 7 months ago

Incorrect Core transformations with cost centres

Reported by: simonmar Owned by: simonmar
Priority: normal Milestone: 7.4.1
Component: Profiling Version: 6.6
Keywords: Cc:
Operating System: Unknown/Multiple Architecture: Unknown/Multiple
Type of failure: None/Unknown Difficulty: Unknown
Test Case: Blocked By:
Blocking: Related Tickets:

Description

Noticed during the hackathon: attached program has SCC annotations on non-top-level bindings, and these get moved around in the middle end such that the final profile is incorrect.

Attachments

spaceleak.hs Download (0.8 KB) - added by simonmar 6 years ago.

Change History

Changed 6 years ago by simonmar

Changed 6 years ago by simonmar

  • milestone set to _|_

Changed 5 years ago by simonmar

Also see the cg057 test, which is getting mis-transformed with -O in HEAD (15/12/2006).

Changed 5 years ago by igloo

Frederik Eaton in  http://www.haskell.org/pipermail/glasgow-haskell-bugs/2007-January/008125.html says:

Here is a test case showing poor results with '+RTS -xc'. The program
dies with error message:
<Wrappers.unsingleton,Main.CAF>sparse-test: Wrappers.hs:218:4-9: Assertion failed

Clearly, the 'stack trace' is incomplete, since Wrappers is not
imported directly by the main module (so I think there should be a few
intervening levels as well).

Here are commands to reproduce:

wget http://ofb.net/~frederik/ghc-xc-test.tar.gz
tar -xzf ghc-xc-test.tar.gz
cd sparse-work
./gen-ops && ./gen-foreignimports &&
g++ -g sparse_lib.cpp -c -o sparse_lib.o &&
ghc -prof -auto-all -fno-do-eta-reduction -fno-do-lambda-eta-expansion \
  -fno-case-merge -frules-off -fno-cse -fno-pre-inlining -fno-strictness \
  -fno-unbox-strict-fields --make sparse-test.hs sparse_lib.o -lm -lc -lstdc++
./sparse-test +RTS -xc

I've included all the '-fno-*' stuff on the ghc command line because I
thought it might help produce more information, but the problem occurs
without it.

Changed 4 years ago by simonmar

  • architecture changed from Multiple to Unknown/Multiple

Changed 4 years ago by simonmar

  • os changed from Multiple to Unknown/Multiple

Changed 9 months ago by simonmar

  • owner set to simonmar
  • failure set to None/Unknown
  • milestone changed from _|_ to 7.4.1

Changed 7 months ago by simonmar

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

Now fixed, I believe. I can't reproduce the problem with the attached spaceleak test, and the URL for the other test case is now 404'd.

Note: See TracTickets for help on using tickets.