Transitive inlining

2000-12-11 Thread Manuel M. T. Chakravarty
In the context of the array library, we stumbled over another problem. Does GHC transitive inlining across modules? Let's say, we have the following scenario: module B (foo) where {-# INLINE foo #-} foo .. = ...bar... {-# INLINE bar #-} bar .. = ... module L (baz)

Re: Transitive inlining

2000-12-11 Thread Marcin 'Qrczak' Kowalczyk
Tue, 12 Dec 2000 00:41:01 +1100, Manuel M. T. Chakravarty <[EMAIL PROTECTED]> pisze: > PS: I had problems building GHCi and it seems as if my > message to [EMAIL PROTECTED] doesn't get through > somehow... Subject: "mail boot" problem ? I have got it. -- __("< Marcin Kowalczyk * [EM

RE: Transitive inlining

2000-12-18 Thread Simon Peyton-Jones
itive inlining | | | In the context of the array library, we stumbled over | another problem. Does GHC transitive inlining across | modules? Let's say, we have the following scenario: | | module B (foo) where | | {-# INLINE foo #-} | foo .. = ...bar... | | {-# INLINE bar #

GHC thinks it is smarter than me [was: RE: Transitive inlining]

2000-12-25 Thread Manuel M. T. Chakravarty
Simon Peyton-Jones <[EMAIL PROTECTED]> wrote, > Yes, all the inlining you expect should indeed happen. If > it doesn't can you show us an example? Meanwhile, I think, the lack of inlining that I saw isn't connected to modules. Instead, the problem is that GHC thinks it knows more about my progr

Re: GHC thinks it is smarter than me [was: RE: Transitive inlining]

2000-12-25 Thread Manuel M. T. Chakravarty
"Manuel M. T. Chakravarty" <[EMAIL PROTECTED]> wrote, > Meanwhile, I think, the lack of inlining that I saw isn't > connected to modules. Instead, the problem is that GHC > thinks it knows more about my program than I do. More > precisely, it seems to take an INLINE pragma just as an > encourag

Re: GHC thinks it is smarter than me [was: RE: Transitive inlining]

2000-12-30 Thread Manuel M. T. Chakravarty
"Manuel M. T. Chakravarty" <[EMAIL PROTECTED]> wrote, [..] > In > particular - at least if a function is large enough - it > doesn't inline the function anymore if the function is used > more than once. Moreover, I am wondering which the exact conditions are under which NOINLINE pragmas are igno