lzma should be working again for most of the i386 formats
This commit is contained in:
parent
b8b983dded
commit
4500c1d1a4
@ -346,7 +346,7 @@ void PackDjgpp2::pack(OutputFile *fo)
|
||||
|
||||
linker->defineSymbol("original_entry", coff_hdr.a_entry);
|
||||
linker->defineSymbol("length_of_bss", ph.overlap_overhead / 4);
|
||||
//patchDecompressor(loader, lsize); // FIXME
|
||||
defineDecompressorSymbols();
|
||||
assert(bss->vaddr == ((size + 0x1ff) &~ 0x1ff) + (text->vaddr &~ 0x1ff));
|
||||
linker->defineSymbol("stack_for_lzma", bss->vaddr + bss->size);
|
||||
linker->defineSymbol("start_of_uncompressed", text->vaddr - hdrsize);
|
||||
|
||||
@ -261,7 +261,7 @@ void PackTmt::pack(OutputFile *fo)
|
||||
// patch loader
|
||||
linker->defineSymbol("original_entry", ih.entry);
|
||||
defineFilterSymbols(linker, &ft);
|
||||
// FIXME patchDecompressor(loader, lsize);
|
||||
defineDecompressorSymbols();
|
||||
|
||||
linker->defineSymbol("bytes_to_copy", ph.c_len + d_len);
|
||||
linker->defineSymbol("copy_dest", ph.u_len + ph.overlap_overhead + d_len - 1);
|
||||
|
||||
@ -253,10 +253,9 @@ void PackVmlinuxI386::pack(OutputFile *fo)
|
||||
if (0x40==(0xf0 & ft.id)) {
|
||||
linker->defineSymbol("filter_length", ph.u_len); // redefine
|
||||
}
|
||||
defineDecompressorSymbols();
|
||||
linker->relocate();
|
||||
|
||||
// FIXME patchDecompressor(loader, lsize);
|
||||
|
||||
MemBuffer loader(lsize);
|
||||
memcpy(loader, getLoader(), lsize);
|
||||
patchPackHeader(loader, lsize);
|
||||
|
||||
@ -306,7 +306,7 @@ void PackVmlinuzI386::pack(OutputFile *fo)
|
||||
const unsigned lsize = getLoaderSize();
|
||||
|
||||
defineFilterSymbols(linker, &ft);
|
||||
// FIXME patchDecompressor(loader, lsize);
|
||||
defineDecompressorSymbols();
|
||||
linker->defineSymbol("src_for_decompressor", zimage_offset + lsize);
|
||||
linker->defineSymbol("original_entry", kernel_entry);
|
||||
linker->defineSymbol("stack_offset", stack_offset_during_uncompression);
|
||||
@ -418,7 +418,7 @@ void PackBvmlinuzI386::pack(OutputFile *fo)
|
||||
if (0x40==(0xf0 & ft.id)) {
|
||||
linker->defineSymbol("filter_length", ph.u_len); // redefine
|
||||
}
|
||||
// FIXME patchDecompressor(loader, lsize);
|
||||
defineDecompressorSymbols();
|
||||
linker->defineSymbol("original_entry", kernel_entry);
|
||||
linker->defineSymbol("stack_offset", stack_offset_during_uncompression);
|
||||
linker->relocate();
|
||||
|
||||
@ -548,7 +548,7 @@ void PackWcle::pack(OutputFile *fo)
|
||||
linker->defineSymbol("start_of_relocs", mps*pages);
|
||||
defineFilterSymbols(linker, &ft);
|
||||
linker->defineSymbol("filter_buffer_start", text_vaddr);
|
||||
// FIXME patchDecompressor(loader, lsize);
|
||||
defineDecompressorSymbols();
|
||||
|
||||
unsigned jpos = (((ph.c_len + 3) &~ 3) + d_len + 3) / 4;
|
||||
linker->defineSymbol("words_to_copy", jpos);
|
||||
|
||||
Loading…
Reference in New Issue
Block a user