[m-rev.] for review: disable tagged trail at configuration time

Mark Brown mark at csse.unimelb.edu.au
Tue Jan 22 06:47:58 AEDT 2008


On 22-Jan-2008, Julien Fischer <juliensf at csse.unimelb.edu.au> wrote:
>
> Estimated hours taken: 0.5
> Branches: main
>
> Add a configuration option for disabling the use of tagged trail entries.


> Index: runtime/mercury_trail.h
> ===================================================================
> RCS file: 
> /home/mercury/mercury1/repository/mercury/runtime/mercury_trail.h,v
> retrieving revision 1.27
> diff -u -r1.27 mercury_trail.h
> --- runtime/mercury_trail.h	21 Jan 2008 03:51:26 -0000	1.27
> +++ runtime/mercury_trail.h	21 Jan 2008 12:44:15 -0000
> @@ -214,7 +215,7 @@
>  typedef void MR_untrail_func_type(void *datum, MR_untrail_reason);
>
>  struct MR_TrailEntry_Struct {
> -#if !(MR_USE_TAGGED_TRAIL)
> +#if !(MR_USE_TAGGED_TRAIL) || defined(MR_FORCE_NO_TAGGED_TRAIL)
>      MR_trail_entry_kind MR_entry_kind;
>  #endif
>      union {
> @@ -234,7 +235,7 @@
>  ** DO NOT ACCESS THE FIELDS DIRECTLY.
>  */
>
> -#if MR_USE_TAGGED_TRAIL
> +#if MR_USE_TAGGED_TRAIL && !defined(MR_FORCE_NO_TAGGED_TRAIL)
>    #define MR_func_trail_tag MR_mktag(MR_func_entry)
>    #define MR_value_trail_tag    MR_mktag(MR_val_entry)

You should change the definition of MR_USE_TAGGED_TRAIL instead, that way
the logic only needs to be written once.  E.g.:

#define MR_USE_TAGGED_TRAIL (!MR_FORCE_NO_TAGGED_TRAIL && ... )

Cheers,
Mark.

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