Document the new RTS linker flags
[ghc-hetmet.git] / docs / users_guide / flags.xml
index 685dd7a..7a52bdf 100644 (file)
              <entry>static</entry>
              <entry>-</entry>
            </row>
+           <row>
+             <entry><option>-no-auto-link-packages</option></entry>
+             <entry>Don't automatically link in the haskell98 package.</entry>
+             <entry>dynamic</entry>
+             <entry>-</entry>
+           </row>
          </tbody>
        </tgroup>
       </informaltable>
              <entry><option>-XNoScopedTypeVariables</option></entry>
            </row>
            <row>
+             <entry><option>-XMonoLocalBinds</option></entry>
+             <entry>Enable <link linkend="mono-local-binds">do not generalise local bindings</link>.
+             </entry>
+             <entry>dynamic</entry>
+             <entry><option>-XNoMonoLocalBinds</option></entry>
+           </row>
+           <row>
              <entry><option>-XTemplateHaskell</option></entry>
              <entry>Enable <link linkend="template-haskell">Template Haskell</link>. 
                No longer implied by <option>-fglasgow-exts</option>.</entry>
              <entry><option>-XNoNewQualifiedOperators</option></entry>
            </row>
            <row>
+             <entry><option>-XExplicitForALl</option></entry>
+             <entry>Enable <link linkend="explicit-foralls">explicit universal quantification</link>.
+              Implied by <option>-XScopedTypeVariables</option>,
+           <option>-XLiberalTypeSynonyms</option>,
+           <option>-XRank2Types</option>,
+           <option>-XRankNTypes</option>,
+           <option>-XPolymorphicComponents</option>,
+           <option>-XExistentialQuantification</option>
+              </entry>
+             <entry>dynamic</entry>
+             <entry><option>-XNoExplicitForAll</option></entry>
+           </row>
+           <row>
              <entry><option>-XPolymorphicComponents</option></entry>
              <entry>Enable <link linkend="universal-quantification">polymorphic components for data constructors</link>.</entry>
              <entry>dynamic</entry>
            </row>
 
            <row>
+             <entry><option>-fspecialise</option></entry>
+             <entry>Turn on specialisation of overloaded functions. Implied by <option>-O</option>.</entry>
+             <entry>dynamic</entry>
+             <entry>-fno-specialise</entry>
+           </row>
+
+           <row>
              <entry><option>-ffull-laziness</option></entry>
              <entry>Turn on full laziness (floating bindings outwards). Implied by <option>-O</option>.</entry>
              <entry>dynamic</entry>
            </row>
 
            <row>
-             <entry><option>-frewrite-rules</option></entry>
+             <entry><option>-ffloat-in</option></entry>
+             <entry>Turn on the float-in transformation. Implied by <option>-O</option>.</entry>
+             <entry>dynamic</entry>
+             <entry>-fno-float-in</entry>
+           </row>
+
+           <row>
+             <entry><option>-fenable-rewrite-rules</option></entry>
              <entry>Switch on all rewrite rules (including rules
              generated by automatic specialisation of overloaded functions).
              Implied by <option>-O</option>. </entry>
              <entry>dynamic</entry>
-             <entry><option>-fno-rewrite-rules</option></entry>
+             <entry><option>-fno-enable-rewrite-rules</option></entry>
            </row>
 
            <row>
              <entry>-fno-strictness</entry>
            </row>
 
+            <row>
+              <entry><option>-fstrictness=before</option>=<replaceable>n</replaceable></entry>
+              <entry>Run an additional strictness analysis before simplifier
+phase <replaceable>n</replaceable></entry>
+              <entry>dynamic</entry>
+              <entry>-</entry>
+            </row>
+
            <row>
              <entry><option>-fspec-constr</option></entry>
              <entry>Turn on the SpecConstr transformation. Implied by <option>-O2</option>.</entry>
            </row>
            <row>
              <entry><option>-ticky</option></entry>
-             <entry>Turn on ticky-ticky profiling</entry>
+             <entry><link linkend="ticky-ticky">Turn on ticky-ticky profiling</link></entry>
              <entry>static</entry>
              <entry>-</entry>
            </row>
              <entry>-</entry>
            </row>
            <row>
+             <entry><option>-rtsopts</option></entry>
+             <entry>Allow the RTS behaviour to be tweaked via command-line
+          flags and the <literal>GHCRTS</literal> environment
+          variable.</entry>
+             <entry>dynamic</entry>
+             <entry>-</entry>
+           </row>
+           <row>
+             <entry><option>-with-rtsopts=<replaceable>opts</replaceable></option></entry>
+             <entry>Set the default RTS options to
+          <replaceable>opts</replaceable>.</entry>
+             <entry>dynamic</entry>
+             <entry>-</entry>
+           </row>
+           <row>
              <entry><option>-no-link</option></entry>
              <entry>Omit linking</entry>
              <entry>dynamic</entry>
              <entry>-</entry>
            </row>
            <row>
+             <entry><option>-eventlog</option></entry>
+             <entry>Enable runtime event tracing</entry>
+             <entry>static</entry>
+             <entry>-</entry>
+           </row>
+           <row>
              <entry><option>-fno-gen-manifest</option></entry>
              <entry>Do not generate a manifest file (Windows only)</entry>
              <entry>dynamic</entry>
              <entry>dynamic</entry>
              <entry>-</entry>
            </row>
+           <row>
+             <entry><option>-dylib-install-name</option> <replaceable>path</replaceable></entry>
+             <entry>Set the install name (via <literal>-install_name</literal> 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)</entry>
+             <entry>dynamic</entry>
+             <entry>-</entry>
+           </row>
          </tbody>
        </tgroup>
       </informaltable>
              <entry>Reverse</entry>
            </row>
          </thead>
+          <tbody>
+            <row>
+             <entry><option>-msse2</option></entry>
+             <entry>(x86 only) Use SSE2 for floating point</entry>
+             <entry>dynamic</entry>
+             <entry>-</entry>
+            </row>
+          </tbody>
          <tbody>
            <row>
              <entry><option>-monly-[432]-regs</option></entry>
              <entry>-</entry>
            </row>
            <row>
+             <entry><option>-dsuppress-coercions</option></entry>
+             <entry>Suppress the printing of coercions in Core dumps to make them shorter.</entry>
+             <entry>static</entry>
+             <entry>-</entry>
+           </row>
+           <row>
              <entry><option>-dppr-noprags</option></entry>
              <entry>Don't output pragma info in dumps</entry>
              <entry>static</entry>