X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=docs%2Fusers_guide%2Fdebugging.xml;h=638ab7a4b50d732352fa82a0db4caefe7100a8d1;hb=b779271a1f1420c0894e721a75afece2c5e75147;hp=d9f21f16f6d44fbb4e6d9b4b56893ba76d3dbd5b;hpb=ea283aa74e6fd2bec2b88eae19908bba903adea1;p=ghc-hetmet.git
diff --git a/docs/users_guide/debugging.xml b/docs/users_guide/debugging.xml
index d9f21f1..638ab7a 100644
--- a/docs/users_guide/debugging.xml
+++ b/docs/users_guide/debugging.xml
@@ -60,6 +60,17 @@
+ :
+
+
+
+ Dump Template Haskell expressions that we splice in,
+ and what Haskell code the expression evaluates to.
+
+
+
+
+
:
@@ -186,6 +197,16 @@
+ :
+
+
+
+ output of core preparation pass
+
+
+
+
+
:
@@ -206,6 +227,26 @@
+ :
+
+
+
+ Print the C-- code out.
+
+
+
+
+
+ :
+
+
+
+ Dump the results of C-- to C-- optimising passes.
+
+
+
+
+
:
@@ -239,25 +280,15 @@
-
-
-
-
-
-
+ :
+
- Show the output of the intermediate Core-to-Core and
- STG-to-STG passes, respectively. (Lots
- of output!) So: when we're really desperate:
-
-
-% ghc -noC -O -ddump-simpl -dverbose-simpl -dcore-lint Foo.hs
-
-
+ Show the output of each run of the simplifier. Used when even
+ doesn't cut it.
-
+
:
@@ -266,54 +297,43 @@
Show the output of each iteration
of the simplifier (each run of the simplifier has a maximum
- number of iterations, normally 4). Used when even
- doesn't cut it.
+ number of iterations, normally 4). This outputs even more information
+ than .
-
-
+
+
- Debugging output is in one of several
- “styles.” Take the printing of types, for
- example. In the “user” style (the default), the
- compiler's internal ideas about types are presented in
- Haskell source-level syntax, insofar as possible. In the
- “debug” style (which is the default for
- debugging output), the types are printed in with explicit
- foralls, and variables have their unique-id attached (so you
- can check for things that look the same but aren't). This
- flag makes debugging output appear in the more verbose debug
- style.
+ Dump statistics about how many of each kind of
+ transformation too place. If you add
+ you get more detailed
+ information.
-
-
+
+
- In error messages, expressions are printed to a
- certain “depth”, with subexpressions beyond the
- depth replaced by ellipses. This flag sets the
- depth.
+ Make the interface loader be *real* chatty about what it is
+ upto.
-
-
+
+
- Dump statistics about how many of each kind of
- transformation too place. If you add
- you get more detailed
- information.
+ Make the type checker be *real* chatty about what it is
+ upto.
@@ -341,6 +361,81 @@
+
+
+
+
+
+
+
+
+ Show the output of the intermediate Core-to-Core and
+ STG-to-STG passes, respectively. (Lots
+ of output!) So: when we're really desperate:
+
+
+% ghc -noC -O -ddump-simpl -dverbose-simpl -dcore-lint Foo.hs
+
+
+
+
+
+
+
+
+
+
+
+ Print out each pass name as it happens.
+
+
+
+
+
+
+
+
+
+ Show statistics for the usage of fast strings by the
+ compiler.
+
+
+
+
+
+
+
+
+
+ Debugging output is in one of several
+ “styles.” Take the printing of types, for
+ example. In the “user” style (the default), the
+ compiler's internal ideas about types are presented in
+ Haskell source-level syntax, insofar as possible. In the
+ “debug” style (which is the default for
+ debugging output), the types are printed in with explicit
+ foralls, and variables have their unique-id attached (so you
+ can check for things that look the same but aren't). This
+ flag makes debugging output appear in the more verbose debug
+ style.
+
+
+
+
+
+
+
+
+
+ In error messages, expressions are printed to a
+ certain “depth”, with subexpressions beyond the
+ depth replaced by ellipses. This flag sets the
+ depth. Its default value is 5.
+
+
+
+
+
@@ -381,6 +476,16 @@
+
+
+ :
+
+
+
+ Ditto for C-- level.
+
+
+
@@ -507,21 +612,9 @@ Main.skip2{-r1L6-} =
of platform-specific code that needs to be written in order to get
unregisterised compilation going is usually fairly small.
-
-
-
- :
-
-
-
- Compile via vanilla ANSI C only, turning off
- platform-specific optimisations. NOTE: in order to use
- , you need to have a set of libraries
- (including the RTS) built for unregisterised compilation.
- This amounts to building GHC with way "u" enabled.
-
-
-
+ Unregisterised compilation cannot be selected at
+ compile-time; you have to build GHC with the appropriate options
+ set. Consult the GHC Building Guide for details.