freenode/#sbcl - IRC Chatlog
Search
20:20:55
phoe
I'm trying to look into https://github.com/cosmos72/stmx/blob/9a704e142216015783e8bb1f8d7cb8d90a14f6f9/asm/x86-32%2C64-insts.lisp#L134 not building on 1.4.10+
20:21:26
phoe
And it seems that this patch is kind-of trivial, since we want to emit a NOP instruction if I read the comments correctly.
20:24:49
AeroNotix
I suppose emit-skip uses the current ISA to lookup waht the NOP opcode is and nothing else/
20:29:48
pfdietz
An agreement on what users need, and what the sbcl devs are willing to provide. Just grabbing internal symbols is a source of endless breakage.
20:30:10
AeroNotix
pfdietz: yeah this was using an internal symbol, no fault of SBCL. Just trying to figure out how to fix it
20:30:41
phoe
pfdietz: I'm looking for a fix more than for an API - there's too many ::s in there for me to start doing anything about it right now
20:31:00
pfdietz
That users ARE grabbing internal symbols indicates it could be useful to provide something for them.
20:31:49
phoe
https://github.com/cosmos72/stmx/blob/9a704e142216015783e8bb1f8d7cb8d90a14f6f9/asm/x86-32%2C64-insts.lisp is full of SB-VM code that does assembly breadboard
20:31:51
Bike
in this case it's doing so because it's hooking into sbcl's code generator, which might be hard to keep up support for
20:35:42
phoe
renaming sb-vm::emit-skip to sb-vm:emit-skip doesn't fix the fact that the symbol EMIT-SKIP is nonetheless not found in the SB-VM package
20:36:24
AeroNotix
phoe: EMIT-SKIP was implemented in terms of a public API though. I've "borrowed" the original EMIT-SKIP code and it gets past that error now
21:17:14
pfdietz
Suggestion: at the end of building sbcl, unexport all symbols from "internal" packages.
21:18:04
|3b|
ACTION suspects that would make development annoying if there wasn't an easy way to undo it
21:18:32
pfdietz
No failures in random tests since yesterday, btw. And my workroom is toasty from four cores running them.
21:20:23
stassats
pfdietz: yeah, that class of bugs should have disappeared, just an instance of incomplete search and replace
21:25:20
|3b|
ACTION is mostly talking about things like recompiling internal functions from slime, etc
21:37:30
pfdietz
341 files, 2184 occurrences of uses of sb-.*:: (as seen by grep, excluding .sh and .html files)
21:42:21
pfdietz
31 internal packages are touched: sb-aclrepl sb-alien sb-assem sb-bignum sb-bsd-sockets sb-bsd-sockets-internal sb-c sb-cga sb-cover sb-debug sb-di sb-disassem sb-ext sb-fasl sb-gray sb-impl sb-int sb-interpreter sb-introspect sb-kernel sb-mop sb-pcl sb-posix sb-pretty sb-rt sb-sprof sb-sys sb-thread sb-unix sb-vm sb-win32
21:42:46
pfdietz
Not all those are internal, but each of those should be a reference to at least one unexported symbol
22:01:51
stassats
this one is approximately zero cost (just an additional unwind-protect at thread start up)
22:03:11
stassats
b) actually using unwind-protect to clear out the closed over block in (funcall (catch 't (block nil (throw 't (lambda () (return))))))
22:06:03
stassats
for b) maybe i can piggy back on the previous unwind and ask it to "please zero out this"
22:15:20
phoe
1.4.12 changelog: minor incompatible change: internal SBCL symbols are now inaccessible.
22:20:34
phoe
maybe changing emit-skip to %emit-skip would be a key to patching^Whacking around the current stmx issue
22:21:08
phoe
but it's too late for me to think about it now - I'll go to sleep for now and try in the morning
22:26:39
AeroNotix
I tried using %emit-skip, didn't work. Let me try that again though. I had the same error when using %emit-skip. Trying again.