From c94cdf2b7d24750387fb741a926931ade4b4354a Mon Sep 17 00:00:00 2001 From: Michael Brown Date: Tue, 17 Jul 2007 12:52:54 +0100 Subject: [PATCH] Move .zinfo to libprefix.S; it doesn't belong with the decompression code. --- src/arch/i386/prefix/libprefix.S | 30 +++++++++++++++++++++++++++++- src/arch/i386/prefix/nonrv2b.S | 18 ------------------ src/arch/i386/prefix/unnrv2b.S | 20 -------------------- 3 files changed, 29 insertions(+), 39 deletions(-) delete mode 100644 src/arch/i386/prefix/nonrv2b.S diff --git a/src/arch/i386/prefix/libprefix.S b/src/arch/i386/prefix/libprefix.S index 0966dcbd..f146d3de 100644 --- a/src/arch/i386/prefix/libprefix.S +++ b/src/arch/i386/prefix/libprefix.S @@ -87,7 +87,7 @@ install_block: #if COMPRESS call decompress16 #else - call nodecompress16 + rep addr32 movsb #endif /* Zero remaining space */ @@ -438,3 +438,31 @@ prot_call_vector: .word 0 .size prot_call_vector, . - prot_call_vector #endif + + + /* File split information for the compressor */ +#if COMPRESS + .section ".zinfo", "a" + .ascii "COPY" + .long _prefix_load_offset + .long _prefix_progbits_size + .long _max_align + .ascii "PACK" + .long _text16_load_offset + .long _text16_progbits_size + .long _max_align + .ascii "PACK" + .long _data16_load_offset + .long _data16_progbits_size + .long _max_align + .ascii "PACK" + .long _textdata_load_offset + .long _textdata_progbits_size + .long _max_align +#else /* COMPRESS */ + .section ".zinfo", "a" + .ascii "COPY" + .long _prefix_load_offset + .long _load_size + .long _max_align +#endif /* COMPRESS */ diff --git a/src/arch/i386/prefix/nonrv2b.S b/src/arch/i386/prefix/nonrv2b.S deleted file mode 100644 index d40396b3..00000000 --- a/src/arch/i386/prefix/nonrv2b.S +++ /dev/null @@ -1,18 +0,0 @@ -/* Placeholder for decompress16 in non-compressed images */ - - .text - .arch i386 - .section ".prefix.lib", "ax", @progbits - - .code16 - .globl nodecompress16 -nodecompress16: - rep addr32 movsb - ret - - /* File split information for the compressor */ - .section ".zinfo", "a" - .ascii "COPY" - .long _prefix_load_offset - .long _load_size - .long _max_align diff --git a/src/arch/i386/prefix/unnrv2b.S b/src/arch/i386/prefix/unnrv2b.S index 1cf570d0..3209fb29 100644 --- a/src/arch/i386/prefix/unnrv2b.S +++ b/src/arch/i386/prefix/unnrv2b.S @@ -180,23 +180,3 @@ decompr_end_n2b: popl %ebx pop %xAX ret - - - /* File split information for the compressor */ - .section ".zinfo", "a" - .ascii "COPY" - .long _prefix_load_offset - .long _prefix_progbits_size - .long _max_align - .ascii "PACK" - .long _text16_load_offset - .long _text16_progbits_size - .long _max_align - .ascii "PACK" - .long _data16_load_offset - .long _data16_progbits_size - .long _max_align - .ascii "PACK" - .long _textdata_load_offset - .long _textdata_progbits_size - .long _max_align