freenode/#clasp - IRC Chatlog
Search
5:00:19
drmeister
To identify within every class the offset of every pointer that needs to be fixed by the garbage collector. I've just added the ability to determine if the C++ class has a vtable pointer.
5:00:47
drmeister
Because the image save/load needs to be able to restore all of the vtable pointers at load-time.
5:01:17
drmeister
I have lots of pointers into the C++ generated code that I need to restore at load-time.
5:02:58
drmeister
It's going to be like ripping apart a piece of cloth and then putting it back together at load-time.
5:04:05
drmeister
The added challenge is that the C++ generated code and libraries may be at a different location at load-time than they were at save-time.
5:05:33
drmeister
But I'm certain that I can depend on all of the pointers to addresses in a particular library at load-time remaining at the same offset relative to the start of the library at save-time.
5:08:25
drmeister
Hmm, I better talk with cracauer about that. That may be too strict a restriction.
5:15:05
beach
So the plan is to not save shared libraries, and instead to load them again when the saved image is executed?
5:16:46
drmeister
I can't save arbitrary objects. I'm going to limit it to clasp/cando objects. In that case it may turn out that it's only the executable that I need to worry about.
5:17:48
drmeister
My function entry points now involve a level of indirection that keeps track of what executable/library the entry point points in to.
7:05:31
kpoeck
::notify iskander Try (ql:update-client), I believe Xach said version 2021-02-11 has a performance problem scanning the local-projects directory