On Sun, Apr 3, 2011 at 8:51 PM, Matthew Mondor <mm_li...@pulsar-zone.net>wrote:

> Yes, I think that I now understand this.  It also appears that in some
> particular cases AREF access will be inlined at safety=0, which is a
> very nice thing too.
>

AREF is inlined in many cases, including multidimensional access, but the
level of inlining may vary. If you have a look at src/cmppolicy.lsp you will
find

(define-policy inline-accessors :off debug 2 :off space 3
  "Inline access to object slots, including conses and arrays")

(define-policy open-code-aref/aset :alias inline-accessors
  "Inline access to arrays")

This means AREF is always open-coded unless DEBUG >= 2. But open-coding only
means that AREF is translated into ROW-MAJOR-AREF and this one is only
inlined when safety settings are low and the type of the array is known in
advance.

Juanjo

-- 
Instituto de FĂ­sica Fundamental, CSIC
c/ Serrano, 113b, Madrid 28006 (Spain)
http://juanjose.garciaripoll.googlepages.com
------------------------------------------------------------------------------
Create and publish websites with WebMatrix
Use the most popular FREE web apps or write code yourself; 
WebMatrix provides all the features you need to develop and 
publish your website. http://p.sf.net/sfu/ms-webmatrix-sf
_______________________________________________
Ecls-list mailing list
Ecls-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ecls-list

Reply via email to