On Monday, 19 September 2016 at 14:04:03 UTC, Andrei Alexandrescu
Interesting. What happens e.g. if one makes a change to a
function whose generated code is somewhere in the middle of the
object file? If it doesn't alter the call graph, doesn't the
new .o file share a common prefix with the old one?
Only if the TOC is unchanged.
There are a lot of common sections in the same order but with
we would need some binary patching method.
But I am unaware of file-systems supporting this.
Microsofts incremental linking mechnism makes use of thunks so it
can avoid changing the header iirc.
But all of this needs codegen to adept.