INLINE pragmas

Thomas Miedema thomasmiedema at gmail.com
Thu Jul 30 12:25:19 UTC 2015


> INLINE[n]    becomes ONLY_INLINE_FROM[n]
> NOINLINE[n]  becomes ONLY_NOINLINE_BEFORE[n]
> ...
> And I am not even sure if ONLY_INLINE_FROM has the connotation of
> definite inlining to every reader...
>

ONLY_INLINE_FROM is problematic indeed, because it could just as well mean
the same as MAY_INLINE_FROM.

I still think we should consider splitting up the original INLINE[n] pragma
into two simpler pragmas (it currently does two things, whereas NOINLINE[n]
does only one thing). Here' another suggestion (note that phases count
down):

INLINE[2]    becomes  NO_INLINE > 2, INLINE <= 2
NOINLINE[2]  becomes  NO_INLINE > 2

Or, if we don't want two separate pragmas:

INLINE[2]    becomes  INLINE_IFF <= 2
NOINLINE[2]  becomes  NOINLINE > 2
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.haskell.org/pipermail/ghc-devs/attachments/20150730/3d3e4216/attachment.html>


More information about the ghc-devs mailing list