Conversation
…to also remove '<unnamed>'
|
The object format trick looks interesting, but I wonder if there were an easier solution. #58 uses About adding By the way, can you please clarify which parts of code/docs are AI generated, if any? I have no objections against using AI, I just want to know. |
This was mostly an experiment to see if
That seems reasonable. I could see this (or #58) easily changing to fit that model.
Most of this PR. But I've read/reviewed all of it. |
Making this work with stable compiler seems valuable. Will look at your approach more closely. Can we extend this approach to finding out available functions and modules using stable?
I think I didn't understand this part. If one can afford the compiler generation, they can generate the |
Right - but then there's the (minor?) overhead of something like |
This (draft) PR makes significant changes to Zngur's output format in support of a new
#layout(auto)feature.Please see the description of the new output format in
book/src/standalone_output.md, and the implementation of#layout(auto)inzngur-auto-layout/README.md.At a high level, we're compile the user's crate to a
.rlibthat has size and offset constants baked into the object format under specific link names. This allows us to support cross-compiling workflows, since we don't need to execute a binary to determine these values. Most of the object file complexity is handled by theobjectcrate, but it still is a significant increase in complexity for this project scope. That said, IMO the value add for#layout(auto)(with the obvious possibility of making this the default) is worth the complexity.I hope to use this PR to get feedback on the architecture and hopefully simplify it without losing the benefits.