[m-dev.] for review: MLDS back-end: new grades & options

Mark Anthony BROWN dougl at cs.mu.OZ.AU
Tue Dec 7 17:44:12 AEDT 1999


Fergus Henderson writes:
> 
> Estimated hours taken: 3
> 
> Implement new grades and options for the MLDS back-end.
> 
> compiler/options.m:
> 	Rename --highlevel-c as --highlevel-code.
> 	Add new option --highlevel-data.
> 	
> compiler/mercury_compile.m:
> scripts/mgnuc.in:
> 	Convert the grade options --highlevel-code,
> 	--highlevel-data, and --gcc-nested-functions
> 	into C flags -DMR_HIGHLEVEL_CODE, -DMR_HIGHLEVEL_DATA,
> 	and -DMR_USE_GCC_NESTED_FUNCTIONS respectively.
> 
> compiler/handle_options.m:
> scripts/parse_grade_options.sh-subr:
> scripts/init_grade_options.sh-subr:

> scripts/final_grade_options.sh-subr:

There was no diff for that file.

> scripts/ml.in:
> 	Add new grades `hl', `hlc', `hl_nest', and `hlc_nest'.
> 	Add code to handle the new options and grades.
> 
> scripts/ml.in:
> 	If --high-level-code is set, then don't invoke the
> 	demangler, since it doesn't (yet) understand the new
> 	name mangling scheme.
> 
> Workspace: /d-drive/home/hg/fjh/mercury
> Index: compiler/handle_options.m
> ===================================================================
> RCS file: /home/mercury1/repository/mercury/compiler/handle_options.m,v
> retrieving revision 1.85
> diff -u -d -r1.85 handle_options.m
> --- compiler/handle_options.m	1999/11/15 00:57:36	1.85
> +++ compiler/handle_options.m	1999/12/06 10:06:54
> @@ -574,7 +578,7 @@
>  	% actually matters is for constructing the pathname for the
>  	% grade of the library, etc for linking (and installation).
>  :- type grade_component
> -	--->	gcc_ext		% gcc extensions -- see grade_component_table
> +	--->	gcc_ext		% gcc extensions etc. -- see grade_component_table

That line is now too long.

> Index: scripts/ml.in
> ===================================================================
> RCS file: /home/mercury1/repository/mercury/scripts/ml.in,v
> retrieving revision 1.74
> diff -u -d -r1.74 ml.in
> --- scripts/ml.in	1999/11/25 09:09:46	1.74
> +++ scripts/ml.in	1999/12/06 10:02:58
> @@ -558,6 +581,15 @@
>  
>  case "$MKFIFO" in
>      none) demangle=false ;;
> +esac
> +
> +#
> +# The MLDS (--high-level-code) back-end uses a different
> +# name mangling scheme which the current demangler doesn't
> +# know how to demangle.
> +#
> +case "$highlevel_code" in
> +    false) demangle=false ;;
>  esac

s/false)/true)/

Apart from that, the diff looks fine.

Cheers,
Mark.
-- 
Mark Brown, PhD student            )O+  |  "Another of Fortran's breakthroughs
(m.brown at cs.mu.oz.au)                   |  was the GOTO statement, which was...
Dept. of Computer Science and Software  |  uniquely simple and understandable"
Engineering, University of Melbourne    |              -- IEEE, 1994
--------------------------------------------------------------------------
mercury-developers mailing list
Post messages to:       mercury-developers at cs.mu.oz.au
Administrative Queries: owner-mercury-developers at cs.mu.oz.au
Subscriptions:          mercury-developers-request at cs.mu.oz.au
--------------------------------------------------------------------------



More information about the developers mailing list