From b6bc487e6d6d4b28e35ca368772deebe05eb5bb6 Mon Sep 17 00:00:00 2001
From: keithw <unknown>
Date: Tue, 6 Jul 1999 13:25:11 +0000
Subject: [PATCH] [project @ 1999-07-06 13:25:09 by keithw] Add -ddump-most and
 -ddump-all, with the obvious meanings.

---
 ghc/compiler/main/CmdLineOpts.lhs    | 62 +++++++++++++++-------------
 ghc/docs/users_guide/debugging.vsgml |  4 +-
 2 files changed, 36 insertions(+), 30 deletions(-)

diff --git a/ghc/compiler/main/CmdLineOpts.lhs b/ghc/compiler/main/CmdLineOpts.lhs
index 7066c1475be0..fa59c9251592 100644
--- a/ghc/compiler/main/CmdLineOpts.lhs
+++ b/ghc/compiler/main/CmdLineOpts.lhs
@@ -295,35 +295,39 @@ src_filename = case argv of
 
 \begin{code}
 -- debugging opts
-opt_D_dump_absC			= lookUp  SLIT("-ddump-absC")
-opt_D_dump_asm			= lookUp  SLIT("-ddump-asm")
-opt_D_dump_cpranal	        = lookUp  SLIT("-ddump-cpranal")
-opt_D_dump_deriv		= lookUp  SLIT("-ddump-deriv")
-opt_D_dump_ds			= lookUp  SLIT("-ddump-ds")
-opt_D_dump_flatC		= lookUp  SLIT("-ddump-flatC")
-opt_D_dump_foreign		= lookUp  SLIT("-ddump-foreign-stubs")
-opt_D_dump_inlinings		= lookUp  SLIT("-ddump-inlinings")
-opt_D_dump_occur_anal		= lookUp  SLIT("-ddump-occur-anal")
-opt_D_dump_parsed		= lookUp  SLIT("-ddump-parsed")
-opt_D_dump_realC		= lookUp  SLIT("-ddump-realC")
-opt_D_dump_rn			= lookUp  SLIT("-ddump-rn")
-opt_D_dump_simpl		= lookUp  SLIT("-ddump-simpl")
-opt_D_dump_simpl_iterations	= lookUp  SLIT("-ddump-simpl-iterations")
-opt_D_dump_spec			= lookUp  SLIT("-ddump-spec")
-opt_D_dump_stg			= lookUp  SLIT("-ddump-stg")
-opt_D_dump_stranal		= lookUp  SLIT("-ddump-stranal")
-opt_D_dump_tc			= lookUp  SLIT("-ddump-tc")
-opt_D_dump_rules		= lookUp  SLIT("-ddump-rules")
-opt_D_dump_usagesp              = lookUp  SLIT("-ddump-usagesp")
-opt_D_dump_cse 	                = lookUp  SLIT("-ddump-cse")
-opt_D_dump_worker_wrapper	= lookUp  SLIT("-ddump-workwrap")
-opt_D_show_passes		= lookUp  SLIT("-dshow-passes")
-opt_D_dump_rn_trace		= lookUp  SLIT("-ddump-rn-trace")
-opt_D_dump_rn_stats		= lookUp  SLIT("-ddump-rn-stats")
-opt_D_dump_simpl_stats		= lookUp  SLIT("-ddump-simpl-stats")
-opt_D_source_stats		= lookUp  SLIT("-dsource-stats")
-opt_D_verbose_core2core		= lookUp  SLIT("-dverbose-simpl")
-opt_D_verbose_stg2stg		= lookUp  SLIT("-dverbose-stg")
+opt_D_dump_all                  = lookUp  SLIT("-ddump-all")
+opt_D_dump_most                 = opt_D_dump_all  || lookUp  SLIT("-ddump-most")
+
+opt_D_dump_absC			= opt_D_dump_all  || lookUp  SLIT("-ddump-absC")
+opt_D_dump_asm			= opt_D_dump_all  || lookUp  SLIT("-ddump-asm")
+opt_D_dump_cpranal	        = opt_D_dump_most || lookUp  SLIT("-ddump-cpranal")
+opt_D_dump_deriv		= opt_D_dump_most || lookUp  SLIT("-ddump-deriv")
+opt_D_dump_ds			= opt_D_dump_most || lookUp  SLIT("-ddump-ds")
+opt_D_dump_flatC		= opt_D_dump_all  || lookUp  SLIT("-ddump-flatC")
+opt_D_dump_foreign		= opt_D_dump_most || lookUp  SLIT("-ddump-foreign-stubs")
+opt_D_dump_inlinings		= opt_D_dump_most || lookUp  SLIT("-ddump-inlinings")
+opt_D_dump_occur_anal		= opt_D_dump_most || lookUp  SLIT("-ddump-occur-anal")
+opt_D_dump_parsed		= opt_D_dump_most || lookUp  SLIT("-ddump-parsed")
+opt_D_dump_realC		= opt_D_dump_all  || lookUp  SLIT("-ddump-realC")
+opt_D_dump_rn			= opt_D_dump_most || lookUp  SLIT("-ddump-rn")
+opt_D_dump_simpl		= opt_D_dump_most || lookUp  SLIT("-ddump-simpl")
+opt_D_dump_simpl_iterations	= opt_D_dump_all  || lookUp  SLIT("-ddump-simpl-iterations")
+opt_D_dump_spec			= opt_D_dump_most || lookUp  SLIT("-ddump-spec")
+opt_D_dump_stg			= opt_D_dump_most || lookUp  SLIT("-ddump-stg")
+opt_D_dump_stranal		= opt_D_dump_most || lookUp  SLIT("-ddump-stranal")
+opt_D_dump_tc			= opt_D_dump_most || lookUp  SLIT("-ddump-tc")
+opt_D_dump_rules		= opt_D_dump_most || lookUp  SLIT("-ddump-rules")
+opt_D_dump_usagesp              = opt_D_dump_most || lookUp  SLIT("-ddump-usagesp")
+opt_D_dump_cse 	                = opt_D_dump_most || lookUp  SLIT("-ddump-cse")
+opt_D_dump_worker_wrapper	= opt_D_dump_most || lookUp  SLIT("-ddump-workwrap")
+opt_D_show_passes		= opt_D_dump_most || lookUp  SLIT("-dshow-passes")
+opt_D_dump_rn_trace		= opt_D_dump_all  || lookUp  SLIT("-ddump-rn-trace")
+opt_D_dump_rn_stats		= opt_D_dump_most || lookUp  SLIT("-ddump-rn-stats")
+opt_D_dump_simpl_stats		= opt_D_dump_most || lookUp  SLIT("-ddump-simpl-stats")
+opt_D_source_stats		= opt_D_dump_most || lookUp  SLIT("-dsource-stats")
+opt_D_verbose_core2core		= opt_D_dump_all  || lookUp  SLIT("-dverbose-simpl")
+opt_D_verbose_stg2stg		= opt_D_dump_all  || lookUp  SLIT("-dverbose-stg")
+
 opt_DoCoreLinting		= lookUp  SLIT("-dcore-lint")
 opt_DoStgLinting		= lookUp  SLIT("-dstg-lint")
 opt_DoUSPLinting		= lookUp  SLIT("-dusagesp-lint")
diff --git a/ghc/docs/users_guide/debugging.vsgml b/ghc/docs/users_guide/debugging.vsgml
index 6d14eb39a451..c3e7acf9a7fa 100644
--- a/ghc/docs/users_guide/debugging.vsgml
+++ b/ghc/docs/users_guide/debugging.vsgml
@@ -99,7 +99,9 @@ happening.
 <tag>@-ddump-<pass>@:</tag>
 <nidx>-ddump-&lt;pass&gt; options</nidx>
 Make a debugging dump after pass @<pass>@ (may be common enough to
-need a short form...).  Some of the most useful ones are:
+need a short form...).  You can get all of these at once (<em/lots/ of
+output) by using @-ddump-all@, or most of them with @-ddump-most@.
+Some of the most useful ones are:
 
 <descrip>
 <tag>@-ddump-rdr@:</tag> reader output (earliest stuff in the compiler)
-- 
GitLab