[gclist] Re: PPC & GC, or GC and threads

John R Levine johnl@iecc.com
Tue, 27 Jan 1998 12:10:01 -0500 (EST)


> Indeed. Our Algol 68 and Fortran 90 compilers were designed with an 
> integrated precise garbage collector (of the mark and sweep variety). 

Are they intended to work in an environment with threads or asynchronous
interrupts?  I would expect that the code generation is a lot easier if the
compiler can assume that it controls when allocation or GC might happen. 

The examples that provoked this discussion looked to me like they were of 
the form:

	move xxx, R1
	; *** R1 now contains some but not all of the bits of a pointer
	op   yyy, R1,R1
	; R1 now contains a valid pointer

There's only a problem if a GC happens to occur between those two
instructions.  Lacking threads or interrupts, the only time pointers all need
to be valid is at a procedure call, it should be easy enough to make that
happen. 

Regards,
John Levine, johnl@iecc.com, Primary Perpetrator of "The Internet for Dummies",
Information Superhighwayman wanna-be, http://iecc.com/johnl, Sewer Commissioner
Finger for PGP key, f'print = 3A 5B D0 3F D9 A0 6A A4  2D AC 1E 9E A6 36 A3 47