amd64-linux revamp for compressing shared libraries

Major changes: p_lx_elf.cpp and stub/src/amd64-linux.elf-so*.
(Includes run-time infrastructure for multiple de-compressors.)
	modified:   linker.cpp
	modified:   p_lx_elf.cpp
	modified:   p_lx_elf.h
	modified:   p_unix.cpp
	modified:   p_unix.h
	modified:   stub/Makefile
	modified:   stub/src/amd64-darwin.dylib-entry.S
	modified:   stub/src/amd64-darwin.macho-entry.S
	new file:   stub/src/amd64-expand.S
	modified:   stub/src/amd64-linux.elf-entry.S
	new file:   stub/src/amd64-linux.elf-so_entry.S
	new file:   stub/src/amd64-linux.elf-so_fold.S
	new file:   stub/src/amd64-linux.elf-so_fold.lds
	new file:   stub/src/amd64-linux.elf-so_main.c
	modified:   stub/src/amd64-linux.shlib-init.S
	modified:   stub/src/amd64-win64.pep.S
	modified:   stub/src/arch/amd64/nrv2b_d.S
	modified:   stub/src/arch/amd64/nrv2d_d.S
	modified:   stub/src/arch/amd64/nrv2e_d.S
           plus many generated stub/*.h and stub/tmp/*.bin.dump
This commit is contained in:
John Reiser
2023-01-09 09:39:25 -08:00
committed by Markus F.X.J. Oberhumer
parent 5f3ebc8a7f
commit 26d8e9c4c5
133 changed files with 42126 additions and 48117 deletions
+32 -32
View File
@@ -2,39 +2,39 @@ file format elf64-powerpcle
Sections:
Idx Name Size VMA LMA File off Algn Flags
0 LINUX000 00000008 0000000000000000 0000000000000000 00000040 2**0 CONTENTS, RELOC, READONLY
1 LINUX010 00000008 0000000000000000 0000000000000000 00000048 2**0 CONTENTS, RELOC, READONLY
2 LINUX020 00000064 0000000000000000 0000000000000000 00000050 2**0 CONTENTS, READONLY
3 LINUX030 00000000 0000000000000000 0000000000000000 000000b4 2**0 CONTENTS, READONLY
4 NRV2B 000000f8 0000000000000000 0000000000000000 000000b4 2**0 CONTENTS, RELOC, READONLY
5 NRV2D 00000144 0000000000000000 0000000000000000 000001ac 2**0 CONTENTS, RELOC, READONLY
6 NRV2E 00000154 0000000000000000 0000000000000000 000002f0 2**0 CONTENTS, RELOC, READONLY
7 NRV_TAIL 0000001c 0000000000000000 0000000000000000 00000444 2**0 CONTENTS, READONLY
8 CFLUSH 00000024 0000000000000000 0000000000000000 00000460 2**0 CONTENTS, READONLY
9 LZMA 00000000 0000000000000000 0000000000000000 00000484 2**0 CONTENTS, READONLY
10 LZMA_ELF00 00000094 0000000000000000 0000000000000000 00000484 2**0 CONTENTS, RELOC, READONLY
11 LZMA_DEC30 00000028 0000000000000000 0000000000000000 00000518 2**0 CONTENTS, READONLY
12 LZMA_DEC10 00000bb8 0000000000000000 0000000000000000 00000540 2**0 CONTENTS, READONLY
13 LZMA_DEC20 00000c74 0000000000000000 0000000000000000 000010f8 2**0 CONTENTS, READONLY
14 UPX1HEAD 00000020 0000000000000000 0000000000000000 00001d6c 2**0 CONTENTS, READONLY
0 LINUX000 08 0 0 040 2**0 CONTENTS
1 LINUX010 08 0 0 048 2**0 CONTENTS
2 LINUX020 064 0 0 050 2**0 CONTENTS
3 LINUX030 0 0 0 0b4 2**0 CONTENTS
4 NRV2B 0f8 0 0 0b4 2**0 CONTENTS
5 NRV2D 0144 0 0 01ac 2**0 CONTENTS
6 NRV2E 0154 0 0 02f0 2**0 CONTENTS
7 NRV_TAIL 01c 0 0 0444 2**0 CONTENTS
8 CFLUSH 024 0 0 0460 2**0 CONTENTS
9 LZMA 0 0 0 0484 2**0 CONTENTS
10 LZMA_ELF00 094 0 0 0484 2**0 CONTENTS
11 LZMA_DEC30 028 0 0 0518 2**0 CONTENTS
12 LZMA_DEC10 0bb8 0 0 0540 2**0 CONTENTS
13 LZMA_DEC20 0c74 0 0 010f8 2**0 CONTENTS
14 UPX1HEAD 020 0 0 01d6c 2**0 CONTENTS
SYMBOL TABLE:
0000000000000000 l d LINUX020 0000000000000000 LINUX020
0000000000000000 l d LINUX030 0000000000000000 LINUX030
0000000000000000 l d NRV_TAIL 0000000000000000 NRV_TAIL
0000000000000000 l d LZMA_DEC30 0000000000000000 LZMA_DEC30
0000000000000000 l d LINUX000 0000000000000000 LINUX000
0000000000000000 l d LINUX010 0000000000000000 LINUX010
0000000000000000 l d NRV2B 0000000000000000 NRV2B
0000000000000000 l d NRV2D 0000000000000000 NRV2D
0000000000000000 l d NRV2E 0000000000000000 NRV2E
0000000000000000 l d CFLUSH 0000000000000000 CFLUSH
0000000000000000 l d LZMA 0000000000000000 LZMA
0000000000000000 l d LZMA_ELF00 0000000000000000 LZMA_ELF00
0000000000000000 l d LZMA_DEC10 0000000000000000 LZMA_DEC10
0000000000000000 l d LZMA_DEC20 0000000000000000 LZMA_DEC20
0000000000000000 l d UPX1HEAD 0000000000000000 UPX1HEAD
0000000000000000 *UND* 0000000000000000 filter_length
0000000000000000 *UND* 0000000000000000 filter_cto
0000000000000000 l d LINUX020 0 LINUX020
0000000000000000 l d LINUX030 0 LINUX030
0000000000000000 l d NRV_TAIL 0 NRV_TAIL
0000000000000000 l d LZMA_DEC30 0 LZMA_DEC30
0000000000000000 l d LINUX000 0 LINUX000
0000000000000000 l d LINUX010 0 LINUX010
0000000000000000 l d NRV2B 0 NRV2B
0000000000000000 l d NRV2D 0 NRV2D
0000000000000000 l d NRV2E 0 NRV2E
0000000000000000 l d CFLUSH 0 CFLUSH
0000000000000000 l d LZMA 0 LZMA
0000000000000000 l d LZMA_ELF00 0 LZMA_ELF00
0000000000000000 l d LZMA_DEC10 0 LZMA_DEC10
0000000000000000 l d LZMA_DEC20 0 LZMA_DEC20
0000000000000000 l d UPX1HEAD 0 UPX1HEAD
0000000000000000 *UND* 0 filter_length
0000000000000000 *UND* 0 filter_cto
RELOCATION RECORDS FOR [LINUX000]:
OFFSET TYPE VALUE