Add a coercion optimiser, to reduce the size of coercion terms
[ghc-hetmet.git] / docs / users_guide / flags.xml
index b87044f..5eb6025 100644 (file)
              <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>-</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>