[prev in list] [next in list] [prev in thread] [next in thread]
List: sbcl-devel
Subject: Re: [Sbcl-devel] A smallish project on store-barrier elision
From: Douglas Katzman via Sbcl-devel <sbcl-devel () lists ! sourceforge ! net>
Date: 2022-04-23 19:09:01
Message-ID: CAOrNasy+bp7S8rkepK9SUFvZmjnFyO2CoQOXB1iFKzQ7FWF_cw () mail ! gmail ! com
[Download RAW message or body]
[Attachment #2 (multipart/alternative)]
Absolutely. A similar situation occurs with setting a <k,v> in a
hash-table. That's slightly unique because it's only correct to collapse
barriers that mark the same card, which they will for even+odd vector
elements, or for anything non-vector. INSTANCE-SET-MULTIPLE is a hack that
deals with the latter case for structure constructors.
On Sat, Apr 23, 2022 at 2:54 PM Stas Boukarev <stassats@gmail.com> wrote:
> I'm thinking that emit-gc-store-barrier should get its own VOP, or a
> combination.
> To help with optimizing
>
> (setf (car x) y (cdr x) z)
>
> to issue only one store.
>
> With some pass before ir2-convert that inserts a barrier, and then
> some pass that can eliminate them.
>
>
[Attachment #5 (text/html)]
<div dir="ltr"><div dir="ltr">Absolutely. A similar situation occurs with setting a \
<k,v> in a hash-table. That's slightly unique because it's only \
correct to collapse barriers that mark the same card, which they will for even+odd \
vector elements, or for anything non-vector. INSTANCE-SET-MULTIPLE is a hack that \
deals with the latter case for structure constructors.</div><br><div \
class="gmail_quote"><div dir="ltr" class="gmail_attr">On Sat, Apr 23, 2022 at 2:54 PM \
Stas Boukarev <<a href="mailto:stassats@gmail.com">stassats@gmail.com</a>> \
wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px \
0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">I'm thinking that \
emit-gc-store-barrier should get its own VOP, or a<br> combination.<br>
To help with optimizing<br>
<br>
(setf (car x) y (cdr x) z)<br>
<br>
to issue only one store.<br>
<br>
With some pass before ir2-convert that inserts a barrier, and then<br>
some pass that can eliminate them.<br><br>
</blockquote></div></div>
_______________________________________________
Sbcl-devel mailing list
Sbcl-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/sbcl-devel
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic