freenode/#clasp - IRC Chatlog
Search
3:22:31
drmeister
That's converted from the llvm symbol LinkOnceODRLinkage. There is a dash between every transition from lowercase to uppercase.
3:23:08
drmeister
I wish I'd made it a bit more intelligent so that a string of uppercase followed by lowercase like FOOBar got translated to foo-bar.
3:24:28
drmeister
Bike: I think I'll ask you if you can refactor the make-boot-function-global-variable function and add-global-ctor-function so that.
3:25:28
drmeister
and compile-file-parallel probably calls add-global-ctor-function directly and accumulates the names of ctor functions...
3:26:11
drmeister
so that compile-file-parallel can compile a function that calls all the ctors in sorted order.
3:26:46
drmeister
They won't be ctors anymore - they will be regular functions that look like ctors for simplicity. The function that calls them all will become the only global ctor.
3:27:58
drmeister
All I'm going to try to determine tonight is if by making these ctors link-once-odrlinkage - if that creates entries in the debug-map of the fasl.
3:28:22
drmeister
We may get luck and the linker may also order the ctors properly, but I agree with you, I don't want to depend on that.
3:42:35
drmeister
I'm linking everything together here to create the bclasp fasl file. The external linkage is probably screwing that up.
4:20:25
drmeister
We accumulate the names of the ctor function in each module and then compile a module that just contains a bunch of declarations of those ctor functions and a llvm.global_ctors global variable that lists them all in order.
13:27:15
drmeister
::notify Bike can you look up how to build ld64 on macOS? I don’t see another way to figure out why object files aren’t being added to the debug map. In the ld64 docs and comments it calls the debug map “debug notes”.
14:57:28
Bike
the basic problem is that thsi thing has ARM support, but i don't have the headers for it. i could get the headers but maybe something else would break. or i could configure it to not support ARM, because I don't care, but I can't seem to make it work
14:57:29
Colleen
Bike: drmeister said 1 hour, 30 minutes ago: can you look up how to build ld64 on macOS? I don’t see another way to figure out why object files aren’t being added to the debug map. In the ld64 docs and comments it calls the debug map “debug notes”.