[m-rev.] diff: update IL backend to-do list.
Tyson Dowd
trd at cs.mu.OZ.AU
Wed May 9 03:32:56 AEST 2001
Hi,
===================================================================
Estimated hours taken: 0.5
Branches: main
compiler/mlds_to_il.m:
compiler/mlds_to_mcpp.m:
Update the to-do lists on these modules.
Index: compiler/mlds_to_il.m
===================================================================
RCS file: /home/mercury1/repository/mercury/compiler/mlds_to_il.m,v
retrieving revision 1.24
diff -u -r1.24 mlds_to_il.m
--- compiler/mlds_to_il.m 2001/05/08 13:37:43 1.24
+++ compiler/mlds_to_il.m 2001/05/08 17:29:29
@@ -21,12 +21,14 @@
%
% The IL backend TO-DO list:
%
+% [ ] advanced name mangling:
+% - optionally only mangle names when it is absolutely necessary
% [ ] solutions
-% [ ] floating point
% [ ] Type classes
-% - You need to know what module the instance declaration is given in.
-% - This involves module qualifying instance declarations.
-% - This has semantic complications that we have to ignore for now
+% - now work, but...
+% - type class hierarchies don't work due to unimplemented pragma
+% foreign code.
+% - should be implemented as interfaces
% [ ] RTTI (io__write -- about half the work required for this is done)
% [ ] High-level RTTI data
% [ ] Test unused mode (we seem to create a byref for it)
@@ -43,7 +45,6 @@
% [ ] nested modules need testing
% [ ] We generate too many castclasses, it would be good to check if we
% really to do it before generating it. Same with isinst.
-% [ ] Write line number information from contexts (in .il and .cpp files)
% [ ] Implement pragma export.
% [ ] Fix issues with abstract types so that we can implement C
% pointers as MR_Box rather than MR_Word.
@@ -51,7 +52,7 @@
% we should (this can occur in nondet C code).
% [ ] ml_gen_call_current_success_cont_indirectly should be merged with
% similar code for doing copy-in/copy-out.
-% [ ] figure out whether we need maxstack and fix it
+% [ ] generate maxstack correctly
% [ ] Try to use the IL bool type for the true/false rvals.
% [ ] Add an option to do overflow checking.
% [ ] Should replace hard-coded of int32 with a more abstract name such
Index: compiler/mlds_to_mcpp.m
===================================================================
RCS file: /home/mercury1/repository/mercury/compiler/mlds_to_mcpp.m,v
retrieving revision 1.2
diff -u -r1.2 mlds_to_mcpp.m
--- compiler/mlds_to_mcpp.m 2001/05/02 16:34:37 1.2
+++ compiler/mlds_to_mcpp.m 2001/05/08 17:29:22
@@ -8,6 +8,12 @@
% interface.
% Main author: trd.
%
+% To-do:
+%
+% [ ] Fix the output of contexts so that the context gets reset after the
+% user code.
+% [ ] Output contexts in more places, currently we don't do all of them.
+%
% This code converts the MLDS representation of foreign language code into MC++
:- module mlds_to_mcpp.
@@ -81,8 +87,6 @@
%-----------------------------------------------------------------------------%
- % XXX we don't output contexts correctly -- we need to write out the
- % original context at the end of the user's MC++ code.
:- pred generate_mcplusplus_code(mlds, io__state, io__state).
:- mode generate_mcplusplus_code(in, di, uo) is det.
generate_mcplusplus_code(MLDS) -->
--
Tyson Dowd #
# Surreal humour isn't everyone's cup of fur.
trd at cs.mu.oz.au #
http://www.cs.mu.oz.au/~trd #
--------------------------------------------------------------------------
mercury-reviews mailing list
post: mercury-reviews at cs.mu.oz.au
administrative address: owner-mercury-reviews at cs.mu.oz.au
unsubscribe: Address: mercury-reviews-request at cs.mu.oz.au Message: unsubscribe
subscribe: Address: mercury-reviews-request at cs.mu.oz.au Message: subscribe
--------------------------------------------------------------------------
More information about the reviews
mailing list