From 0243f3571c7f30eda9f8b0adadfdf12d1284742d Mon Sep 17 00:00:00 2001 From: Simon Marlow Date: Wed, 23 Sep 2009 09:46:47 +0000 Subject: [PATCH] Various updates/additions --- docs/users_guide/6.12.1-notes.xml | 73 ++++++++++++++++++++++++++++--------- 1 file changed, 55 insertions(+), 18 deletions(-) diff --git a/docs/users_guide/6.12.1-notes.xml b/docs/users_guide/6.12.1-notes.xml index e2c8884..5ab4996 100644 --- a/docs/users_guide/6.12.1-notes.xml +++ b/docs/users_guide/6.12.1-notes.xml @@ -169,8 +169,9 @@ data instance T [a] where The -#include flag and INCLUDE pragma are now deprecated and - ignored. GHC now generates its own C prototypes, rather than - relying on C prototypes. + ignored. Since version 6.10.1, GHC has generated its own C + prototypes for foreign calls, rather than relying on + prototypes from C header files. @@ -184,7 +185,8 @@ data instance T [a] where There is a new FFI calling convention called - prim, which allows calling C-- function. + prim, which allows calling C-- functions + (see ). Most users are not expected to need this. @@ -252,6 +254,10 @@ data instance T [a] where Runtime system + + The following options are all described in + . + @@ -263,31 +269,34 @@ data instance T [a] where - The new flag +RTS -q1 disables the parallel - garbage collector. + The parallel GC now uses the same threads as the mutator, + with the consequence that you can no longer select a + different number of threads to use for GC. + The RTS + option has been removed, except that is + still accepted for backwards compatibility. - - The new flag - +RTS -qgn - sets the minimum generation for which parallel garbage - collection is used. Defaults to 1. + +RTS -qggen sets + the minimum generation for which parallel garbage collection + is used. Defaults to 1. The flag -qg on + its own disables parallel GC. - The new flag +RTS -qa - uses the OS to set thread affinity. + The new flag +RTS -qbgen + controls load balancing in the parallel GC. - The new flag +RTS -qb - disables load balancing in the parallel garbage collector. + The new flag +RTS -qa + uses the OS to set thread affinity (experimental). @@ -297,7 +306,7 @@ data instance T [a] where the new flag +RTS -l generates prog.eventlog files, which tools such as ThreadScope can use to show the - behaviour of your program. The + behaviour of your program (see ). The +RTS -D>x output is also sent to the eventlog file if this option is enabled. The +RTS -v flag sends eventlog data to @@ -343,7 +352,7 @@ SPARKS: 1430 (2 converted, 1427 pruned) In order to generate the parsers, happy >= 1.16 is now required. The parsers are pre-generated in the source tarball, - so most users will not need happy. + so most users will not need Happy. @@ -577,8 +586,11 @@ deriveMyStuff ''T Packages can now be identified by a "package ID", which is based on a hash of the ABIs. The new flag - -package-id allows packages to be selected - by this identifier. + -package-id allows packages to be + selected by this identifier (see ). Package IDs enable GHC to detect potential + incompatibilities between packages and broken dependencies + much more accurately than before. @@ -610,6 +622,31 @@ ghc --abi-hash M1 M2 ... Rather than being a single package.conf file, package databases now consist of a directory containing one file per package, and a binary cache of the information. + GHC should be much faster to start up when the package + database grows large. + + + + + + There is a new command ghc-pkg init to + create a package database. + + + + + + There is a new command ghc-pkg dot to + generate a GraphViz graph of the dependencies between + installed packages. + + + + + + There is a new command ghc-pkg recache to + update the package database cache should it become out of + date, or for registering packages manually. -- 1.7.10.4