Re: master: x86-64: TRUNCATE using the Lemire, Kaser, Kurz transform

Douglas Katzman via Sbcl-commits <[email protected]> Sat, 18 Apr 2026 22:51:54 -0400
Newsgroups gmane.lisp.steel-bank.cvs,gmane.lisp.steel-bank.devel
Message-ID <CAOrNaszKPoFDfKaobEaR9Ld+8VX8yLf=EfoH2B5TmJYeH39F4Q@mail.gmail.com>
--===============5201170701124308666==
Content-Type: multipart/alternative; boundary="0000000000007505ce064fc74417"

--0000000000007505ce064fc74417
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Sat, Apr 18, 2026 at 10:40=E2=80=AFPM Stas Boukarev <[email protected]>=
 wrote:

> The VOP gets defeated by one of the 23 transforms, when (speed 3):
> https://github.com/sbcl/sbcl/blob/master/src/compiler/srctran.lisp#L5135
>
> Good catch.
Can we make that transform give-up if it knows that the quotient isn't
used, and that the backend supports fastrem and that the argument types
would be acceptable ?  Or should we try to just add a 24th transform that
(miraculously) is squeezed in between two other transforms?

--0000000000007505ce064fc74417
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div dir=3D"ltr"><div dir=3D"ltr"><br></div><br><div class=
=3D"gmail_quote"><div dir=3D"ltr" class=3D"gmail_attr">On Sat, Apr 18, 2026=
 at 10:40=E2=80=AFPM Stas Boukarev &lt;<a href=3D"mailto:[email protected]=
" target=3D"_blank">[email protected]</a>&gt; wrote:<br></div><blockquote =
class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-left:1px sol=
id rgb(204,204,204);padding-left:1ex">The VOP gets defeated by one of the 2=
3 transforms, when (speed 3):<br>
<a href=3D"https://github.com/sbcl/sbcl/blob/master/src/compiler/srctran.li=
sp#L5135" rel=3D"noreferrer" target=3D"_blank">https://github.com/sbcl/sbcl=
/blob/master/src/compiler/srctran.lisp#L5135</a><br>
<br></blockquote><div>Good catch.</div><div>Can we make that transform give=
-up if it knows that the quotient isn&#39;t used, and that the backend supp=
orts fastrem and that the argument types would be acceptable ?=C2=A0 Or sho=
uld we try to just add a 24th transform that (miraculously) is squeezed in =
between two other transforms?</div></div></div>
</div>

--0000000000007505ce064fc74417--


--===============5201170701124308666==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline


--===============5201170701124308666==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

_______________________________________________
Sbcl-commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/sbcl-commits

--===============5201170701124308666==--