Fwd: mysterious darwin aarch64 bug

Andrew Wolven <[email protected]> Sun, 12 Jul 2026 10:49:35 -0500
Newsgroups gmane.lisp.steel-bank.devel
Message-ID <CANhGVvTFXfAzSSru5VawN0tB0A5hoPUmFrGNFkinTq+_+d9t0g@mail.gmail.com>
--===============4808511001381985701==
Content-Type: multipart/alternative; boundary="00000000000057f8df06566bec51"

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

I'm re-sending this message because it didn't seem to make it to the
mailing list.

But curiously, Hayley seemed to reference a nearly identical error message
in:

Subject: [Sbcl-devel] Get the encodable ranges right for SAP-REF-{8,
        16, 32}-C

And she mentioned a patch.  Is there any way I could get my hands on that
patch?

Thanks,
Andrew (clothespin)



---------- Forwarded message ---------
From: Andrew Wolven <[email protected]>
Date: Sat, Jul 11, 2026 at 12:02=E2=80=AFPM
Subject: mysterious darwin aarch64 bug
To: <[email protected]>


Hi.

I encountered this bug this morning, but I haven't really done a lot of
investigating.  It didn't seem like a normal Lisp error, so I thought I
would reach out just to see if anyone could shed some light on it before I
start going through a long process of working out what it is.

This is with generated code which also happens to use a metaclass, so it
very well could be something I am doing wrong.  A Windows "version" of this
code compiles and loads on Windows, although I had to recompile sbcl with a
quadrupled text space size.  But I am not sure that the text space size is
important here.  Here is a backtrace:

Invalid STR/LDR arguments: 1 #S(SB-ARM64-ASM::MEMORY-OPERAND
                                :BASE #<SB-C:TN t1[NL1] :NORMAL>
                                :OFFSET 16408
                                :MODE :OFFSET)
   [Condition of type SIMPLE-ERROR]

Restarts:
 0: [RETRY] Retry SLY mREPL evaluation request.
 1: [*ABORT] Return to SLY's top level.
 2: [ABORT] abort thread (#<THREAD tid=3D6147 "sly-channel-1-mrepl-remote-1=
"
RUNNING {70CD880323}>)

Backtrace:
 0: (SB-ARM64-ASM::EMIT-LOAD-STORE 0 1 #<SB-ASSEM:SEGMENT {7015885753}>
#<SB-C:TN t2[NL1] :NORMAL> #S(SB-ARM64-ASM::MEMORY-OPERAND :BASE #<SB-C:TN
t1[NL1] :NORMAL> :OFFSET 16408 :MODE :OFFSET))
 1: (SB-ASSEM::%ASSEMBLE #<SB-ASSEM:SEGMENT {7015885753}> (#<SB-ASSEM::STMT
IGNORE () {7015883D33}> . #<SB-ASSEM::STMT .ALIGN (4) {70158858A3}>))
 2: (SB-ASSEM:ASSEMBLE-SECTIONS #S(SB-ASSEM::ASMSTREAM :DATA-SECTION
(#<SB-ASSEM::STMT IGNORE () {7015883D33}> . #<SB-ASSEM::STMT .ALIGN (4)
{70158858A3}>) :CODE-SECTION (#1=3D#<SB-ASSEM::STMT IGNORE () {70..
 3: (SB-C::GENERATE-CODE #<SB-C:COMPONENT :NAME "DEFCLASS AST-CONTEXT"
{7015412AC3}>)
 4: (SB-C::%COMPILE-COMPONENT #<SB-C:COMPONENT :NAME "DEFCLASS AST-CONTEXT"
{7015412AC3}>)
 5: (SB-C::COMPILE-COMPONENT #<SB-C:COMPONENT :NAME "DEFCLASS AST-CONTEXT"
{7015412AC3}>)
 6: (SB-C::COMPILE-TOPLEVEL (#<SB-C::CLAMBDA :%SOURCE-NAME
SB-C::.ANONYMOUS. :%DEBUG-NAME "top level form" :KIND (TOPLEVEL) :TYPE
#<SB-KERNEL:BUILT-IN-CLASSOID FUNCTION (read-only)> :WHERE-FROM :DEFINED :.=
.
 7: (SB-C::CONVERT-AND-MAYBE-COMPILE (LET ((OLD #)) (SB-MOP:ENSURE-CLASS
(QUOTE CLANG::AST-CONTEXT) :METACLASS (QUOTE GHTO::C++-CLASS)
:DIRECT-SUPERCLASSES (QUOTE #) ...) (WHEN OLD (MAKE-INSTANCES-OBSOLET..
 8: (SB-C::PROCESS-TOPLEVEL-FORM (LET ((OLD #)) (SB-MOP:ENSURE-CLASS (QUOTE
CLANG::AST-CONTEXT) :METACLASS (QUOTE GHTO::C++-CLASS) :DIRECT-SUPERCLASSES
(QUOTE #) ...) (WHEN OLD (MAKE-INSTANCES-OBSOLETE OL..
 9: (SB-C::PROCESS-TOPLEVEL-FORM (GHTO::DEFCLASS CLANG::AST-CONTEXT
(LLVM::REF-COUNTED-BASE<CLANG.AST-CONTEXT>) ((GHTO::PTR-TYPE :INITFORM #
:ALLOCATION :CLASS) (GHTO::SIZEOF-TYPE :INITFORM # :ALLOCATION ..
10: ((LAMBDA (SB-KERNEL:FORM &KEY :CURRENT-INDEX &ALLOW-OTHER-KEYS) :IN
SB-C::SUB-COMPILE-FILE) (GHTO::DEFCLASS CLANG::AST-CONTEXT
(LLVM::REF-COUNTED-BASE<CLANG.AST-CONTEXT>) ((GHTO::PTR-TYPE :INITFORM # ..
11: (SB-C::%DO-FORMS-FROM-INFO #<FUNCTION (LAMBDA (SB-KERNEL:FORM &KEY
:CURRENT-INDEX &ALLOW-OTHER-KEYS) :IN SB-C::SUB-COMPILE-FILE) {70041B41AB}>
#<SB-C::SOURCE-INFO {70DDE30003}> SB-C::INPUT-ERROR-IN-CO..
12: ((LAMBDA NIL :IN SB-C::SUB-COMPILE-FILE))
13: ((FLET SB-C::WITH-IT :IN SB-C::%WITH-COMPILATION-UNIT))
14: (SB-C::SUB-COMPILE-FILE #<SB-C::SOURCE-INFO {70DDE30003}> NIL)
15: (COMPILE-FILE "~/clanglite2/clanglite-types.lisp" :OUTPUT-FILE ""
:VERBOSE NIL :PRINT NIL :EXTERNAL-FORMAT :DEFAULT :PROGRESS NIL :TRACE-FILE
NIL :BLOCK-COMPILE NIL :ENTRY-POINTS NIL :EMIT-CFASL NIL)
16: (LOAD-TEST)

If necessary I can upload the source code to my website for someone to
try.  But I just wanted to get a first impression here.

-AKW

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

<div dir=3D"ltr"><div dir=3D"ltr"><div dir=3D"ltr">I&#39;m re-sending this =
message because it didn&#39;t seem to make it to the mailing list.</div><di=
v dir=3D"ltr"><br></div><div dir=3D"ltr">But curiously, Hayley seemed to re=
ference a nearly identical error message in:</div><div dir=3D"ltr"><br></di=
v><div dir=3D"ltr">Subject: [Sbcl-devel] Get the encodable ranges right for=
 SAP-REF-{8,<br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 16, 32}-C</div><div dir=3D"ltr"=
><br></div><div>And she mentioned a patch.=C2=A0 Is there any way I could g=
et my hands on that patch?</div><div><br></div><div>Thanks,</div><div>Andre=
w (clothespin)</div><div dir=3D"ltr"><br></div><div dir=3D"ltr"><br></div><=
div dir=3D"ltr"><br><div class=3D"gmail_quote"><div dir=3D"ltr" class=3D"gm=
ail_attr">---------- Forwarded message ---------<br>From: <strong class=3D"=
gmail_sendername" dir=3D"auto">Andrew Wolven</strong> <span dir=3D"auto">&l=
t;<a href=3D"mailto:[email protected]" target=3D"_blank">[email protected]<=
/a>&gt;</span><br>Date: Sat, Jul 11, 2026 at 12:02=E2=80=AFPM<br>Subject: m=
ysterious darwin aarch64 bug<br>To:  &lt;<a href=3D"mailto:sbcl-bugs@lists-=
sourceforge.net" target=3D"_blank">[email protected]</a>&gt;<=
br></div><br><br><div dir=3D"ltr">Hi.<div><br></div><div>I encountered this=
 bug this morning, but I haven&#39;t really done a lot of investigating.=C2=
=A0 It didn&#39;t seem like a normal Lisp error, so I thought I would reach=
 out just to see if anyone could shed some light on it before I start going=
 through a long process of working out what it is.</div><div><br></div><div=
>This is with generated code which also happens to use a metaclass, so it v=
ery well could be something I am doing wrong.=C2=A0 A Windows &quot;version=
&quot; of this code compiles and loads on Windows, although I had to recomp=
ile sbcl with a quadrupled text space size.=C2=A0 But I am not sure that th=
e text space size is important here.=C2=A0 Here is a backtrace:</div><div><=
br></div><div>Invalid STR/LDR arguments: 1 #S(SB-ARM64-ASM::MEMORY-OPERAND<=
br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 :BASE #&lt;SB-C:TN t1[NL1] :NORMA=
L&gt;<br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 :OFFSET 16408<br>=C2=A0 =C2=
=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0 =C2=A0 :MODE :OFFSET)<br>=C2=A0 =C2=A0[Condition of ty=
pe SIMPLE-ERROR]<br><br>Restarts:<br>=C2=A00: [RETRY] Retry SLY mREPL evalu=
ation request.<br>=C2=A01: [*ABORT] Return to SLY&#39;s top level.<br>=C2=
=A02: [ABORT] abort thread (#&lt;THREAD tid=3D6147 &quot;sly-channel-1-mrep=
l-remote-1&quot; RUNNING {70CD880323}&gt;)<br><br>Backtrace:<br>=C2=A00: (S=
B-ARM64-ASM::EMIT-LOAD-STORE 0 1 #&lt;SB-ASSEM:SEGMENT {7015885753}&gt; #&l=
t;SB-C:TN t2[NL1] :NORMAL&gt; #S(SB-ARM64-ASM::MEMORY-OPERAND :BASE #&lt;SB=
-C:TN t1[NL1] :NORMAL&gt; :OFFSET 16408 :MODE :OFFSET))<br>=C2=A01: (SB-ASS=
EM::%ASSEMBLE #&lt;SB-ASSEM:SEGMENT {7015885753}&gt; (#&lt;SB-ASSEM::STMT I=
GNORE () {7015883D33}&gt; . #&lt;SB-ASSEM::STMT .ALIGN (4) {70158858A3}&gt;=
))<br>=C2=A02: (SB-ASSEM:ASSEMBLE-SECTIONS #S(SB-ASSEM::ASMSTREAM :DATA-SEC=
TION (#&lt;SB-ASSEM::STMT IGNORE () {7015883D33}&gt; . #&lt;SB-ASSEM::STMT =
.ALIGN (4) {70158858A3}&gt;) :CODE-SECTION (#1=3D#&lt;SB-ASSEM::STMT IGNORE=
 () {70..<br>=C2=A03: (SB-C::GENERATE-CODE #&lt;SB-C:COMPONENT :NAME &quot;=
DEFCLASS AST-CONTEXT&quot; {7015412AC3}&gt;)<br>=C2=A04: (SB-C::%COMPILE-CO=
MPONENT #&lt;SB-C:COMPONENT :NAME &quot;DEFCLASS AST-CONTEXT&quot; {7015412=
AC3}&gt;)<br>=C2=A05: (SB-C::COMPILE-COMPONENT #&lt;SB-C:COMPONENT :NAME &q=
uot;DEFCLASS AST-CONTEXT&quot; {7015412AC3}&gt;)<br>=C2=A06: (SB-C::COMPILE=
-TOPLEVEL (#&lt;SB-C::CLAMBDA :%SOURCE-NAME SB-C::.ANONYMOUS. :%DEBUG-NAME =
&quot;top level form&quot; :KIND (TOPLEVEL) :TYPE #&lt;SB-KERNEL:BUILT-IN-C=
LASSOID FUNCTION (read-only)&gt; :WHERE-FROM :DEFINED :..<br>=C2=A07: (SB-C=
::CONVERT-AND-MAYBE-COMPILE (LET ((OLD #)) (SB-MOP:ENSURE-CLASS (QUOTE CLAN=
G::AST-CONTEXT) :METACLASS (QUOTE GHTO::C++-CLASS) :DIRECT-SUPERCLASSES (QU=
OTE #) ...) (WHEN OLD (MAKE-INSTANCES-OBSOLET..<br>=C2=A08: (SB-C::PROCESS-=
TOPLEVEL-FORM (LET ((OLD #)) (SB-MOP:ENSURE-CLASS (QUOTE CLANG::AST-CONTEXT=
) :METACLASS (QUOTE GHTO::C++-CLASS) :DIRECT-SUPERCLASSES (QUOTE #) ...) (W=
HEN OLD (MAKE-INSTANCES-OBSOLETE OL..<br>=C2=A09: (SB-C::PROCESS-TOPLEVEL-F=
ORM (GHTO::DEFCLASS CLANG::AST-CONTEXT (LLVM::REF-COUNTED-BASE&lt;CLANG.AST=
-CONTEXT&gt;) ((GHTO::PTR-TYPE :INITFORM # :ALLOCATION :CLASS) (GHTO::SIZEO=
F-TYPE :INITFORM # :ALLOCATION ..<br>10: ((LAMBDA (SB-KERNEL:FORM &amp;KEY =
:CURRENT-INDEX &amp;ALLOW-OTHER-KEYS) :IN SB-C::SUB-COMPILE-FILE) (GHTO::DE=
FCLASS CLANG::AST-CONTEXT (LLVM::REF-COUNTED-BASE&lt;CLANG.AST-CONTEXT&gt;)=
 ((GHTO::PTR-TYPE :INITFORM # ..<br>11: (SB-C::%DO-FORMS-FROM-INFO #&lt;FUN=
CTION (LAMBDA (SB-KERNEL:FORM &amp;KEY :CURRENT-INDEX &amp;ALLOW-OTHER-KEYS=
) :IN SB-C::SUB-COMPILE-FILE) {70041B41AB}&gt; #&lt;SB-C::SOURCE-INFO {70DD=
E30003}&gt; SB-C::INPUT-ERROR-IN-CO..<br>12: ((LAMBDA NIL :IN SB-C::SUB-COM=
PILE-FILE))<br>13: ((FLET SB-C::WITH-IT :IN SB-C::%WITH-COMPILATION-UNIT))<=
br>14: (SB-C::SUB-COMPILE-FILE #&lt;SB-C::SOURCE-INFO {70DDE30003}&gt; NIL)=
<br>15: (COMPILE-FILE &quot;~/clanglite2/clanglite-types.lisp&quot; :OUTPUT=
-FILE &quot;&quot; :VERBOSE NIL :PRINT NIL :EXTERNAL-FORMAT :DEFAULT :PROGR=
ESS NIL :TRACE-FILE NIL :BLOCK-COMPILE NIL :ENTRY-POINTS NIL :EMIT-CFASL NI=
L)<br>16: (LOAD-TEST)</div><div><br></div><div>If necessary I can upload th=
e source code to my website for someone to try.=C2=A0 But I just wanted to =
get a first impression here.</div><div><br></div><div>-AKW</div></div>
</div></div>
</div>
</div>

--00000000000057f8df06566bec51--


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


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

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

--===============4808511001381985701==--