X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=docs%2Fusers_guide%2Fflags.xml;h=3e70be999b8efa6280f291188e6def3599766d04;hb=1bf40a4b38180b8b1c1bdaf4919bc327d5b27abe;hp=9d7aa20753da3202e8f2a984a413fd730a34c117;hpb=ea283aa74e6fd2bec2b88eae19908bba903adea1;p=ghc-hetmet.git
diff --git a/docs/users_guide/flags.xml b/docs/users_guide/flags.xml
index 9d7aa20..3e70be9 100644
--- a/docs/users_guide/flags.xml
+++ b/docs/users_guide/flags.xml
@@ -35,7 +35,7 @@
mode-
-
+ verbose mode (equivalent to )dynamic
@@ -54,6 +54,18 @@
-
+ or
+ display the supported languages and language extensions
+ mode
+ -
+
+
+
+ display information about the compiler
+ mode
+ -
+
+ display GHC versionmode
@@ -78,6 +90,12 @@
-
+ size
+ Set the minimum heap size to size
+ static
+ -
+
+ Summarise timing stats for GHC (same as +RTS -tstderr)static
@@ -90,7 +108,7 @@
Which phases to run
-
+
@@ -141,7 +159,7 @@
Alternative modes of operation
-
+
@@ -157,25 +175,29 @@
- Interactive mode - normally used by just running ghci
+ Interactive mode - normally used by just running ghci;
+ see for details.mode-
- Build a multi-module Haskell program, automatically figuring out dependencies. Likely to be much easier, and faster, than using make.
+ Build a multi-module Haskell program, automatically figuring out dependencies. Likely to be much easier, and faster, than using make;
+ see for details..mode-
- Evaluate expr
+ Evaluate expr;
+ see for details.mode-
- Generate dependency information suitable for use in a Makefile.
+ Generate dependency information suitable for use in a Makefile;
+ see for details.mode-
@@ -186,7 +208,7 @@
Redirecting output
-
+
@@ -226,7 +248,7 @@
dir
- set output directory
+ set directory for object filesdynamic-
@@ -248,6 +270,12 @@
dynamic-
+
+ dir
+ set output directory
+ dynamic
+ -
+
@@ -255,9 +283,9 @@
Keeping intermediate files
-
+
-
+
@@ -270,20 +298,23 @@
-
+ or
+ retain intermediate .hc filesdynamic-
-
- retain intermediate .s files
+ or
+
+ retain intermediate LLVM .ll filesdynamic-
-
- retain intermediate .raw_s files
+ or
+
+ retain intermediate .s filesdynamic-
@@ -300,7 +331,7 @@
Temporary files
-
+
@@ -346,13 +377,13 @@
dir1:dir2:...add dir,
dir2, etc. to import path
- dynamic
+ static/:set-Empty the import directory list
- dynamic
+ static/:set-
@@ -397,17 +428,13 @@
file
- Read the interface in
- file and dump it as text to
- stdout.
- mode
- -
+ See .
-
+
Recompilation checking
@@ -437,9 +464,9 @@
-
+ Interactive-mode options
-
+
@@ -465,6 +492,44 @@
static-
+
+
+ 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
+ -
+
+
+
+ Turn off
+ implicit qualified import of everything in GHCi
+ dynamic
+ -
+
+
@@ -487,9 +552,15 @@
+ P
+ Compile to be part of package P
+ static
+ -
+
+ PExpose package P
- dynamic
+ static/:set-
@@ -501,24 +572,30 @@
nameHide package P
- dynamic
+ static/:set-nameIgnore package P
- dynamic
+ static/:set-fileLoad more packages from file
- dynamic
+ static-Don't load the user's package config file.
+ static
+ -
+
+
+
+ Don't automatically link in the haskell98 package.dynamic-
@@ -530,7 +607,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
@@ -544,62 +623,71 @@
-
+
+ Enable most language extensions
+ dynamic
+
+
+
+ Enable overlapping instancesdynamic
-
+
-
- Enable incoherent instances.
- Implies
+
+ Enable incoherent instances.
+ Implies dynamic
-
+
-
+ Enable undecidable instancesdynamic
-
+ n
- set the limit for context reduction
+ set the limit for context reduction. Default is 20.dynamic
-
+
-
+ Enable arrow
notation extensiondynamic
-
+
- or
- Enable foreign function interface (implied by
- )
+
+ Enable record
+ field disambiguationdynamic
-
+
-
- Enable generic classes
+
+ Enable foreign function interface (implied by
+ )dynamic
-
+
-
- Enable most language extensions
+
+ Deprecated, does nothing. No longer enables generic classes.
+ See also GHC's support for
+ generic programming.dynamic
-
+
-
+ Enable Implicit Parameters.
Implied by .dynamic
-
+
@@ -608,48 +696,342 @@
-
+ Don't implicitly import Preludedynamic
-
+
+
+
+
+ Employ rebindable syntax
+ dynamic
+
-
+ Disable the monomorphism restrictiondynamic
-
+
+
+
+
+ Disable support for n+k patterns
+ dynamic
+
-
+ Make pattern bindings polymorphicdynamic
-
+
-
+
+ Relaxed checking for mutually-recursive polymorphic functions
+ dynamic
+
+
+
+ Use GHCi's extended default rules in a normal moduledynamic
-
+
-
+
+ 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.
+
+ 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 monad 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 deriving for the Generic class.
+ 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 default signatures.
+ dynamic
+
-
- Enable bang patterns.
+
+ Enable multi parameter type classes.dynamic
-
+
+
+
+
+ Enable functional dependencies.
+ dynamic
+
+
+
+
+ Enable package-qualified imports.
+ dynamic
+
@@ -658,7 +1040,7 @@
Warnings
-
+
@@ -686,7 +1068,7 @@
- enable all warnings
+ enable almost all warnings (details in )dynamic
@@ -694,14 +1076,34 @@
make warnings fataldynamic
-
+ -Wwarn
+
+
+
+ make warnings non-fatal
+ dynamic
+ -Werror
+
+
+
+
+ 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 functions & types that are deprecated
+
+ warn about uses of commandline flags that are deprecateddynamic
-
+
@@ -719,6 +1121,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
@@ -727,6 +1144,13 @@
+
+ warn when a pattern match in a lambda expression or pattern binding could fail
+ dynamic
+
+
+
+ warn when a record update could faildynamic
@@ -734,6 +1158,13 @@
+
+ warn when a pattern binding looks lazy but must be strict
+ dynamic
+
+
+
+ warn when fields of a record are uninitialiseddynamic
@@ -741,6 +1172,14 @@
+
+ warn when an import declaration does not explicitly
+ list all the names brought into scope
+ dynamic
+
+
+
+ warn when class methods are undefineddynamic
@@ -755,6 +1194,13 @@
+
+ warn about polymorphic local bindings without signatures
+ dynamic
+
+
+
+ warn when names are shadoweddynamic
@@ -763,8 +1209,8 @@
- warn when the module contains "orphan" instance declarations
- or rewrite rules
+ warn when the module contains orphan instance declarations
+ or rewrite rulesdynamic
@@ -777,10 +1223,10 @@
-
- warn about lambda-patterns that can fail
+
+ warn if there are tabs in the source filedynamic
-
+
@@ -791,6 +1237,13 @@
+
+ warn when the Monomorphism Restriction is applied
+ dynamic
+
+
+
+ warn about bindings that are unuseddynamic
@@ -811,6 +1264,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
+
+
+
@@ -847,7 +1314,7 @@
-
+
Individual optimisations
@@ -867,7 +1334,7 @@
- Enable case-merging
+ Enable case-merging. Implied by .dynamic
@@ -880,8 +1347,15 @@
+
+ Share specialisations of overloaded functions (default)
+ dynamic
+
+
+
+
- Enable eta-reduction
+ Enable eta-reduction. Implied by .dynamic
@@ -901,14 +1375,6 @@
-
- Switch off all rewrite rules (including rules
- generated by automatic specialisation of overloaded functions)
- static
-
-
-
- Ignore assertions in the sourcedynamic
@@ -923,13 +1389,6 @@
-
- Tweak the liberate-case optimisation (default: 10)
- static
-
-
-
- Don't generate interface pragmasdynamic
@@ -945,6 +1404,14 @@
+
+ Set the number of phases for the simplifier (default 2).
+ Ignored with .
+ dynamic
+ -
+
+
+ Set the max iterations for the simplifierdynamic
@@ -960,31 +1427,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
+
@@ -1016,17 +1551,31 @@
-
+ Tweak unfolding settingsstatic
-
+
+
+
+
+
+ Turn off pre-inlining
+ static
+ -
+
+
+
+
+ Turn off the coercion optimiser
+ static
+ -
-
- Tweak unfolding settings
- static
-
+
+ Turn on eager blackholing
+ dynamic
+ -
@@ -1035,7 +1584,7 @@
Profiling options
-
+
@@ -1052,21 +1601,21 @@
Auto-add _scc_s to all
- exported functions
- static
+ exported functions not marked INLINE
+ dynamicAuto-add _scc_s to all
- top-level functions
- static
+ top-level functions not marked INLINE
+ dynamicAuto-add _scc_s to all CAFs
- static
+ dynamic
@@ -1077,7 +1626,7 @@
- Turn on ticky-ticky profiling
+ Turn on ticky-ticky profilingstatic-
@@ -1087,6 +1636,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
@@ -1163,33 +1745,6 @@
- C compiler options
-
-
-
-
-
-
- Flag
- Description
- Static/Dynamic
- Reverse
-
-
-
-
- file
- Include file when
- compiling the .hc file
- dynamic
- -
-
-
-
-
-
-
- Code generation options
@@ -1209,18 +1764,30 @@
Use the native code generatordynamic
- -fvia-C
+ -fllvm
-
- Compile via C
+
+ Compile via LLVMdynamic-fasmOmit code generation
- mode
+ dynamic
+ -
+
+
+
+ Generate byte-code
+ dynamic
+ -
+
+
+
+ Generate object code
+ dynamic-
@@ -1245,12 +1812,31 @@
+
+ Generate a shared library (as opposed to an executable)
+ dynamic
+ -
+
+
+
+ Generate position-independent code (where available)
+ static
+ -
+
+ Use dynamic Haskell libraries (if available)static-
+
+ Selects one of a number of modes for finding shared
+ libraries at runtime.
+ static
+ -
+
+ nameOn Darwin/MacOS X only, link in the framework name.
This option corresponds to the option for Apple's Linker.
@@ -1280,7 +1866,7 @@
- Set main function
+ Set main module and functiondynamic-
@@ -1297,6 +1883,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 linkingdynamic
@@ -1326,6 +1927,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
+ -
+
@@ -1365,6 +1999,24 @@
Use cmd as the C compilerdynamic-
+
+ cmd
+ Use cmd as the LLVM optimiser
+ dynamic
+ -
+
+
+ cmd
+ Use cmd as the LLVM compiler
+ dynamic
+ -
+
+
+
+ cmd
+ Use cmd as the splitter
+ dynamic
+ -cmd
@@ -1385,28 +2037,30 @@
-
- cmd
- Use cmd as the dependency generator
- dyanmic
- -
-
- cmdUse cmd as the pre-processor
(with only)dynamic-
+
+ cmd
+ Use cmd as the program for
+ embedding manifests on Windows.
+ dynamic
+ -
+
+
+
-
@@ -1454,6 +2108,24 @@
-
+ option
+ pass option to the LLVM optimiser
+ dynamic
+ -
+
+
+ option
+ pass option to the LLVM compiler
+ dynamic
+ -
+
+
+ option
+ pass option to the mangler
+ dynamic
+ -
+
+ optionpass option to the assemblerdynamic
@@ -1472,8 +2144,8 @@
-
- option
- pass option to the dependency generator
+ option
+ pass option to windres.dynamic-
@@ -1484,7 +2156,7 @@
Platform-specific options
-
+
@@ -1497,6 +2169,14 @@
Reverse
+
+
+
+ (x86 only) Use SSE2 for floating point
+ dynamic
+ -
+
+
@@ -1509,7 +2189,7 @@
-
+
External core file options
@@ -1529,7 +2209,7 @@
Generate .hcr external Core files
- static
+ dynamic-
@@ -1561,6 +2241,12 @@
-
+
+ Dump to files instead of stdout
+ dynamic
+ -
+
+ Dump assemblydynamic
@@ -1573,6 +2259,19 @@
-
+
+ Dump C-- output
+ dynamic
+ -
+
+
+
+ Print a one-line summary of the size of the Core program
+ at the end of the optimisation pipeline
+ dynamic
+ -
+
+ Dump output from CPR analysisdynamic
@@ -1609,35 +2308,77 @@
-
+
+ Dump after instrumentation for program coverage
+ dynamic
+ -
+
+ Dump inlining infodynamic-
+
+ Dump LLVM intermediate code
+ dynamic
+ -
+
+ Dump occurrence analysis outputdynamic-
+
+ Dump the results of C-- to C-- optimising passes
+ dynamic
+ -
+
+ Dump parse treedynamic-
+
+ Dump prepared core
+ dynamic
+ -
+
+ Dump renamer outputdynamic-
-
- Dump rules
+
+ Dump rule firing info
+ dynamic
+ -
+
+
+
+ Dump detailed rule firing infodynamic-
+
+
+ Dump rules
+ dynamic
+ -
+
+
+
+ Dump vectoriser input and output
+ dynamic
+ -
+ Dump final simplifier output
@@ -1645,6 +2386,12 @@
-
+
+ Dump output from each simplifier phase
+ dynamic
+ -
+
+ Dump output from each simplifier iterationdynamic
@@ -1657,6 +2404,12 @@
-
+
+ Dump TH spliced expressions, and what they evaluate to
+ dynamic
+ -
+
+ Dump final STGdynamic
@@ -1687,6 +2440,24 @@
-
+
+ Trace interface files
+ dynamic
+ -
+
+
+
+ Trace typechecker
+ dynamic
+ -
+
+
+
+ Trace vectoriser
+ dynamic
+ -
+
+ Trace renamerdynamic
@@ -1705,6 +2476,12 @@
-
+
+ Suppress unsolicited debugging output
+ static
+ -
+
+ Turn on debug printing (more verbose)static
@@ -1723,12 +2500,72 @@
-
+
+ Set the width of debugging output. For example
+ static
+ -
+
+
+
+ Print single alternative case expressions as strict lets.
+ static
+ -
+
+
+
+ In core dumps, suppress everything that is suppressable.
+ static
+ -
+
+
+
+ Suppress the printing of uniques in debug output (easier to use diff)
+ static
+ -
+
+
+
+ Suppress extended information about identifiers where they are bound
+ static
+ -
+
+
+
+ Suppress the printing of module qualification prefixes
+ static
+ -
+
+
+
+ Suppress type signatures
+ static
+ -
+
+
+
+ Suppress type applications
+ static
+ -
+
+
+
+ Suppress the printing of coercions in Core dumps to make them shorter
+ static
+ -
+
+ Dump haskell source statsdynamic-
+
+ C-- pass sanity checking
+ dynamic
+ -
+
+ STG pass sanity checkingdynamic
@@ -1753,16 +2590,22 @@
-
-
- Enable unregisterised compilation
- static
+
+ Print out each pass name as it happens
+ dynamic
+ -
+
+
+
+ Show statistics for fast string usage when finished
+ dynamic-
-
+
Misc compiler options
@@ -1778,12 +2621,6 @@
-
- ???
- static
- -
-
- Don't complain about .hi file mismatchesstatic
@@ -1796,12 +2633,6 @@
-
-
- Don't share specialisations of overloaded functions
- static
- -
-
- Set simplification history sizestatic
@@ -1814,14 +2645,8 @@
-
-
- Turn off assembly mangling (use instead)
- dynamic
- -
-
-
-
- Turn off printing of binding results in GHCi
+
+ Turn off the GHCi sandbox. Means computations are run in the main thread, rather than a forked thread.dynamic-
@@ -1843,7 +2668,6 @@ Misc: