Fixed some ElfLinker endian issues.
This commit is contained in:
+3
-5
@@ -253,14 +253,12 @@ void Packer::defineDecompressorSymbols()
|
||||
{
|
||||
const lzma_compress_result_t *res = &ph.compress_result.result_lzma;
|
||||
// FIXME - this is for i386 only
|
||||
unsigned properties = // lc, lp, pb, dummy
|
||||
acc_uint32e_t properties = // lc, lp, pb, dummy
|
||||
(res->lit_context_bits << 0) |
|
||||
(res->lit_pos_bits << 8) |
|
||||
(res->pos_bits << 16);
|
||||
// big endian - bswap32
|
||||
if (getFormat() >= 128)
|
||||
set_be32(&properties, properties);
|
||||
|
||||
if (linker->bele_policy->isBE()) // big endian - bswap32
|
||||
acc_swab32s(&properties);
|
||||
linker->defineSymbol("lzma_properties", properties);
|
||||
// -2 for properties
|
||||
linker->defineSymbol("lzma_c_len", ph.c_len - 2);
|
||||
|
||||
Reference in New Issue
Block a user