[m-rev.] for review: remove support for `.rt' grades

Julien Fischer juliensf at csse.unimelb.edu.au
Wed Jul 25 17:34:20 AEST 2007


Estimated hours taken: 1
Branches: main

Remove support for the reserve tag (.rt) grades.
These were only ever needed to support the implementation of Herbrand
variables in (older versions of) HAL.

NOTE: this change removes the .rt grade, the undocumented
reserve_tag pragma is unchanged.

runtime/mercury_grade.h:
 	Do not handle the .rt component.  Rather than renumbering the
 	subsequent grade parts here I have documented that grade part 8
         (formerly .rt) is unused.

runtime/mercury_tags.h:
runtime/mercury_type_info.h:
runtime/mercury_conf_param.h:
 	Conform to the above change.

compiler/compile_target_code.m:
compiler/handle_options.m:
compiler/options.m:
compiler/make_tags.m:
compiler/prog_type.m:
 	Remove the `--reserve-tag' option and modify any code
 	that relied upon it.  Such code is largely unchanged
 	since it is still required for the implementation of the
 	reserve_tag pragma.

doc/user_guide.texi:
 	Delete documentation for `--reserve-tag'.

scripts/canonical_grade.sh-subr:
scripts/init_grade_otpions.sh-subr:
scripts/mgnuc.in:
scripts/parse_grade_options.sh-subr:
 	Remove support for the `.rt' grade component.

NEWS:
 	Announce that .rt grades are no longer supported.

extras/trailed_update/var.m:
extras/trailed_update/samples/Mmakefile:
extras/trailed_update/tests/Mmakefile:
 	Update some documentation.

tests/debugger/Mmakefile:
tests/tabling/Mmakefile:
 	Delete special handling for .rt grades.

Julien.

Index: NEWS
===================================================================
RCS file: /home/mercury/mercury1/repository/mercury/NEWS,v
retrieving revision 1.471
diff -u -r1.471 NEWS
--- NEWS	25 Jul 2007 06:12:17 -0000	1.471
+++ NEWS	25 Jul 2007 07:24:58 -0000
@@ -179,6 +179,8 @@

  Changes to the Mercury compiler:

+* Support for the reserve tag grades has been removed.
+
  * We have added an Erlang back-end.

  * In parallel grades we now support thread-local trailing.
Index: compiler/compile_target_code.m
===================================================================
RCS file: /home/mercury/mercury1/repository/mercury/compiler/compile_target_code.m,v
retrieving revision 1.115
diff -u -r1.115 compile_target_code.m
--- compiler/compile_target_code.m	14 Jul 2007 02:32:41 -0000	1.115
+++ compiler/compile_target_code.m	25 Jul 2007 07:24:58 -0000
@@ -619,14 +619,6 @@
          UseTrail = no,
          UseTrailOpt = ""
      ),
-    globals.io_lookup_bool_option(reserve_tag, ReserveTag, !IO),
-    (
-        ReserveTag = yes,
-        ReserveTagOpt = "-DMR_RESERVE_TAG "
-    ;
-        ReserveTag = no,
-        ReserveTagOpt = ""
-    ),
      globals.io_lookup_bool_option(use_minimal_model_stack_copy,
          MinimalModelStackCopy, !IO),
      globals.io_lookup_bool_option(use_minimal_model_own_stacks,
@@ -764,7 +756,6 @@
          ExtendOpt,
          Target_DebugOpt, LL_DebugOpt, DeclDebugOpt, ExecTraceOpt,
          UseTrailOpt, 
-        ReserveTagOpt,
          MinimalModelOpt,
          SinglePrecFloatOpt,
          UseRegionsOpt,
Index: compiler/handle_options.m
===================================================================
RCS file: /home/mercury/mercury1/repository/mercury/compiler/handle_options.m,v
retrieving revision 1.306
diff -u -r1.306 handle_options.m
--- compiler/handle_options.m	14 Jul 2007 02:32:42 -0000	1.306
+++ compiler/handle_options.m	25 Jul 2007 07:24:58 -0000
@@ -2170,7 +2170,6 @@
      ;       comp_prof           % what profiling options to use
      ;       comp_term_size      % whether or not to record term sizes
      ;       comp_trail          % whether or not to use trailing
-    ;       comp_tag            % whether or not to reserve a tag
      ;       comp_minimal_model  % whether we set up for minimal model tabling
      ;       comp_single_prec_float
                                  % whether or not to use single precision
@@ -2455,9 +2454,6 @@
      % Trailing components.
  grade_component_table("tr", comp_trail, [use_trail - bool(yes)], no, yes).

-    % Tag reservation components.
-grade_component_table("rt", comp_tag, [reserve_tag - bool(yes)], no, yes).
-
      % Minimal model tabling components.
      % NOTE: we do not include `.mm' and `.dmm' in grade strings
      % because they are just synonyms for `.mmsc' and `.dmmsc'.
@@ -2540,7 +2536,6 @@
  grade_start_values(profile_calls - bool(no)).
  grade_start_values(profile_memory - bool(no)).
  grade_start_values(use_trail - bool(no)).
-grade_start_values(reserve_tag - bool(no)).
  grade_start_values(use_minimal_model_stack_copy - bool(no)).
  grade_start_values(use_minimal_model_own_stacks - bool(no)).
  grade_start_values(minimal_model_debug - bool(no)).
Index: compiler/make_tags.m
===================================================================
RCS file: /home/mercury/mercury1/repository/mercury/compiler/make_tags.m,v
retrieving revision 1.56
diff -u -r1.56 make_tags.m
--- compiler/make_tags.m	1 Nov 2006 06:32:55 -0000	1.56
+++ compiler/make_tags.m	25 Jul 2007 07:24:58 -0000
@@ -109,14 +109,11 @@

      % Determine if we need to reserve a tag for use by HAL's Herbrand
      % constraint solver. (This also disables enumerations and no_tag types.)
-    globals.lookup_bool_option(Globals, reserve_tag, GlobalReserveTag),
-    ReserveTag = GlobalReserveTag `or` ReservedTagPragma,
-
      (
-        ReserveTag = yes,
+        ReservedTagPragma = yes,
          InitTag = 1
      ;
-        ReserveTag = no,
+        ReservedTagPragma = no,
          InitTag = 0
      ),

@@ -127,7 +124,7 @@
          % must be constant, and we must be allowed to make unboxed enums.
          globals.lookup_bool_option(Globals, unboxed_enums, yes),
          ctors_are_all_constants(Ctors),
-        ReserveTag = no
+        ReservedTagPragma = no
      ->
          ( Ctors = [_] ->
              EnumDummy = is_dummy
@@ -140,7 +137,7 @@
          (
              % Try representing it as a no-tag type.
              type_with_constructors_should_be_no_tag(Globals, TypeCtor,
-                ReserveTag, Ctors, UserEqCmp, SingleFunc, SingleArg, _)
+                ReservedTagPragma, Ctors, UserEqCmp, SingleFunc, SingleArg, _)
          ->
              SingleConsId = make_cons_id_from_qualified_sym_name(SingleFunc,
                  [SingleArg]),
@@ -149,12 +146,12 @@
              NumTagBits = 0
          ->
              (
-                ReserveTag = yes,
+                ReservedTagPragma = yes,
                  % XXX Need to fix this.
                  % This occurs for the .NET and Java backends.
                  sorry("make_tags", "--reserve-tag with num_tag_bits = 0")
              ;
-                ReserveTag = no
+                ReservedTagPragma = no
              ),
              % Assign reserved addresses to the constants, if possible.
              separate_out_constants(Ctors, Constants, Functors),
Index: compiler/options.m
===================================================================
RCS file: /home/mercury/mercury1/repository/mercury/compiler/options.m,v
retrieving revision 1.579
diff -u -r1.579 options.m
--- compiler/options.m	20 Jul 2007 01:22:01 -0000	1.579
+++ compiler/options.m	25 Jul 2007 07:24:58 -0000
@@ -314,7 +314,6 @@
      ;       use_regions

      % Data representation compilation model options
-    ;       reserve_tag
      ;       tags
      ;       num_tag_bits
      ;       num_reserved_addresses
@@ -1111,7 +1110,6 @@
      type_layout                         -   bool(yes),

      % Data representation compilation model options
-    reserve_tag                         -   bool(no),
      pic_reg                             -   bool(no),
      tags                                -   string("low"),
      num_tag_bits                        -   int(-1),
@@ -1886,7 +1884,6 @@
  long_option("stack-segments",       stack_segments).
  long_option("use-regions",          use_regions).
  % Data representation options
-long_option("reserve-tag",          reserve_tag).
  long_option("use-minimal-model-stack_copy", use_minimal_model_stack_copy).
  long_option("use-minimal-model-own-stacks", use_minimal_model_own_stacks).
  long_option("minimal-model-debug",  minimal_model_debug).
@@ -3917,15 +3914,7 @@
          "--num-reserved-objects <n>    (This option is not for general use.)",
          "\tAllocate up to <n> global objects per type,",
          "\tfor representing nullary constructors",
-        "\t(constants) of discriminated union types.",
-
-
-        "--reserve-tag\t\t\t(grade modifier: `.rt')",
-        "\tReserve a tag in the data representation of the generated ",
-        "\tcode. This tag is intended to be used to give an explicit",
-        "\trepresentation to free variables.",
-        "\tThis is necessary for a seamless Herbrand constraint solver -",
-        "\tfor use with HAL."
+        "\t(constants) of discriminated union types."

          % The --conf-low-tag-bits option is reserved for use
          % by the `mmc' script; it is deliberately not documented.
Index: compiler/prog_type.m
===================================================================
RCS file: /home/mercury/mercury1/repository/mercury/compiler/prog_type.m,v
retrieving revision 1.36
diff -u -r1.36 prog_type.m
--- compiler/prog_type.m	20 Jul 2007 08:09:52 -0000	1.36
+++ compiler/prog_type.m	25 Jul 2007 07:24:58 -0000
@@ -1024,7 +1024,6 @@
          MaybeArgName),
      (
          ReserveTagPragma = no,
-        globals.lookup_bool_option(Globals, reserve_tag, no),
          globals.lookup_bool_option(Globals, unboxed_no_tag_types, yes)
      ;
          % Dummy types always need to be treated as no-tag types as the
Index: doc/user_guide.texi
===================================================================
RCS file: /home/mercury/mercury1/repository/mercury/doc/user_guide.texi,v
retrieving revision 1.537
diff -u -r1.537 user_guide.texi
--- doc/user_guide.texi	24 Jul 2007 09:01:46 -0000	1.537
+++ doc/user_guide.texi	25 Jul 2007 07:24:58 -0000
@@ -7146,9 +7146,6 @@
  @item Whether to enable the trail:
  @samp{tr} (the default is no trailing).

- at item Whether or not to reserve a tag in the data representation of the generated code:
- at samp{rt} (the default is no reserved tag)
-
  @item Whether to use single-precision representation of floating point values:
  @samp{spf} (the default is to use double-precision floats)

@@ -7271,9 +7268,6 @@
  @item @samp{.tsc}
  @code{--record-term-sizes-as-cells}.

- at item @samp{.rt}
- at code{--reserve-tag}.
-
  @item @samp{.spf}
  @code{--single-prec-float}

@@ -7641,17 +7635,6 @@
  latter are more efficient.

  @sp 1
- at item @code{--reserve-tag} (grades: any grade containing @samp{.rt})
- at findex --reserve-tag
- at cindex Tags
- at cindex Data representation
-Reserve a tag in the data representation of the generated
-code. This tag is intended to be used to give an explicit
-representation to free variables.
-This is necessary for a seamless Herbrand constraint solver ---
-for use with HAL.
-
- at sp 1
  @item @code{--no-type-layout}
  @findex --no-type-layout
  @findex --type-layout
Index: extras/trailed_update/var.m
===================================================================
RCS file: /home/mercury/mercury1/repository/mercury/extras/trailed_update/var.m,v
retrieving revision 1.28
diff -u -r1.28 var.m
--- extras/trailed_update/var.m	31 Aug 2006 11:09:51 -0000	1.28
+++ extras/trailed_update/var.m	25 Jul 2007 07:24:58 -0000
@@ -167,8 +167,6 @@
  %
  % Note that the way we use setarg assumes that the alias/1 functor of the
  % var_rep/1 type is represented using only a primary tag, not a secondary tag.
-% This assumption is false for .rt (--reserve-tag) grades, so this module
-% doesn't work in .rt grades.
  %
  %---------------------------------------------------------------------------%

Index: extras/trailed_update/samples/Mmakefile
===================================================================
RCS file: /home/mercury/mercury1/repository/mercury/extras/trailed_update/samples/Mmakefile,v
retrieving revision 1.17
diff -u -r1.17 Mmakefile
--- extras/trailed_update/samples/Mmakefile	22 Nov 2002 11:50:49 -0000	1.17
+++ extras/trailed_update/samples/Mmakefile	25 Jul 2007 07:24:58 -0000
@@ -36,17 +36,7 @@

  #-----------------------------------------------------------------------------#

-# The "vqueens" program does not work in ".rt" grades,
-# since it uses the "var" module which does not work in ".rt" grades.
-# The "interpreter" program does not work in ".rt" grades either,
-# due to a bug with unification of values of type "store__mutvar" in ".rt"
-# grades.
-ifeq "$(findstring .rt,$(GRADE))" ".rt"
-PROGS	= 
-else
  PROGS	=	interpreter vqueens
-endif
-
  DEPENDS =	$(PROGS:%=%.depend)
  CS	=	$(PROGS:%=%.c)
  RESS	=	$(PROGS:%=%.res)
Index: extras/trailed_update/tests/Mmakefile
===================================================================
RCS file: /home/mercury/mercury1/repository/mercury/extras/trailed_update/tests/Mmakefile,v
retrieving revision 1.11
diff -u -r1.11 Mmakefile
--- extras/trailed_update/tests/Mmakefile	11 Jan 2006 05:12:22 -0000	1.11
+++ extras/trailed_update/tests/Mmakefile	25 Jul 2007 07:24:58 -0000
@@ -32,14 +32,7 @@

  #-----------------------------------------------------------------------------#

-# The "var_test" program does not work in ".rt" grades,
-# since it uses the "var" module which does not work in ".rt" grades.
-ifeq "$(findstring .rt,$(GRADE))" ".rt"
-PROGS	=
-else
  PROGS	=	var_test 
-endif
-
  DEPENDS =	$(PROGS:%=%.depend)
  CS	=	$(PROGS:%=%.c)
  RESS	=	$(PROGS:%=%.res)
Index: runtime/mercury_conf_param.h
===================================================================
RCS file: /home/mercury/mercury1/repository/mercury/runtime/mercury_conf_param.h,v
retrieving revision 1.97
diff -u -r1.97 mercury_conf_param.h
--- runtime/mercury_conf_param.h	12 Jun 2007 06:39:19 -0000	1.97
+++ runtime/mercury_conf_param.h	25 Jul 2007 07:24:58 -0000
@@ -52,7 +52,6 @@
  ** MR_NO_TYPE_LAYOUT
  ** MR_BOXED_FLOAT
  ** MR_USE_TRAIL
-** MR_RESERVE_TAG
  ** MR_USE_MINIMAL_MODEL_STACK_COPY
  ** MR_USE_MINIMAL_MODEL_OWN_STACKS
  ** MR_MINIMAL_MODEL_DEBUG
Index: runtime/mercury_grade.h
===================================================================
RCS file: /home/mercury/mercury1/repository/mercury/runtime/mercury_grade.h,v
retrieving revision 1.71
diff -u -r1.71 mercury_grade.h
--- runtime/mercury_grade.h	12 Jun 2007 06:39:19 -0000	1.71
+++ runtime/mercury_grade.h	25 Jul 2007 07:24:58 -0000
@@ -217,13 +217,12 @@
    #define MR_GRADE_OPT_PART_7	MR_GRADE_OPT_PART_6
  #endif

-#ifdef MR_RESERVE_TAG
-  #define MR_GRADE_PART_8	MR_PASTE2(MR_GRADE_PART_7, _rt)
-  #define MR_GRADE_OPT_PART_8	MR_GRADE_OPT_PART_7 ".rt"
-#else
-  #define MR_GRADE_PART_8	MR_GRADE_PART_7
-  #define MR_GRADE_OPT_PART_8	MR_GRADE_OPT_PART_7
-#endif
+/*
+** Grade component 8 used to be used for the .rt (reserve tag) grades.
+** It is currently unused.
+*/
+#define MR_GRADE_PART_8		MR_GRADE_PART_7
+#define MR_GRADE_OPT_PART_8	MR_GRADE_OPT_PART_7

  #ifdef MR_USE_MINIMAL_MODEL_STACK_COPY
    #ifdef MR_USE_MINIMAL_MODEL_OWN_STACKS
Index: runtime/mercury_tags.h
===================================================================
RCS file: /home/mercury/mercury1/repository/mercury/runtime/mercury_tags.h,v
retrieving revision 1.25
diff -u -r1.25 mercury_tags.h
--- runtime/mercury_tags.h	8 Jun 2006 08:20:01 -0000	1.25
+++ runtime/mercury_tags.h	25 Jul 2007 07:24:58 -0000
@@ -102,12 +102,7 @@
  ** representation scheme used by compiler/make_tags.m.
  */

-#ifdef MR_RESERVE_TAG
-  #define MR_RAW_TAG_VAR               0     /* for Prolog-style variables */
-  #define MR_FIRST_UNRESERVED_RAW_TAG  1
-#else
-  #define MR_FIRST_UNRESERVED_RAW_TAG  0
-#endif
+#define MR_FIRST_UNRESERVED_RAW_TAG  0

  #if MR_TAGBITS == 0 && \
  	(MR_NUM_RESERVED_ADDRESSES > 0 || MR_NUM_RESERVED_OBJECTS > 0)
@@ -126,10 +121,6 @@
  #define	MR_TAG_NIL		MR_mktag(MR_RAW_TAG_NIL)
  #define	MR_TAG_CONS		MR_mktag(MR_RAW_TAG_CONS)

-#ifdef MR_RESERVE_TAG
-  #define MR_TAG_VAR		MR_mktag(MR_RAW_TAG_VAR)
-#endif
-
  #define	MR_UNIV_TAG		MR_mktag(MR_RAW_UNIV_TAG)

  #if MR_TAGBITS > 0 || (MR_TAGBITS == 0 && \
@@ -303,37 +294,11 @@
  ** be defined.
  */

-#ifdef MR_RESERVE_TAG
-
-	#define MR_CONVERT_C_ENUM_CONSTANT(x) \
-		MR_mkword(MR_mktag(MR_FIRST_UNRESERVED_RAW_TAG), MR_mkbody(x))
+#define MR_CONVERT_C_ENUM_CONSTANT(x)   (x)

-		/*
-		** We generate three enumeration constants:
-		** 	- the first one, with '_val' pasted at the end of its
-		**	  name, to give us a name for the current *unconverted*
-		**	  enumeration value
-		**	- the converted enumeration value
-		**	- a '_dummy' value to reset the unconverted enumeration
-		**	  value
-		*/
-	#define MR_DEFINE_MERCURY_ENUM_CONST(x)	\
-		MR_PASTE2(x, _val),	\
-		x = MR_CONVERT_C_ENUM_CONSTANT(MR_PASTE2(x, _val)), \
-		MR_PASTE2(x, _dummy) = MR_PASTE2(x, _val)
-
-	/* This is the inverse of MR_CONVERT_C_ENUM_CONSTANT */
-	#define MR_GET_ENUM_VALUE(x) \
-		MR_body((x), MR_mktag(MR_FIRST_UNRESERVED_RAW_TAG))
-#else
-
-	#define MR_CONVERT_C_ENUM_CONSTANT(x)   (x)
-
-	#define MR_DEFINE_MERCURY_ENUM_CONST(x)	x
+#define MR_DEFINE_MERCURY_ENUM_CONST(x)	x

-	#define MR_GET_ENUM_VALUE(x) (x)
-
-#endif
+#define MR_GET_ENUM_VALUE(x) (x)

  /*
  ** For each enumeration constant defined in the runtime (not in Mercury)
Index: runtime/mercury_type_info.h
===================================================================
RCS file: /home/mercury/mercury1/repository/mercury/runtime/mercury_type_info.h,v
retrieving revision 1.126
diff -u -r1.126 mercury_type_info.h
--- runtime/mercury_type_info.h	14 Jul 2007 02:33:20 -0000	1.126
+++ runtime/mercury_type_info.h	25 Jul 2007 07:24:58 -0000
@@ -421,34 +421,14 @@
  ** Definitions for handwritten code, mostly for mercury_compare_typeinfo.
  */

-#ifdef MR_RESERVE_TAG
-    /*
-    ** In reserve-tag grades, enumerations are disabled, so the
-    ** representation of the 'comparison_result' type is quite different.
-    ** The enumeration constants (for (<), (=) and (>)) wind up sharing
-    ** the same primary tag (1), and are all allocated secondary tags
-    ** starting from 0.
-    */
-  #define MR_ENUM_TAG         MR_mktag(MR_FIRST_UNRESERVED_RAW_TAG)
+#define MR_COMPARE_EQUAL    0
+#define MR_COMPARE_LESS     1
+#define MR_COMPARE_GREATER  2

-  #define MR_COMPARE_EQUAL    ((MR_Word) MR_mkword(MR_ENUM_TAG, MR_mkbody(0)))
-  #define MR_COMPARE_LESS     ((MR_Word) MR_mkword(MR_ENUM_TAG, MR_mkbody(1)))
-  #define MR_COMPARE_GREATER  ((MR_Word) MR_mkword(MR_ENUM_TAG, MR_mkbody(2)))
+#define MR_BOOL_NO          0
+#define MR_BOOL_YES         1

-  #define MR_BOOL_NO          ((MR_Word) MR_mkword(MR_ENUM_TAG, MR_mkbody(0)))
-  #define MR_BOOL_YES         ((MR_Word) MR_mkword(MR_ENUM_TAG, MR_mkbody(1)))
-
-  #define MR_UNBOUND          ((MR_Word) MR_mkword(MR_ENUM_TAG, MR_mkbody(0)))
-#else
-  #define MR_COMPARE_EQUAL    0
-  #define MR_COMPARE_LESS     1
-  #define MR_COMPARE_GREATER  2
-
-  #define MR_BOOL_NO          0
-  #define MR_BOOL_YES         1
-
-  #define MR_UNBOUND          0
-#endif
+#define MR_UNBOUND          0

  /*---------------------------------------------------------------------------*/

Index: scripts/canonical_grade.sh-subr
===================================================================
RCS file: /home/mercury/mercury1/repository/mercury/scripts/canonical_grade.sh-subr,v
retrieving revision 1.18
diff -u -r1.18 canonical_grade.sh-subr
--- scripts/canonical_grade.sh-subr	12 Jun 2007 06:39:20 -0000	1.18
+++ scripts/canonical_grade.sh-subr	25 Jul 2007 07:24:58 -0000
@@ -121,11 +121,6 @@
  	false)		;;
  esac

-case $reserve_tag in
-	true)		GRADE="$GRADE.rt" ;;
-	false)		;;
-esac
-
  case $use_minimal_model_stack_copy,$use_minimal_model_own_stacks,$minimal_model_debug in
  	true,false,false)	GRADE="$GRADE.mmsc" ;;
  	true,false,true)	GRADE="$GRADE.dmmsc" ;;
Index: scripts/init_grade_options.sh-subr
===================================================================
RCS file: /home/mercury/mercury1/repository/mercury/scripts/init_grade_options.sh-subr,v
retrieving revision 1.29
diff -u -r1.29 init_grade_options.sh-subr
--- scripts/init_grade_options.sh-subr	12 Jun 2007 06:39:20 -0000	1.29
+++ scripts/init_grade_options.sh-subr	25 Jul 2007 07:24:58 -0000
@@ -76,7 +76,6 @@
  record_term_sizes_as_words=false
  record_term_sizes_as_cells=false
  use_trail=false
-reserve_tag=false
  use_minimal_model_stack_copy=false
  use_minimal_model_own_stacks=false
  minimal_model_debug=false
Index: scripts/mgnuc.in
===================================================================
RCS file: /home/mercury/mercury1/repository/mercury/scripts/mgnuc.in,v
retrieving revision 1.120
diff -u -r1.120 mgnuc.in
--- scripts/mgnuc.in	12 Jun 2007 06:39:20 -0000	1.120
+++ scripts/mgnuc.in	25 Jul 2007 07:24:58 -0000
@@ -354,11 +354,6 @@
      false)          TRAIL_OPTS="" ;;
  esac

-case $reserve_tag in
-    true)           RESERVE_TAG_OPTS="-DMR_RESERVE_TAG" ;;
-    false)          RESERVE_TAG_OPTS="" ;;
-esac
-
  case $use_minimal_model_stack_copy,$use_minimal_model_own_stacks in
      true,true)      progname=`basename $0`
                      echo "$progname: can't enable both forms of minimal model tabling at once"
@@ -609,7 +604,6 @@
      $INLINE_ALLOC_OPTS\
      $TRAIL_OPTS\
      $RECORD_TERM_SIZE_OPTS\
-    $RESERVE_TAG_OPTS\
      $MINIMAL_MODEL_OPTS\
      $SINGLE_PREC_FLOAT_OPTS\
      $SPLIT_OPTS\
Index: scripts/parse_grade_options.sh-subr
===================================================================
RCS file: /home/mercury/mercury1/repository/mercury/scripts/parse_grade_options.sh-subr,v
retrieving revision 1.36
diff -u -r1.36 parse_grade_options.sh-subr
--- scripts/parse_grade_options.sh-subr	20 Jul 2007 01:22:05 -0000	1.36
+++ scripts/parse_grade_options.sh-subr	25 Jul 2007 07:24:58 -0000
@@ -150,11 +150,6 @@
      --no-use-trail)
          use_trail=false ;;

-    --reserve-tag)
-        reserve_tag=true ;;
-    --no-reserve-tag)
-        reserve_tag=false ;;
-
      --use-minimal-model-stack-copy)
          use_minimal_model_stack_copy=true ;;
      --no-use-minimal-model-stack-copy)
@@ -236,7 +231,6 @@
          record_term_sizes_as_words=false
          record_term_sizes_as_cells=false
          use_trail=false
-        reserve_tag=false
          use_minimal_model_stack_copy=false
          use_minimal_model_own_stacks=false
          minimal_model_debug=false
@@ -441,10 +435,6 @@
                      use_trail=true
                      ;;

-                rt)
-                    reserve_tag=true
-                    ;;
-
                  mm)
                      use_minimal_model_stack_copy=true
                      minimal_model_debug=false
Index: tests/debugger/Mmakefile
===================================================================
RCS file: /home/mercury/mercury1/repository/tests/debugger/Mmakefile,v
retrieving revision 1.137
diff -u -r1.137 Mmakefile
--- tests/debugger/Mmakefile	19 Jun 2007 03:12:49 -0000	1.137
+++ tests/debugger/Mmakefile	25 Jul 2007 07:24:58 -0000
@@ -144,12 +144,8 @@
  endif

  # The uci test matches its expected output only if the grade supports
-# enumerated types. Reserved tag grades do not.
-ifeq "$(findstring .rt,$(GRADE))" ""
-    ENUM_PROGS = uci
-else 
-    ENUM_PROGS =
-endif
+# enumerated types.  Currently all grades do support enumerated types.
+ENUM_PROGS = uci

  # The tests term_size_words and term_size_cells are each meant to be used
  # in their respective grades only.
Index: tests/tabling/Mmakefile
===================================================================
RCS file: /home/mercury/mercury1/repository/tests/tabling/Mmakefile,v
retrieving revision 1.43
diff -u -r1.43 Mmakefile
--- tests/tabling/Mmakefile	17 Apr 2007 05:38:22 -0000	1.43
+++ tests/tabling/Mmakefile	25 Jul 2007 07:24:58 -0000
@@ -121,20 +121,14 @@

  ALL_MINIMAL_PROGS = $(MINIMAL_NONLOOP_PROGS)

-# Tabling does not yet work in .rt grades
  ifneq "$(findstring .gc,$(GRADE))" ""
-	ifneq "$(findstring .rt,$(GRADE))" ""
-		PROGS0=
-		NONLOOP_PROGS=
-	else
-		ifneq "$(findstring mm,$(GRADE))" ""
-			PROGS0=$(ALL_SIMPLE_PROGS) $(ALL_MINIMAL_PROGS)
-			NONLOOP_PROGS=$(SIMPLE_NONLOOP_PROGS) \
+	ifneq "$(findstring mm,$(GRADE))" ""
+		PROGS0=$(ALL_SIMPLE_PROGS) $(ALL_MINIMAL_PROGS)
+		NONLOOP_PROGS=$(SIMPLE_NONLOOP_PROGS) \
  				$(MINIMAL_NONLOOP_PROGS)
-		else
-			PROGS0=$(ALL_SIMPLE_PROGS)
-			NONLOOP_PROGS=$(SIMPLE_NONLOOP_PROGS)
-		endif
+	else
+		PROGS0=$(ALL_SIMPLE_PROGS)
+		NONLOOP_PROGS=$(SIMPLE_NONLOOP_PROGS)
  	endif
  else
  	PROGS0=

--------------------------------------------------------------------------
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