[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Array Register Analog in MCL?
- To: JCMA@ai.mit.edu (John C. Mallery), info-mcl@digitool.com
- Subject: Re: Array Register Analog in MCL?
- From: reti@cambridge.apple.com (Kalman Reti)
- Date: Mon, 15 May 1995 09:14:12 -0500
- Sender: owner-info-mcl@digitool.com
At 20:12 5/13/95, John C. Mallery wrote:
>Is there something in MCL that is analogous to array registers on the Lisp
>Machine?
The short answer is no. If you want un-bounds-checked memory to hold
non-lisp items (e.g. pixels, machine integers, etc.) you can always allocate
Mac memory and refer to it with assembly (LAP) instructions...
>
>What is needed is a aref that works on one dimensional arrays and does not
>perform
>bounds each reference. This provides an optimization when the calling code has
>already determined the array length.
FYI, the facility on the lisp machine didn't prevent bounds checking; that was
still done on each reference. What was prevented was decoding the array
header to get the information on what the bounds were. The array "registers" were stack locations where this already decoded information
was kept.
Of course, since arrays could both change representation and move about
due to GC, this was a little more complicated than that.