head	1.26;
access;
symbols
	codegen2-regalloc:1.26.0.14
	codegen2:1.26.0.12
	codegen2-no-regalloc:1.26
	opt-regalloc3-merge2:1.26
	opt-sideffect-merge1:1.26
	opt-regalloc3-merge1:1.26
	opt-regalloc3:1.26.0.10
	opt-regalloc3-base:1.26
	opt-sideffect:1.26.0.8
	opt-sideffect-base:1.26
	new-regalloc-thursday:1.26
	codegen2-thursday:1.26
	new-regalloc:1.26.0.6
	new-regalloc-base:1.26
	opt-deadcode:1.26.0.4
	opt-deadcode-base:1.26
	opt-const:1.26.0.2
	opt-const-base:1.26
	opt-copyprop:1.25.0.4
	opt-copyprop-base:1.25
	reg_alloc_branch:1.25.0.2
	reg_alloc_base:1.25
	opt-cse:1.24.0.4
	codegen1_branch:1.24.0.2
	codegen1_base:1.24
	syntax_split_merge2:1.22.4.3
	syntax_split:1.22.0.4
	syntax_split_base:1.22
	java_deadline:1.22.2.6.0.2
	java_deadline_branch:1.22.2.6
	java:1.22.0.2
	java_base:1.22
	semantics_branch:1.21.0.2
	semantics_base:1.21
	recovery_branch:1.12.0.2
	recovery_base:1.12
	parser:1.5.0.2
	parser_base:1.5;
locks; strict;
comment	@# @;


1.26
date	96.12.04.08.43.39;	author daveg;	state Exp;
branches;
next	1.25;

1.25
date	96.11.20.19.52.27;	author hartmans;	state Exp;
branches;
next	1.24;

1.24
date	96.11.08.02.27.29;	author hartmans;	state Exp;
branches;
next	1.23;

1.23
date	96.11.07.21.58.53;	author hartmans;	state Exp;
branches;
next	1.22;

1.22
date	96.10.08.05.53.09;	author hartmans;	state Exp;
branches
	1.22.2.1
	1.22.4.1;
next	1.21;

1.21
date	96.10.07.02.15.10;	author hartmans;	state Exp;
branches
	1.21.2.1;
next	1.20;

1.20
date	96.10.07.00.54.05;	author hartmans;	state Exp;
branches;
next	1.19;

1.19
date	96.10.06.23.52.14;	author daveg;	state Exp;
branches;
next	1.18;

1.18
date	96.10.06.23.03.27;	author hartmans;	state Exp;
branches;
next	1.17;

1.17
date	96.10.06.22.05.03;	author daveg;	state Exp;
branches;
next	1.16;

1.16
date	96.10.06.20.59.04;	author daveg;	state Exp;
branches;
next	1.15;

1.15
date	96.10.06.07.47.04;	author daveg;	state Exp;
branches;
next	1.14;

1.14
date	96.10.06.03.45.52;	author daveg;	state Exp;
branches;
next	1.13;

1.13
date	96.10.05.21.36.44;	author hartmans;	state Exp;
branches;
next	1.12;

1.12
date	96.10.05.05.06.39;	author daveg;	state Exp;
branches;
next	1.11;

1.11
date	96.10.05.02.28.45;	author daveg;	state Exp;
branches;
next	1.10;

1.10
date	96.10.05.01.07.02;	author jered;	state Exp;
branches;
next	1.9;

1.9
date	96.10.04.23.07.30;	author jered;	state Exp;
branches;
next	1.8;

1.8
date	96.10.03.03.29.27;	author daveg;	state Exp;
branches;
next	1.7;

1.7
date	96.10.01.21.11.07;	author daveg;	state Exp;
branches;
next	1.6;

1.6
date	96.09.28.18.53.34;	author hartmans;	state Exp;
branches;
next	1.5;

1.5
date	96.09.19.07.20.22;	author hartmans;	state Exp;
branches;
next	1.4;

1.4
date	96.09.19.04.25.25;	author hartmans;	state Exp;
branches;
next	1.3;

1.3
date	96.09.18.08.42.18;	author hartmans;	state Exp;
branches;
next	1.2;

1.2
date	96.09.18.08.22.00;	author daveg;	state Exp;
branches;
next	1.1;

1.1
date	96.09.18.07.27.32;	author daveg;	state Exp;
branches;
next	;

1.21.2.1
date	96.10.08.05.57.19;	author hartmans;	state Exp;
branches;
next	;

1.22.2.1
date	96.10.20.04.51.00;	author nathanw;	state Exp;
branches;
next	1.22.2.2;

1.22.2.2
date	96.10.23.05.44.41;	author hartmans;	state Exp;
branches;
next	1.22.2.3;

1.22.2.3
date	96.10.23.06.45.50;	author hartmans;	state Exp;
branches;
next	1.22.2.4;

1.22.2.4
date	96.10.23.12.42.58;	author hartmans;	state Exp;
branches;
next	1.22.2.5;

1.22.2.5
date	96.10.23.13.30.59;	author hartmans;	state Exp;
branches;
next	1.22.2.6;

1.22.2.6
date	96.10.23.18.57.47;	author daveg;	state Exp;
branches;
next	;

1.22.4.1
date	96.11.03.06.52.09;	author hartmans;	state Exp;
branches;
next	1.22.4.2;

1.22.4.2
date	96.11.07.03.00.42;	author hartmans;	state Exp;
branches;
next	1.22.4.3;

1.22.4.3
date	96.11.07.21.44.51;	author hartmans;	state Exp;
branches;
next	;


desc
@@


1.26
log
@uniquiefied names of globals and non-adt procs
@
text
@Wed Dec  4 03:31:15 1996  David D Golombek  <daveg@@mit.edu>

	* statics.clu: uniqueified names of globals and non-adt procs.

Fri Nov  8 09:59:09 1996  Sam Hartman  <hartmans@@mit.edu>

	* parser.clucc (expr_prim): snull wants the location, not its own
 	operator token.

Thu Nov  7 15:31:48 1996  Sam Hartman  <hartmans@@mit.edu>

	* Makefile: Add additional sources.

	* statics.clu: Fix to hopefully deal with multiple reuse of
 	parameters.

	* parser.clucc (param_decl): New production for parameter lists.

Wed Nov  6 00:56:50 1996  Sam Hartman  <hartmans@@mit.edu>

	* statics.clu: Pass cstate into location_to_expr

Sun Nov  3 00:42:54 1996  Sam Hartman  <hartmans@@mit.edu>

	* parser.clucc (simple_expr): Convert locations to expressions.

Tue Oct  8 01:33:28 1996  Sam Hartman  <hartmans@@mit.edu>

	* statics.clu: Return type invalid is *not* an internal error.
	Update new so matchall returned on error instead of undef

Sun Oct  6 20:48:07 1996  Sam Hartman  <hartmans@@mit.edu>

	* statics.clu(proc_decl):  Doubly unwind parameter list.
	Also, add arrayref

Sun Oct  6 19:51:31 1996  David D Golombek  <daveg@@mit.edu>

	* statics.clu: worked on proc_decl

Sun Oct  6 19:01:12 1996  Sam Hartman  <hartmans@@mit.edu>

	* statics.clu (statics): Return symlist from make_decls

Sun Oct  6 16:54:25 1996  David D Golombek  <daveg@@mit.edu>

	* Makefile: uses state.lib, types.equ

	* parser.clucc: changed is_valid_attribs to is_valid_types,
	 set_scope to set_proc_scope, and test on validity of inherited
	 type in adt's.  Changed check_adt to is_in_adt.

	* statics.clu: fix lots more code bugs.  Changed check_adt to 
	is_in_adt. 

Sun Oct  6 03:45:06 1996  David D Golombek  <daveg@@iced.MIT.EDU>

	* parser.clucc: more work on adt rules

	* statics.clu: fixed code bugs, reindented

Sat Oct  5 23:39:36 1996  David D Golombek  <daveg@@planet-zorp.MIT.EDU>

	* parser.clucc: Proc and adt related changes

	* statics.clu: added empty_ident_list and make_null_attribs

Sat Oct  5 17:35:45 1996  Sam Hartman  <hartmans@@mit.edu>

	* Makefile: Remove attribs.clu and compiler_state.clu to better
 	places.

Sat Oct  5 00:59:45 1996  David D Golombek  <daveg@@planet-zorp.MIT.EDU>

	* main.clu: used compiler_state$create
	
	* recover.clu: removed decl rule, not used

	* parser.clucc: separated global and local decls
	
Fri Oct  4 22:27:43 1996  David D Golombek  <daveg@@planet-zorp.MIT.EDU>

	* recover.clu: added to repository
	* Makefile: added recovery.clu

Fri Oct  4 19:05:57 1996  Jered J Floyd  (jered@@vorlon)

	* parser.clucc: Added EQ_OP. Added comments for static semantics.
	(proc_def): Started adding actions for rules.

Wed Oct  2 23:28:15 1996  David D Golombek  <daveg@@planet-zorp.MIT.EDU>

	* attribs.clu: changed get_desc to unparse to deal with recovery

Tue Oct  1 17:09:12 1996  David D Golombek  <daveg@@planet-zorp.MIT.EDU>

	* attribs.clu: added make_undef, temporarily added desc to rep 
	to store string.

	* lrmachine.clu: updated with staff version, using our recovery method.

	* compiler_state.clu: added create and set_error_flag

Sat Sep 28 14:27:21 1996  Sam Hartman  <hartmans@@mit.edu>

	* Makefile (EQUS): Use token.equ from scanner directory

	* parser.clucc (program): Disallow empty files.
	(opt_statements): New production to deal with optional statements.
	(statement): s/statements/opt_statements

Thu Sep 19 03:16:27 1996  Sam Hartman  <hartmans@@mit.edu>

	* parser.clucc (expr_un): Fix so that two unary expressions can be
 	used.

Wed Sep 18 04:36:43 1996  Sam Hartman  <hartmans@@mit.edu>

	* parser.clucc (proc_def_list): Don't require semi.
	(start): jhbrown strongly suggest that we have a start symbol that
 	only has one production.  I see no reason to disagree.

Wed Sep 18 03:23:38 1996  David D Golombek  <daveg@@planet-zorp.MIT.EDU>

	* parser.clucc: made Program rule non-recursive

	* Changelog: created this file

	* Makefile: added rules for parser.clu, token.equ

	* main.clu: added exception handler for lrparser call

	* attribs.clu: added return statements

@


1.25
log
@Somehow, this didn't make it in;
note the that the change did, not the ChangeLog.

Fix isnull so it takes the right tokens.
@
text
@d1 4
@


1.24
log
@* a compiling parser
@
text
@d1 5
@


1.23
log
@Merge  in and retire syntax_split
@
text
@d3 5
@


1.22
log
@Check in  bug fixes to rmove a few
internal errors showing up failed test cases.
@
text
@d1 12
@


1.22.4.1
log
@Checkpoing for backup purposes.
@
text
@a0 4
Sun Nov  3 00:42:54 1996  Sam Hartman  <hartmans@@mit.edu>

	* parser.clucc (simple_expr): Convert locations to expressions.

@


1.22.4.2
log
@* implement fieldref and
arrayref

* attempt to deal with variable declaration
@
text
@a0 4
Wed Nov  6 00:56:50 1996  Sam Hartman  <hartmans@@mit.edu>

	* statics.clu: Pass cstate into location_to_expr

@


1.22.4.3
log
@* Try to get parameter list declared.
@
text
@a0 4
Thu Nov  7 15:31:48 1996  Sam Hartman  <hartmans@@mit.edu>

	* parser.clucc (param_decl): New production for parameter lists.

@


1.22.2.1
log
@First (large) commit of java codegen
@
text
@a0 9
Sun Oct 20 00:48:07 1996  Nathan J. Williams  <nathanw@@ludicrous-speed.ai.mit.edu>

	* Create syntax.clu
	* Makefile: add javagen.clu
	* parser.clucc: Rearrange a bunch of things to java-codegen
	* statics.clu: Make some functions call javagen functions
	               Move  non-rule-checking functions to syntax.clu
	

@


1.22.2.2
log
@Use procedure$invokation  to generate code
to invoke the procedure so create and size work
@
text
@a0 9
Wed Oct 23 00:46:44 1996  Sam Hartman  <hartmans@@mit.edu>

	* javagen.clu (javagen): Change to call procedure$invokation

Fri Oct 11 20:51:34 1996  Sam Hartman  <hartmans@@mit.edu>

	* statics.clu: In fieldref, use type$equal not type$match. (merge me)


@


1.22.2.3
log
@* Open output file.
@
text
@a2 2
	* main.clu (scan_file): Open global output [merge me].

@


1.22.2.4
log
@call to output ADTs
@
text
@a2 2
	* javagen.clu (javagen): Fix up bug, add calls to output for adts.

@


1.22.2.5
log
@output_program support
@
text
@a2 2
	* output.clu (output): Add output_program method

@


1.22.2.6
log
@fixed new() calls
@
text
@a0 6
Wed Oct 23 14:56:03 1996  David D Golombek  <daveg@@planet-zorp.MIT.EDU>

	* javagen.clu (make_new_expr): got current adt out of cstate

	* statics.clu (is_in_adt): removed unused reference to t

@


1.21
log
@Support array references
@
text
@d1 5
@


1.21.2.1
log
@Merge in main line changes.
@
text
@a0 5
Tue Oct  8 01:33:28 1996  Sam Hartman  <hartmans@@mit.edu>

	* statics.clu: Return type invalid is *not* an internal error.
	Update new so matchall returned on error instead of undef

@


1.20
log
@Unroll parameter lists properly.
@
text
@d4 1
@


1.19
log
@worked on proc_decl
@
text
@d1 4
@


1.18
log
@Update statics$make_decls()
so it returns something.
@
text
@d1 4
@


1.17
log
@lots more random fixes such that it builds
@
text
@d1 4
@


1.16
log
@fixed lots of minor bugs in statics.clu, appropriate mods to Makefile,
a few related changes to parser.clucc, changing function names
@
text
@d7 1
a7 1
	 type in adt's.
d9 2
a10 1
	* statics.clu: fix lots more code bugs
@


1.15
log
@continued adt work, fixed minor coding bugs, reindented
@
text
@d1 10
@


1.14
log
@implemented most of proc and adt stuff
@
text
@d1 6
@


1.13
log
@Remove state files.
@
text
@d1 6
@


1.12
log
@Got error recovery working by: separating local and global decls,
using compiler_state$create in main
@
text
@d1 5
@


1.11
log
@added recover.clu
@
text
@d1 8
@


1.10
log
@Started adding actions to rules.
@
text
@d1 5
@


1.9
log
@Added comments where all the static semantics go.
Added EQOP. Yes, now.  No, really. You can soundly thwap me later, if
you'd like.
@
text
@d4 1
@


1.8
log
@changed get_desc to unparse to deal with recovery.clu
@
text
@d1 4
@


1.7
log
@attribs.clu, lrmachine.clu, compiler_state.clu changes
@
text
@d1 4
@


1.6
log
@Fix errors indicated by hidden test cases.

Look for token.equ in scanner directory.

  CVS:
----------------------------------------------------------------------
automatically CVS: CVS: Committing in .  CVS: CVS: Modified Files:
----------------------------------------------------------------------
@
text
@d1 9
@


1.5
log
@Fix unary operations
@
text
@d1 8
@


1.4
log
@Update grammar to have start symbol.

Get scanner from right place.
@
text
@d1 5
@


1.3
log
@Fix grammar bug (remove requirement for ; from proc_def_list for adts)
@
text
@d4 2
@


1.2
log
@made Program rule non-recursive
@
text
@d1 4
@


1.1
log
@initial checkin
@
text
@d3 2
@
