#5026: +RTS -G1 is broken
---------------------------------+------------------------------------------
Reporter: igloo | Owner:
Type: bug | Status: new
Priority: high | Milestone: 7.2.1
Component: Runtime System | Version: 7.0.2
Keywords: | Testcase:
Blockedby: | Difficulty:
Os: Unknown/Multiple | Blocking:
Architecture: Unknown/Multiple | Failure: None/Unknown
---------------------------------+------------------------------------------
A number of tests fail with `+RTS -G1`, including `cgrun026`. I had a
quick look into it:
This code in `GarbageCollect`:
{{{
if (RtsFlags.GcFlags.generations == 1) {
if (g0->blocks != NULL) {
freeChain(g0->blocks);
g0->blocks = NULL;
}
}
}}}
doesn't set:
{{{
g0->n_blocks = 0;
}}}
so causes an:
{{{
ASSERT(countBlocks(gen->blocks) == gen->n_blocks);
}}}
test in Sanity to fail. Presumably setting `n_blocks` to 0 is the right
thing to do.
Then, running with `-DS`, `LOOKS_LIKE_INFO_PTR` ends up being passed
`0xAA...AA`. I haven't looked further into this yet.
Once fixed, add a test (or perhaps make the codegen tests all be run with
`+RTS -G1`?)
--
Ticket URL: <http://hackage.haskell.org/trac/ghc/ticket/5026>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
_______________________________________________
Glasgow-haskell-bugs mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs