TIL MSVC's debugger uses 16 bit line numbers or something... https://stackoverflow.com/questions/43433206/vs2008-the-breakpoint-is-misaligned-with-the-source-code-by-65537-lines-in-a-c …
Compressed code just wastes memory, because now you need to store 2 copies of it: the compressed version and the decompressed one to exec.
-
-
And for systems with shared memory it's not 1 vs 2 copies but rather 1 vs 1+N copies where N may be large.
-
the idea was to do a sort of ISA-level LZ compression where no explicit decompression step is needed (mostly fancy branching...).
-
for LZ'ed bytecode, the decompression can often be done during function/trace decoding (keeping redundancy small), depending on impl.
-
the problem for LZ-compr for live code is the added cost+complexity of call/return; and arch-related issues for an explicit LZ-match opcode.
-
but, anyways, the idea of doing LZ'ed code in a way where bulk decompression is needed for each process is pretty stupid, not the intention.
-
ADD: actually, even for bulk compr, it is possible to avoid needing 2x buffers by decompressing directly on top of the compressed version...
End of conversation
New conversation -
Loading seems to be taking a while.
Twitter may be over capacity or experiencing a momentary hiccup. Try again or visit Twitter Status for more information.