Search
Friday, 16th of October 2020, 0:36:01 UTC
0:44:08
Bike
the local call stuff might really require some rethinking there, though, since there are multiple llvm functions to disassemble
0:59:16
karlosz
i mean, llvm has the concept of a moduel
0:59:26
karlosz
so im sure theres a way to dump stuff out
0:59:50
karlosz
also (if x nil (if x t x)) is still making extra blocks which only contain a jump
1:00:29
karlosz
im thinking of how to do contification more elegantly with hir because we have a built in way to merge with phis
1:01:01
karlosz
so seeing if theres a good abstraction to be made out of making blocks with phis and dealing with that kind of thing
1:02:31
Bike
llvm has the concept of a module, but by the time you're looking at a function object it's gone
1:04:05
Bike
i mean, it's a compiler thing. it's gone for the same reason the bir module is gone. you just have the binary left
1:04:36
Bike
obviously the function has a pointer to the start of the code, but that's about it. i don't remember how we even find the end
1:15:11
karlosz
yeah im disappointed that our runtime function objects don't have more stuff attached to them
1:15:27
Bike
yeah, i mean, we'll hve to add more stuff probably
1:15:34
Bike
drmeister was already planning to do so for multiple entry points
1:15:39
karlosz
maybe at least a pointer to a descriptor about the function description
1:15:45
karlosz
yeah he mentioned it
1:16:03
karlosz
he wants sbcl style external entry points which basically do exactly that
1:16:14
karlosz
theres a code component object that the runtime functions all link to
1:16:39
karlosz
and the code component object is like the runtime representation of a module and has the metadata for that group of compiled together functions/entry points
1:17:09
karlosz
and plus the GC needs to know about it so the thing can get collected when its no longer referenced
1:46:59
Bike
machine code disassembly under bir is stupid for some reason
2:59:50
beach
Good morning everyone!
Friday, 16th of October 2020, 12:36:01 UTC