Fri May 5 23:10:29 PDT 2006 [EMAIL PROTECTED]
*
Sat May 6 13:01:34 EST 2006 Don Stewart <[EMAIL PROTECTED]>
* Do loopU realloc on the Haskell heap. And add a really tough stress test
Sat May 6 12:28:58 EST 2006 Don Stewart <[EMAIL PROTECTED]>
* Use simple, 3x faster concat. Plus QC properties. Suggested by sjanssen
and dcoutts
Sat May 6 15:59:31 EST 2006 Don Stewart <[EMAIL PROTECTED]>
* dcoutt's packByte bug squashed
With inlinePerformIO, ghc head was compiling:
packByte 255 `compare` packByte 127
into roughly
case mallocByteString 2 of
ForeignPtr f internals ->
case writeWord8OffAddr# f 0 255 of _ ->
case writeWord8OffAddr# f 0 127 of _ ->
case eqAddr# f f of
False -> case compare (GHC.Prim.plusAddr# f 0)
(GHC.Prim.plusAddr# f 0)
which is rather stunning. unsafePerformIO seems to prevent whatever
magic inlining was leading to this. Only affected the head.
M ./Data/ByteString.hs -48 +42
M ./Data/ByteString/Char8.hs +9
_______________________________________________
Cvs-libraries mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/cvs-libraries