#932: Improve inlining
----------------------+-----------------------------------------------------
Reporter: simonpj | Owner:
Type: task | Status: new
Priority: normal | Milestone: 6.6.1
Component: Compiler | Version: 6.4.2
Severity: normal | Resolution:
Keywords: | Difficulty: Unknown
Testcase: N/A | Architecture: Unknown
Os: Unknown |
----------------------+-----------------------------------------------------
Comment (by samb):
Hmm, that did not work right! Trac won't let people download the
attachment?
Anyway, with that last idea my patches no longer make anything in nofib
allocate more -- however they also don't make any of them allocate *less*
:-(. They do make a couple of 'em slower, though.
And then there are things like this:
{{{
module Test2 where
import GHC.Exts
foo = word2Int#
bar = foo
}}}
Which produces this output when built with {{{ghc/compiler/ghc-inplace
-ddump-inlinings -no-recomp -O2 -c Test2.hs}}}:
{{{
SimplBind [main:Test2.foo{v r7V} [lid]]
SimplBind [main:Test2.bar{v r7X} [lid]]
Considering inlining
main:Test2.foo{v r7V} [lid] active: False
arg infos []
interesting continuation False
is value: True
is cheap: True
guidance IF_ARGS 0 [] 1 0
ANSWER = NO
...
}}}
Which gives word2Int# a "size" of 1, even though it doesn't DO anything.
--
Ticket URL: <http://hackage.haskell.org/trac/ghc/ticket/932>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
_______________________________________________
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs