X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=docs%2Fusers_guide%2Fflags.xml;h=aca1d4763e91fad416c471212083a5dbdb49a836;hb=14f9af49db1672e023ac8d8c506b42bc5400a787;hp=29de82f6696a96f1c40f12f11fa27474b756de34;hpb=820ae4cd665db337fd060022e649318be4714ee7;p=ghc-hetmet.git
diff --git a/docs/users_guide/flags.xml b/docs/users_guide/flags.xml
index 29de82f..a9c0184 100644
--- a/docs/users_guide/flags.xml
+++ b/docs/users_guide/flags.xml
@@ -60,6 +60,18 @@
-
+ or
+ display the supported languages and language extensions
+ mode
+ -
+
+
+
+ display information about the compiler
+ mode
+ -
+
+
display GHC version
mode
@@ -242,7 +254,7 @@
dir
- set output directory
+ set directory for object files
dynamic
-
@@ -264,6 +276,12 @@
dynamic
-
+
+ dir
+ set output directory
+ dynamic
+ -
+
@@ -286,19 +304,29 @@
-
+ or
+
retain intermediate .hc files
dynamic
-
-
+ or
+
+ retain intermediate LLVM .ll files
+ dynamic
+ -
+
+
+ or
+
retain intermediate .s files
dynamic
-
-
+ or
+
retain intermediate .raw_s files
dynamic
-
@@ -413,11 +441,7 @@
file
- Read the interface in
- file and dump it as text to
- stdout.
- mode
- -
+ See .
@@ -453,7 +477,7 @@
-
+
Interactive-mode options
@@ -482,17 +506,43 @@
-
-
- Generate bytecode enabled for debugging
+
+ Break on any exception thrown
+ dynamic
+
+
+
+
+ Break on uncaught exceptions and errors
+ dynamic
+
+
+
+
+ Enable usage of Show instances in :print
+ dynamic
+
+
+
+
+ Turn on printing of binding results in GHCi
+ dynamic
+
+
+
+
+ Turn off printing of binding contents in GHCi
dynamic
-
-
- Do not include debugging information in bytecodes
+
+ Turn off
+ implicit qualified import of everything in GHCi
dynamic
-
+
@@ -556,6 +606,12 @@
static
-
+
+
+ Don't automatically link in the haskell98 package.
+ dynamic
+ -
+
@@ -564,7 +620,9 @@
Language options
-
+ Language options can be enabled either by a command-line option
+ , or by a {-# LANGUAGE blah #-}
+ pragma in the file itself. See
@@ -578,62 +636,69 @@
-
+
+ Enable most language extensions
+ dynamic
+
+
+
+
Enable overlapping instances
dynamic
-
+
-
+
Enable incoherent instances.
- Implies
+ Implies
dynamic
-
+
-
+
Enable undecidable instances
dynamic
-
+
n
- set the limit for context reduction
+ set the limit for context reduction. Default is 20.
dynamic
-
+
-
+
Enable arrow
notation extension
dynamic
-
+
- or
- Enable foreign function interface (implied by
- )
+
+ Enable record
+ field disambiguation
dynamic
-
+
-
- Enable generic classes
+
+ Enable foreign function interface (implied by
+ )
dynamic
-
+
-
- Enable most language extensions
+
+ Enable generic classes
dynamic
-
+
-
+
Enable Implicit Parameters.
Implied by .
dynamic
-
+
@@ -642,55 +707,324 @@
-
+
Don't implicitly import Prelude
dynamic
-
+
-
+
+ Employ rebindable syntax
+ dynamic
+
+
+
+
Disable the monomorphism restriction
dynamic
-
+
-
+
+ Disable support for n+k patterns
+ dynamic
+
+
+
+
Make pattern bindings polymorphic
dynamic
-
+
+
+
+
+ Relaxed checking for mutually-recursive polymorphic functions
+ dynamic
+
-
+
Use GHCi's extended default rules in a normal module
dynamic
-
+
-
+
Enable overloaded string literals.
dynamic
-
+
+
+
+
+ Enable generalised algebraic data types.
+
+ dynamic
+
+
+
+
+ Enable generalised algebraic data type syntax.
+
+ dynamic
+
+
+
+
+ Enable type families.
+ dynamic
+
-
+
Enable lexically-scoped type variables.
Implied by .
dynamic
-
+
-
+
+ Enable do not generalise local bindings.
+
+ dynamic
+
+
+
+
Enable Template Haskell.
No longer implied by .
dynamic
-
+
+
+
+
+ Enable quasiquotation.
+ dynamic
+
-
+
Enable bang patterns.
dynamic
-
+
+
+
+
+ Enable the C preprocessor.
+ dynamic
+
+
+
+
+ Enable pattern guards.
+ dynamic
+
+
+
+
+ Enable view patterns.
+ dynamic
+
+
+
+
+ Enable unicode syntax.
+ dynamic
+
+
+
+
+ Allow "#" as a postfix modifier on identifiers.
+ dynamic
+
+
+
+
+ Enable explicit universal quantification.
+ Implied by ,
+ ,
+ ,
+ ,
+ ,
+
+
+ dynamic
+
+
+
+
+ Enable polymorphic components for data constructors.
+ dynamic
+
+
+
+
+ Enable rank-2 types.
+ dynamic
+
+
+
+
+ Enable rank-N types.
+ dynamic
+
+
+
+
+ Enable impredicative types.
+ dynamic
+
+
+
+
+ Enable existential quantification.
+ dynamic
+
+
+
+
+ Enable kind signatures.
+ dynamic
+
+
+
+
+ Enable empty data declarations.
+ dynamic
+
+
+
+
+ Enable parallel list comprehensions.
+ dynamic
+
+
+
+
+ Enable generalised list comprehensions.
+ dynamic
+
+
+
+
+ Enable unlifted FFI types.
+ dynamic
+
+
+
+
+ Enable liberalised type synonyms.
+ dynamic
+
+
+
+
+ Enable type operators.
+ dynamic
+
+
+
+
+ Enable recursive do notation.
+ dynamic
+
+
+
+
+ Enable recursive do (mdo) notation. This is deprecated; please use recursive do notation instead.
+ dynamic
+
+
+
+
+ Enable parallel arrays.
+ dynamic
+
+
+
+
+ Enable record wildcards.
+ dynamic
+
+
+
+
+ Enable record puns.
+ dynamic
+
+
+
+
+ Enable record field disambiguation.
+ dynamic
+
+
+
+
+ Enable unboxed tuples.
+ dynamic
+
+
+
+
+ Enable standalone deriving.
+ dynamic
+
+
+
+
+ Enable deriving for the Data and Typeable classes.
+ dynamic
+
+
+
+
+ Enable newtype deriving.
+ dynamic
+
+
+
+
+ Enable type synonyms in instance heads.
+ dynamic
+
+
+
+
+ Enable flexible contexts.
+ dynamic
+
+
+
+
+ Enable flexible instances.
+ Implies
+ dynamic
+
+
+
+
+ Enable constrained class methods.
+ dynamic
+
+
+
+
+ Enable multi parameter type classes.
+ dynamic
+
+
+
+
+ Enable functional dependencies.
+ dynamic
+
+
+
+
+ Enable package-qualified imports.
+ dynamic
+
@@ -727,7 +1061,7 @@
- enable all warnings
+ enable almost all warnings (details in )
dynamic
@@ -735,14 +1069,34 @@
make warnings fatal
dynamic
-
+ -Wwarn
+
+
+
+ make warnings non-fatal
+ dynamic
+ -Werror
-
- warn about uses of functions & types that are deprecated
+
+ warn about uses of pragmas that GHC doesn't recognise
dynamic
-
+
+
+
+
+
+ warn about uses of functions & types that have warnings or deprecated pragmas
+ dynamic
+
+
+
+
+
+ warn about uses of commandline flags that are deprecated
+ dynamic
+
@@ -760,6 +1114,21 @@
+
+
+ warn about uses of Prelude numeric conversions that are probably
+ the identity (and hence could be omitted)
+ dynamic
+
+
+
+
+
+ warn when the Prelude is implicitly imported
+ dynamic
+
+
+
warn when a pattern match could fail
@@ -775,6 +1144,13 @@
+
+ warn when a pattern binding looks lazy but must be strict
+ dynamic
+
+
+
+
warn when fields of a record are uninitialised
dynamic
@@ -782,6 +1158,14 @@
+
+ warn when an import declaration does not explicitly
+ list all the names brought into scope
+ dynamic
+
+
+
+
warn when class methods are undefined
dynamic
@@ -804,8 +1188,8 @@
- warn when the module contains "orphan" instance declarations
- or rewrite rules
+ warn when the module contains orphan instance declarations
+ or rewrite rules
dynamic
@@ -818,13 +1202,6 @@
-
- warn about lambda-patterns that can fail
- dynamic
-
-
-
-
warn if there are tabs in the source file
dynamic
@@ -839,6 +1216,13 @@
+
+ warn when the Monomorphism Restriction is applied
+ dynamic
+
+
+
+
warn about bindings that are unused
dynamic
@@ -859,6 +1243,20 @@
+
+
+ warn about do bindings that appear to throw away values of types other than ()
+ dynamic
+
+
+
+
+
+ warn about do bindings that appear to throw away monadic values that you should have bound instead
+ dynamic
+
+
+
@@ -915,7 +1313,7 @@
- Enable case-merging
+ Enable case-merging. Implied by .
dynamic
@@ -928,8 +1326,15 @@
+
+ Share specialisations of overloaded functions (default)
+ dynamic
+
+
+
+
- Enable eta-reduction
+ Enable eta-reduction. Implied by .
dynamic
@@ -949,14 +1354,6 @@
-
- Switch off all rewrite rules (including rules
- generated by automatic specialisation of overloaded functions)
- static
-
-
-
-
Ignore assertions in the source
dynamic
@@ -971,13 +1368,6 @@
-
- Tweak the liberate-case optimisation (default: 10)
- static
-
-
-
-
Don't generate interface pragmas
dynamic
@@ -993,6 +1383,14 @@
+
+ Set the number of phases for the simplifier (default 2).
+ Ignored with .
+ dynamic
+ -
+
+
+
Set the max iterations for the simplifier
dynamic
@@ -1008,31 +1406,99 @@
-
- Turn off common sub-expression
+
+ Turn on common sub-expression elimination. Implied by .
dynamic
- -
+ -fno-cse
-
- Turn off full laziness (floating bindings outwards).
+
+ Turn on specialisation of overloaded functions. Implied by .
dynamic
- -ffull-laziness
+ -fno-specialise
-
- Turn off pre-inlining
+
+ Turn on full laziness (floating bindings outwards). Implied by .
+ dynamic
+ -fno-full-laziness
+
+
+
+
+ Turn on the float-in transformation. Implied by .
+ dynamic
+ -fno-float-in
+
+
+
+
+ Switch on all rewrite rules (including rules
+ generated by automatic specialisation of overloaded functions).
+ Implied by .
+ dynamic
+
+
+
+
+
+ Turn on strictness analysis. Implied by .
+ dynamic
+ -fno-strictness
+
+
+
+ =n
+ Run an additional strictness analysis before simplifier
+phase n
+ dynamic
+ -
+
+
+
+
+ Turn on the SpecConstr transformation. Implied by .
+ dynamic
+ -fno-spec-constr
+
+
+
+ =n
+ Set the size threshold for the SpecConstr transformation to n (default: 200)
static
- -
+
+
+
+
+ =n
+ Set to n (default: 3) the maximum number of
+ specialisations that will be created for any one function
+ by the SpecConstr transformation
+ static
+
-
- Turn off strictness analysis
+
+ Turn on the liberate-case transformation. Implied by .
dynamic
- -
+ -fno-liberate-case
+
+
+
+
+ Turn on the static argument transformation. Implied by .
+ dynamic
+ -fno-static-argument-transformation
+
+
+
+ =n
+ Set the size threshold for the liberate-case transformation to n (default: 200)
+ static
+
@@ -1064,17 +1530,24 @@
-
+
Tweak unfolding settings
static
-
+
-
- Tweak unfolding settings
+
+ Turn off pre-inlining
static
-
+ -
+
+
+
+
+ Turn on eager blackholing
+ dynamic
+ -
@@ -1100,21 +1573,21 @@
Auto-add _scc_s to all
- exported functions
- static
+ exported functions not marked INLINE
+ dynamic
Auto-add _scc_s to all
- top-level functions
- static
+ top-level functions not marked INLINE
+ dynamic
Auto-add _scc_s to all CAFs
- static
+ dynamic
@@ -1125,7 +1598,7 @@
- Turn on ticky-ticky profiling
+ Turn on ticky-ticky profiling
static
-
@@ -1135,6 +1608,39 @@
+ Program coverage options
+
+
+
+
+
+
+
+ Flag
+ Description
+ Static/Dynamic
+ Reverse
+
+
+
+
+
+ Turn on Haskell program coverage instrumentation
+ static
+
+
+
+
+ Directory to deposit .mix files during compilation (default is .hpc)
+ dynamic
+
+
+
+
+
+
+
+
Haskell pre-processor options
@@ -1211,33 +1717,6 @@
- C compiler options
-
-
-
-
-
-
- Flag
- Description
- Static/Dynamic
- Reverse
-
-
-
-
- file
- Include file when
- compiling the .hc file
- dynamic
- -
-
-
-
-
-
-
-
Code generation options
@@ -1266,9 +1745,27 @@
-fasm
+
+ Compile via LLVM
+ dynamic
+ -fasm
+
+
Omit code generation
- mode
+ dynamic
+ -
+
+
+
+ Generate byte-code
+ dynamic
+ -
+
+
+
+ Generate object code
+ dynamic
-
@@ -1293,6 +1790,12 @@
+
+ Generate a shared library (as opposed to an executable)
+ dynamic
+ -
+
+
Generate position-independent code (where available)
static
@@ -1305,6 +1808,13 @@
-
+
+ Selects one of a number of modes for finding shared
+ libraries at runtime.
+ static
+ -
+
+
name
On Darwin/MacOS X only, link in the framework name.
This option corresponds to the option for Apple's Linker.
@@ -1351,6 +1861,21 @@
-
+ ,
+ Control whether the RTS behaviour can be tweaked via command-line
+ flags and the GHCRTS environment
+ variable. Using none means no RTS flags can be given; some means only a minimum of safe options can be given (the default), and all (or no argument at all) means that all RTS flags are permitted.
+ dynamic
+ -
+
+
+
+ Set the default RTS options to
+ opts.
+ dynamic
+ -
+
+
Omit linking
dynamic
@@ -1380,6 +1905,39 @@
static
-
+
+
+ Enable runtime event tracing
+ static
+ -
+
+
+
+ Do not generate a manifest file (Windows only)
+ dynamic
+ -
+
+
+
+ Do not embed the manifest in the executable (Windows only)
+ dynamic
+ -
+
+
+
+ Don't generate an import library for a DLL (Windows only)
+ dynamic
+ -
+
+
+ path
+ Set the install name (via -install_name passed to Apple's
+ linker), specifying the full install path of the library file. Any libraries
+ or executables that link with it later will pick up that path as their
+ runtime search location for it. (Darwin/MacOS X only)
+ dynamic
+ -
+
@@ -1419,6 +1977,18 @@
Use cmd as the C compiler
dynamic
-
+
+ cmd
+ Use cmd as the LLVM optimiser
+ dynamic
+ -
+
+
+ cmd
+ Use cmd as the LLVM compiler
+ dynamic
+ -
+
cmd
@@ -1457,12 +2027,21 @@
dynamic
-
+
+ cmd
+ Use cmd as the program for
+ embedding manifests on Windows.
+ dynamic
+ -
+
+
+
@@ -1513,6 +2092,18 @@
-
+ option
+ pass option to the LLVM optimiser
+ dynamic
+ -
+
+
+ option
+ pass option to the LLVM compiler
+ dynamic
+ -
+
+
option
pass option to the mangler
dynamic
@@ -1537,8 +2128,8 @@
-
- option
- pass option to the dependency generator
+ option
+ pass option to windres.
dynamic
-
@@ -1562,6 +2153,14 @@
Reverse
+
+
+
+ (x86 only) Use SSE2 for floating point
+ dynamic
+ -
+
+
@@ -1594,7 +2193,7 @@
Generate .hcr external Core files
- static
+ dynamic
-
@@ -1680,12 +2279,24 @@
-
+
+ Dump after instrumentation for program coverage
+ dynamic
+ -
+
+
Dump inlining info
dynamic
-
+
+ Dump LLVM intermediate code
+ dynamic
+ -
+
+
Dump occurrence analysis output
dynamic
@@ -1716,6 +2327,18 @@
-
+
+ Dump rule firing info
+ dynamic
+ -
+
+
+
+ Dump detailed rule firing info
+ dynamic
+ -
+
+
Dump rules
dynamic
@@ -1728,6 +2351,12 @@
-
+
+ Dump output from each simplifier phase
+ dynamic
+ -
+
+
Dump output from each simplifier iteration
dynamic
@@ -1741,7 +2370,7 @@
- Dump TH splided expressions, and what they evaluate to
+ Dump TH spliced expressions, and what they evaluate to
dynamic
-
@@ -1806,12 +2435,36 @@
-
+
+ Suppress unsolicited debugging output
+ static
+ -
+
+
Turn on debug printing (more verbose)
static
-
+
+ Suppress the printing of uniques in debug output (easier to use diff.
+ static
+ -
+
+
+
+ Suppress the printing of coercions in Core dumps to make them shorter.
+ static
+ -
+
+
+
+ Suppress the printing of module qualification prefixes in Core dumps to make them easier to read.
+ static
+ -
+
+
Don't output pragma info in dumps
static
@@ -1871,12 +2524,6 @@
dynamic
-
-
-
- Enable unregisterised compilation
- static
- -
-
@@ -1909,12 +2556,6 @@
-
-
- Don't share specialisations of overloaded functions
- static
- -
-
-
Set simplification history size
static
@@ -1933,8 +2574,8 @@
-
-
- Turn off printing of binding results in GHCi
+
+ Turn off the GHCi sandbox. Means computations are run in teh main thread, rather than a forked thread.
dynamic
-
@@ -1956,7 +2597,6 @@ Misc: