[m-rev.] for review: infrastructure for libmer_ssdb

Peter Wang novalazy at gmail.com
Wed Oct 24 19:36:10 AEST 2007


On 2007-10-24, Julien Fischer <juliensf at csse.unimelb.edu.au> wrote:
> 
>  On Fri, 19 Oct 2007, Peter Wang wrote:
> 
> > Estimated hours taken: 8
> > Branches: main
> >
> > Update files as required for the addition of the new library `libmer_ssdb',
> > and make the changes to add a new grade component `ssdebug'.
...
> 
>  The documentation in doc/user_guide.texi and the usage message in 
>  compiler/options.m also need to updated for the new grade
>  component (albeit in commented-out form for now.)

Done.

Ie added --ss-debug as an alias for --ssdb for consistency with
--decl-debug.  It should probably be preferred everywhere.

> > Index: profiler/Mmakefile
> > ===================================================================
> > RCS file: /home/mercury/mercury1/repository/mercury/profiler/Mmakefile,v
> > retrieving revision 1.28
> > diff -u -r1.28 Mmakefile
> > --- profiler/Mmakefile	20 Jul 2007 01:22:05 -0000	1.28
> > +++ profiler/Mmakefile	19 Oct 2007 07:11:18 -0000
> > @@ -17,6 +17,8 @@
> > MAIN_TARGET=all
> > MERCURY_MAIN_MODULES=mercury_profile
> >
> > +# VPATH = $(LIBRARY_DIR) $(SSDB_DIR)
> > +
> 
>  Why is that commented out?
>  If it's intentional add a comment giving the reason.

Deleted.

Peter


only in patch2:
unchanged:
--- compiler/options.m	23 Oct 2007 08:32:01 -0000	1.593
+++ compiler/options.m	24 Oct 2007 07:39:24 -0000
@@ -1882,6 +1882,9 @@
 % (a) debugging
 long_option("debug",                exec_trace).
 long_option("decl-debug",           decl_debug).
+long_option("ssdb",                 source_to_source_debug).
+long_option("ss-debug",             source_to_source_debug).
+long_option("source-to-source-debug", source_to_source_debug).
     % (b) profiling
 long_option("profiling",            profiling).
 long_option("time-profiling",       time_profiling).
@@ -1914,8 +1917,6 @@
 long_option("use-regions",          use_regions).
 long_option("use-regions-debug",    use_regions_debug).
 long_option("use-regions-profiling",use_regions_profiling).
-long_option("ssdb",                 source_to_source_debug).
-long_option("source-to-source-debug", source_to_source_debug).
 % Data representation options
 long_option("use-minimal-model-stack_copy", use_minimal_model_stack_copy).
 long_option("use-minimal-model-own-stacks", use_minimal_model_own_stacks).
@@ -3729,6 +3730,10 @@
         "\tfor details.",
         "\tThis option is not yet supported for the `--high-level-code'",
         "\tback-ends."
+% XXX The source-to-source debugging transform is not ready for public
+% consumption.
+%       "--ss-debug\t\t\t\t(grade modifier: `.ssdebug')",
+%       "\tEnable the source-to-source debugging transform."
     ]),
     io.write_string("      Profiling\n"),
     write_tabbed_lines([
only in patch2:
unchanged:
--- doc/user_guide.texi	28 Sep 2007 04:57:54 -0000	1.546
+++ doc/user_guide.texi	24 Oct 2007 07:39:25 -0000
@@ -1819,6 +1819,8 @@
 with the exception of the subterm dependency tracking features,
 also works in the .debug grades.
 
+ at c XXX mention ssdebug grades when ready
+
 The two drawbacks of using a debugging grade
 are the large size of the resulting executables,
 and the fact that often you discover that you need to debug a big program
@@ -7131,6 +7133,7 @@
 @cindex .spf (grade modifier)
 @cindex .debug (grade modifier)
 @cindex .decldebug (grade modifier)
+ at c @cindex .ssdebug (grade modifier)
 @cindex .par (grade modifier)
 @cindex prof (grade modifier)
 @cindex memprof (grade modifier)
@@ -7142,6 +7145,7 @@
 @cindex spf (grade modifier)
 @cindex debug (grade modifier)
 @cindex decldebug (grade modifier)
+ at c @cindex ssdebug (grade modifier)
 @cindex par (grade modifier)
 @table @asis
 @item What target language to use, what data representation to use, and (for C) what combination of GNU C extensions to use:
@@ -7167,6 +7171,7 @@
 
 @item What debugging features to enable:
 @samp{debug} and @samp{decldebug} (the default is no debugging features).
+ at c XXX and @samp{ssdebug} 
 
 @item Whether to use a thread-safe version of the runtime environment:
 @samp{par} (the default is a non-thread-safe environment).
@@ -7293,6 +7298,9 @@
 @item @samp{.decldebug}
 @code{--decl-debug}.
 
+ at c @item @samp{.ssdebug}
+ at c @code{--ss-debug}.
+
 @end table
 
 @end table
@@ -7448,6 +7456,12 @@
 that allow subterm dependency tracking in the declarative debugger.
 This option is only supported by the low-level C back-end.
 
+ at c @sp 1
+ at c @item @code{--ss-debug} (grades: any grade containing @samp{.ssdebug})
+ at c @findex --ss-debug
+ at c @cindex Debugging
+ at c Enables the source-to-source debugging transform.
+
 @sp 1
 @item @code{--profiling}, @code{--time-profiling} (grades: any grade containing @samp{.prof})
 @cindex Profiling

--------------------------------------------------------------------------
mercury-reviews mailing list
Post messages to:       mercury-reviews at csse.unimelb.edu.au
Administrative Queries: owner-mercury-reviews at csse.unimelb.edu.au
Subscriptions:          mercury-reviews-request at csse.unimelb.edu.au
--------------------------------------------------------------------------



More information about the reviews mailing list