summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--docs/users_guide/using-optimisation.rst12
1 files changed, 12 insertions, 0 deletions
diff --git a/docs/users_guide/using-optimisation.rst b/docs/users_guide/using-optimisation.rst
index 1cad51bb1b..48c1e6f3bb 100644
--- a/docs/users_guide/using-optimisation.rst
+++ b/docs/users_guide/using-optimisation.rst
@@ -578,6 +578,18 @@ list.
that have an INLINABLE pragma (:ref:`inlinable-pragma`) will be
specialised as well.
+.. ghc-flag:: -fspecialise-aggressively
+
+ :default: off
+
+ By default only type class methods and methods marked ``INLINABLE`` or
+ ``INLINE`` are specialised. This flag will specialise any overloaded function
+ regardless of size if its unfolding is available. This flag is not
+ included in any optimisation level as it can massively increase code
+ size. It can be used in conjunction with :ghc-flag:`-fexpose-all-unfoldings`
+ if you want to ensure all calls are specialised.
+
+
.. ghc-flag:: -fcross-module-specialise
:default: on