Re: Looking for a garbage collection paper

gah4 <gah4@u.washington.edu>
Fri, 23 Sep 2022 12:33:21 -0700 (PDT)

          From comp.compilers

Related articles
Looking for a garbage collection paper spibou@gmail.com (Spiros Bousbouras) (2022-09-20)
Re: Looking for a garbage collection paper robert@prino.org (Robert Prins) (2022-09-21)
Re: Looking for a garbage collection paper spibou@gmail.com (Spiros Bousbouras) (2022-09-23)
Re: Looking for a garbage collection paper gah4@u.washington.edu (gah4) (2022-09-23)
Re: Looking for a garbage collection paper drb@ihatespam.msu.edu (2022-09-23)
Re: Looking for a garbage collection paper tkoenig@netcologne.de (Thomas Koenig) (2022-09-29)
Re: Looking for a garbage collection paper gah4@u.washington.edu (gah4) (2022-09-29)
Re: Looking for a garbage collection paper gah4@u.washington.edu (gah4) (2022-09-29)
| List of all articles for this month |

From: gah4 <gah4@u.washington.edu>
Newsgroups: comp.compilers
Date: Fri, 23 Sep 2022 12:33:21 -0700 (PDT)
Organization: Compilers Central
References: 22-09-011 22-09-012 22-09-013
Injection-Info: gal.iecc.com; posting-host="news.iecc.com:2001:470:1f07:1126:0:676f:7373:6970"; logging-data="17209"; mail-complaints-to="abuse@iecc.com"
Keywords: GC, history, comment
Posted-Date: 23 Sep 2022 15:52:28 EDT
In-Reply-To: 22-09-013

On Friday, September 23, 2022 at 11:33:30 AM UTC-7, Spiros Bousbouras wrote:


> > and for the next colour: cur_col = (cur_col + 1) mod 3
> >
> > Sources available @ <https://prino.neocities.org/zOS/zOS-Tools.html>


> If it were nothing more than that , the book would not have called it
> ingenious. Obviously it will have to fit with the rest of the algorithm
> without breaking the invariants which guarantee correctness. It also
> says "a single instruction". I don't think that
> cur_col = (cur_col + 1) mod 3
> can be implemented in a single instruction in common hardware.


(snip)


> [Hm, you're right, x+1 mod 3 is not a likely instruction. -John]


Maybe not common hardware today, but 50 years ago?


It would seem more likely on a machine with a word size a
multiple of 3, with 36 bit words not so rare 50 years ago.


The PDP-10 byte addressing instructions allow bytes
between 1 and 36 bits. I never learned all the tricks with them,
but if you use 12 bit bytes, the bit offset will cycle 0, 12, 24.


That is, you can sequentially address thirds of
the 36 bit words.


I did do PDP-10 assembly programming, but not quite enough
to learn all the tricks.
[I did a lot of PDP-8 and PDP-10 programming and I am pretty sure
there was no way to do x+1 mod 3 in a single instruction, not even
with tricky IDIVI with an indexed immediate operand. -John]


Post a followup to this message

Return to the comp.compilers page.
Search the comp.compilers archives again.