summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIan Lynagh <ian@well-typed.com>2012-11-13 19:43:50 +0000
committerIan Lynagh <ian@well-typed.com>2012-11-13 19:43:50 +0000
commita9ec8ec0faaa1322a62e22cedc46f2394c423d09 (patch)
treed16316ff7ef1ef10dfeb6deb5e499051b8ff99bc
parent9756690fe7aa26aee6955d0b720377d53170c542 (diff)
downloadhaskell-a9ec8ec0faaa1322a62e22cedc46f2394c423d09.tar.gz
Remove the inline primop
It's not really a primop, and GHC.Prim doesn't export it. It has a definition in GHC.Magic.
-rw-r--r--compiler/prelude/primops.txt.pp20
1 files changed, 0 insertions, 20 deletions
diff --git a/compiler/prelude/primops.txt.pp b/compiler/prelude/primops.txt.pp
index 7730106c46..63b60090fd 100644
--- a/compiler/prelude/primops.txt.pp
+++ b/compiler/prelude/primops.txt.pp
@@ -2068,26 +2068,6 @@ pseudoop "seq"
{ Evaluates its first argument to head normal form, and then returns its second
argument as the result. }
-pseudoop "inline"
- a -> a
- { The call {\tt (inline f)} arranges that f is inlined, regardless of its size.
- More precisely, the call {\tt (inline f)} rewrites to the right-hand side of
- {\tt f}'s definition. This allows the programmer to control inlining from a
- particular call site rather than the definition site of the function (c.f.
- {\tt INLINE} pragmas in User's Guide, Section 7.10.3, "INLINE and NOINLINE
- pragmas").
-
- This inlining occurs regardless of the argument to the call or the size of
- {\tt f}'s definition; it is unconditional. The main caveat is that {\tt f}'s
- definition must be visible to the compiler. That is, {\tt f} must be
- {\tt let}-bound in the current scope. If no inlining takes place, the
- {\tt inline} function expands to the identity function in Phase zero; so its
- use imposes no overhead.
-
- It is good practice to mark the function with an INLINABLE pragma at
- its definition, (a) so that GHC guarantees to expose its unfolding regardless
- of size, and (b) so that you have control over exactly what is inlined. }
-
pseudoop "lazy"
a -> a
{ The {\tt lazy} function restrains strictness analysis a little. The call