my apologies, sorry for the terrible bug report On Sun, Dec 11, 2016 at 11:05 AM GHC <ghc-devs@haskell.org> wrote:
> #876: Length is not a good consumer > -------------------------------------+------------------------------------- > Reporter: ariep@… | Owner: > Type: bug | Status: new > Priority: lowest | Milestone: 7.6.2 > Component: libraries/base | Version: 6.5 > Resolution: | Keywords: length > Operating System: Linux | Architecture: > | Unknown/Multiple > Type of failure: Runtime | Test Case: > performance bug | perf/should_run/T876 > Blocked By: | Blocking: > Related Tickets: | Differential Rev(s): > Wiki Page: | > -------------------------------------+------------------------------------- > > Comment (by nomeata): > > This code, compiled with `-O, does fuse, and allocates nothing (or > constant amounts) > {{{#!hs > > module Foo where > x :: Int -> Int > x n = length [0..(10^n)::Int] > }}} > > {{{ > $ ghci -fobject-code -O Foo > GHCi, version 7.10.3: http://www.haskell.org/ghc/ :? for help > [1 of 1] Compiling Foo ( Foo.hs, Foo.o ) > Ok, modules loaded: Foo. > Prelude Foo> :set +s > Prelude Foo> x 1 > 11 > (0.03 secs, 14,976,744 bytes) > Prelude Foo> x 7 > 10000001 > (0.02 secs, 0 bytes) > Prelude Foo> x 8 > 100000001 > (0.04 secs, 0 bytes) > }}} > > (almost) HEAD: > {{{ > GHCi, version 8.1.20161117: http://www.haskell.org/ghc/ :? for help > [1 of 1] Compiling Foo (.hs -> .o) > WARNING: file compiler/simplCore/SimplCore.hs, line 663 > Simplifier bailing out after 4 iterations [58, 14, 2, 2] > Size = {terms: 96, types: 32, coercions: 0} > Ok, modules loaded: Foo (Foo.o). > Prelude Foo> :set +s > Prelude Foo> x 1 > 11 > (0.19 secs, 94,792 bytes) > Prelude Foo> x 2 > 101 > (0.01 secs, 94,648 bytes) > Prelude Foo> x 7 > 10000001 > (0.01 secs, 98,568 bytes) > Prelude Foo> x 8 > 100000001 > (0.05 secs, 98,448 bytes) > }}} > > Testing this in with interpreted code is not sufficient, as the optimizer > does less in that case. So so far, everything seems as expected to me. > > -- > Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/876#comment:30> > GHC <http://www.haskell.org/ghc/> > The Glasgow Haskell Compiler >
_______________________________________________ ghc-devs mailing list ghc-devs@haskell.org http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs