Code Comments
Programming Forum and web based access to our favorite programming groups.The source of lzma / 7zip contains filters that transform relative addresses in CALL-statements to absolute addresses. It is claimed that this gives better compression. I was able to verify this experimentally for ARM binaries, even for delta-compression. Could sombody explain WHY absolute addresses are better? (Intuitively I would have expected the opposite). Regards, -ulrich [nosave] ---------------------------------------------------------------------------- Ulrich Lauther ph: +49 89 636 48834 fx: ... 636 42284 Siemens CT SE 6 Internet: Ulrich.Lauther@siemens.com
Post Follow-up to this messageUlrich wrote: ) The source of lzma / 7zip contains filters that transform relative ) addresses in CALL-statements to absolute addresses. It is claimed ) that this gives better compression. I was able to verify this ) experimentally for ARM binaries, even for delta-compression. ) ) Could sombody explain WHY absolute addresses are better? (Intuitively I ) would have expected the opposite). Why would you expect relative addresses to compress better ? With absolute addresses, one would expect a lot of them to be the same, and therefore compress better. SaSW, Willem -- Disclaimer: I am in no way responsible for any of the statements made in the above text. For all I know I might be drugged or something.. No I'm not paranoid. You all think I'm paranoid, don't you ! #EOT
Post Follow-up to this messageWillem <willem@stack.nl> wrote: : Ulrich wrote: : ) The source of lzma / 7zip contains filters that transform relative : ) addresses in CALL-statements to absolute addresses. It is claimed : ) that this gives better compression. I was able to verify this : ) experimentally for ARM binaries, even for delta-compression. : ) : ) Could sombody explain WHY absolute addresses are better? (Intuitively I : ) would have expected the opposite). : Why would you expect relative addresses to compress better ? With absolut e : addresses, one would expect a lot of them to be the same, and therefore : compress better. In "normal" compression, because I would expect small values, i.e. many leading zeros in addresses; in delta compression, because a relative address may be invariant when pieces of codes are moved around. However, your reasoning makes a lot of sense. -ulrich [nosave] ---------------------------------------------------------------------------- Ulrich Lauther ph: +49 89 636 48834 fx: ... 636 42284 Siemens CT SE 6 Internet: Ulrich.Lauther@siemens.com
Post Follow-up to this message
Show a Printable Version
Email This Page to Someone!
Receive updates to this thread
Powered by vBulletin
Copyright 2000-2006 Jelsoft Enterprises Limited.