From: Ian Lynagh Date: Fri, 26 Sep 2008 20:38:32 +0000 (+0000) Subject: Add an example of how to use SCCs to the user guide X-Git-Url: http://git.megacz.com/?a=commitdiff_plain;h=0c12697ef809ab47dd10b6e292fe42140af72c3f;p=ghc-hetmet.git Add an example of how to use SCCs to the user guide --- diff --git a/docs/users_guide/Makefile b/docs/users_guide/Makefile index 0657f4a..86504b3 100644 --- a/docs/users_guide/Makefile +++ b/docs/users_guide/Makefile @@ -7,3 +7,7 @@ INSTALL_XML_DOC = users_guide include $(TOP)/mk/bindist.mk include $(TOP)/mk/target.mk + +html:: + cp prof_scc.png users_guide/ + diff --git a/docs/users_guide/prof_scc.png b/docs/users_guide/prof_scc.png new file mode 100644 index 0000000..5e4157d Binary files /dev/null and b/docs/users_guide/prof_scc.png differ diff --git a/docs/users_guide/profiling.xml b/docs/users_guide/profiling.xml index 51ae6f7..f0d96ba 100644 --- a/docs/users_guide/profiling.xml +++ b/docs/users_guide/profiling.xml @@ -266,6 +266,22 @@ MAIN MAIN 0 0.0 0.0 100.0 100.0 far to the right as possible when parsing. (SCC stands for "Set Cost Centre"). + Here is an example of a program with a couple of SCCs: + + +main :: IO () +main = do let xs = {-# SCC "X" #-} [1..1000000] + let ys = {-# SCC "Y" #-} [1..2000000] + print $ last xs + print $ last $ init xs + print $ last ys + print $ last $ init ys + + + which gives this heap profile when run: + + +