ELF2 main programs pass src/testsuite and upx-testsuite-v2

Decompressing lzma required many adjustments.
Backwards compatibility probably is broken for
    stub/amd64-win64.pe.h
    stub/arm64-win64.pe.h
Also: shared libraries need memfd_create.
	modified:   ../misc/testsuite/upx_testsuite_1-expected_sha256sums.sh
	modified:   p_lx_elf.cpp
	modified:   stub/Makefile
	modified:   stub/scripts/xstrip.py
	modified:   stub/src/amd64-expand.S
	modified:   stub/src/arch/amd64/lzma_d.S
	modified:   stub/src/arch/arm/v4a/lzma_d.S
	modified:   stub/src/arch/arm/v4t/macros.S
	modified:   stub/src/arch/arm64/v8/lzma_d.S
	modified:   stub/src/arch/powerpc/32/lzma_d.S
	modified:   stub/src/arch/powerpc/64le/lzma_d-common.S
	modified:   stub/src/arm.v4a-expand.S
	modified:   stub/src/arm.v4t-linux.shlib-init.S
	modified:   stub/src/arm64-expand.S
	modified:   stub/src/i386-expand.S
	modified:   stub/src/mips.r3000-expand.S
	modified:   stub/src/powerpc-expand.S
	modified:   stub/src/powerpc-linux.elf-entry.S
	modified:   stub/src/powerpc-linux.elf-fold.S
	modified:   stub/src/powerpc64-expand.S
	modified:   stub/src/powerpc64-linux.elf-entry.S
	modified:   stub/src/powerpc64-linux.elf-fold.S
           plus generated *.h *.map *.dump
This commit is contained in:
John Reiser
2024-07-25 13:36:02 -07:00
parent e6f3c1b3da
commit ea2a190bd1
87 changed files with 29531 additions and 30001 deletions
+87 -87
View File
@@ -3,38 +3,38 @@ file format elf32-bigarm
Sections:
Idx Name Size VMA LMA File off Algn Flags
0 ELFMAINY 0 0 0 034 2**0 CONTENTS
1 ELFMAINZ 0114 0 0 034 2**0 CONTENTS
2 ELFMAINX 062c 0 0 0148 2**2 CONTENTS
1 ELFMAINZ 01d4 0 0 034 2**0 CONTENTS
2 ELFMAINX 064c 0 0 0208 2**2 CONTENTS
SYMBOL TABLE:
00000000 l d ELFMAINZ 0 ELFMAINZ
00000000 l d ELFMAINX 0 ELFMAINX
00000000 l d ELFMAINY 0 ELFMAINY
00000000 *UND* 0 MFLG
00000090 g ELFMAINZ 0 getpid
00000478 g F ELFMAINX 01b4 upx_mmap_and_fd
000000d8 g ELFMAINZ 0 getpid
00000498 g F ELFMAINX 01b4 upx_mmap_and_fd
00000008 g ELFMAINZ 0 memcpy
00000000 *UND* 0 O_BINFO
0000004c g ELFMAINZ 0 mempcpy
00000088 g ELFMAINZ 0 ftruncate
00000098 g ELFMAINZ 0 lseek
000000d8 g ELFMAINZ 0 mmap
000000c0 g ELFMAINZ 0 uname
000000c4 g ELFMAINZ 0 ftruncate
000000ec g ELFMAINZ 0 lseek
0000018c g ELFMAINZ 0 mmap
00000150 g ELFMAINZ 0 uname
00000000 g ELFMAINY 0 end_decompress
000000d0 g ELFMAINZ 0 write
00000078 g ELFMAINZ 0 fdatasync
00000178 g ELFMAINZ 0 write
0000009c g ELFMAINZ 0 fdatasync
00000000 g ELFMAINZ 0 get_upxfn_path
00000068 g ELFMAINZ 0 memfd_create
00000004 g ELFMAINX 0 _start
000000b0 g ELFMAINZ 0 read
000000c8 g ELFMAINZ 0 unlink
00000128 g ELFMAINZ 0 read
00000164 g ELFMAINZ 0 unlink
0000002c g ELFMAINZ 0 memset
00000164 g F ELFMAINX 0dc ucl_nrv2b_decompress_8
00000080 g ELFMAINZ 0 fsync
000000b8 g ELFMAINZ 0 stat
00000114 g ELFMAINZ 0 cpr0
000000a8 g ELFMAINZ 0 open
000000a0 g ELFMAINZ 0 mkdir
00000070 g ELFMAINZ 0 close
0000016c g F ELFMAINX 0f4 ucl_nrv2b_decompress_8
000000b0 g ELFMAINZ 0 fsync
0000013c g ELFMAINZ 0 stat
000001d4 g ELFMAINZ 0 cpr0
00000114 g ELFMAINZ 0 open
00000100 g ELFMAINZ 0 mkdir
00000088 g ELFMAINZ 0 close
RELOCATION RECORDS FOR [ELFMAINZ]:
OFFSET TYPE VALUE
@@ -44,7 +44,7 @@ OFFSET TYPE VALUE
00000040 R_ARM_PC24 ELFMAINZ
00000050 R_ARM_PC24 ELFMAINZ
00000060 R_ARM_PC24 ELFMAINZ
00000110 R_ARM_ABS32 O_BINFO
000001d0 R_ARM_ABS32 O_BINFO
RELOCATION RECORDS FOR [ELFMAINX]:
OFFSET TYPE VALUE
@@ -58,80 +58,80 @@ OFFSET TYPE VALUE
000000a0 R_ARM_PC24 upx_mmap_and_fd
000000cc R_ARM_PC24 ELFMAINX
00000108 R_ARM_PC24 ELFMAINX
0000015c R_ARM_PC24 ELFMAINX
00000174 R_ARM_PC24 ELFMAINX
000001c4 R_ARM_PC24 ELFMAINX
000001cc R_ARM_PC24 ELFMAINX
000001d0 R_ARM_PC24 ELFMAINX
000001e0 R_ARM_PC24 ELFMAINX
00000164 R_ARM_PC24 ELFMAINX
0000017c R_ARM_PC24 ELFMAINX
000001e4 R_ARM_PC24 ELFMAINX
000001e8 R_ARM_PC24 ELFMAINX
000001f4 R_ARM_PC24 ELFMAINX
000001ec R_ARM_PC24 ELFMAINX
000001f0 R_ARM_PC24 ELFMAINX
00000200 R_ARM_PC24 ELFMAINX
00000204 R_ARM_PC24 ELFMAINX
00000208 R_ARM_PC24 ELFMAINX
00000210 R_ARM_PC24 ELFMAINX
00000218 R_ARM_PC24 ELFMAINX
0000021c R_ARM_PC24 ELFMAINX
00000214 R_ARM_PC24 ELFMAINX
00000224 R_ARM_PC24 ELFMAINX
00000228 R_ARM_PC24 ELFMAINX
00000230 R_ARM_PC24 ELFMAINX
00000238 R_ARM_PC24 ELFMAINX
0000023c R_ARM_PC24 ELFMAINX
0000024c R_ARM_PC24 ELFMAINX
00000268 R_ARM_PC24 ELFMAINX
00000280 R_ARM_PC24 ELFMAINX
00000294 R_ARM_PC24 ELFMAINX
000002c0 R_ARM_PC24 memset
000002cc R_ARM_PC24 stat
000002d4 R_ARM_PC24 ELFMAINX
000002e8 R_ARM_PC24 ELFMAINX
000002f8 R_ARM_PC24 mkdir
00000310 R_ARM_PC24 ELFMAINX
00000328 R_ARM_PC24 mempcpy
00000338 R_ARM_PC24 ELFMAINX
0000033c R_ARM_PC24 ELFMAINX
00000360 R_ARM_PC24 open
00000374 R_ARM_PC24 read
00000380 R_ARM_PC24 close
000003a4 R_ARM_PC24 ELFMAINX
000003b4 R_ARM_PC24 ELFMAINX
000003bc R_ARM_PC24 ELFMAINX
000003c8 R_ARM_PC24 ELFMAINX
000003d8 R_ARM_PC24 mempcpy
000003ec R_ARM_PC24 ELFMAINX
000003f0 R_ARM_PC24 ELFMAINX
00000408 R_ARM_PC24 mempcpy
00000418 R_ARM_PC24 ELFMAINX
0000041c R_ARM_PC24 ELFMAINX
00000434 R_ARM_PC24 mempcpy
0000043c R_ARM_PC24 getpid
00000444 R_ARM_PC24 ELFMAINX
00000450 R_ARM_PC24 ELFMAINX
0000045c R_ARM_PC24 ELFMAINX
00000474 R_ARM_PC24 ELFMAINX
00000258 R_ARM_PC24 ELFMAINX
0000025c R_ARM_PC24 ELFMAINX
0000026c R_ARM_PC24 ELFMAINX
00000288 R_ARM_PC24 ELFMAINX
000002a0 R_ARM_PC24 ELFMAINX
000002b4 R_ARM_PC24 ELFMAINX
000002e0 R_ARM_PC24 memset
000002ec R_ARM_PC24 stat
000002f4 R_ARM_PC24 ELFMAINX
00000308 R_ARM_PC24 ELFMAINX
00000318 R_ARM_PC24 mkdir
00000330 R_ARM_PC24 ELFMAINX
00000348 R_ARM_PC24 mempcpy
00000358 R_ARM_PC24 ELFMAINX
0000035c R_ARM_PC24 ELFMAINX
00000380 R_ARM_PC24 open
00000394 R_ARM_PC24 read
000003a0 R_ARM_PC24 close
000003c4 R_ARM_PC24 ELFMAINX
000003d4 R_ARM_PC24 ELFMAINX
000003dc R_ARM_PC24 ELFMAINX
000003e8 R_ARM_PC24 ELFMAINX
000003f8 R_ARM_PC24 mempcpy
0000040c R_ARM_PC24 ELFMAINX
00000410 R_ARM_PC24 ELFMAINX
00000428 R_ARM_PC24 mempcpy
00000438 R_ARM_PC24 ELFMAINX
0000043c R_ARM_PC24 ELFMAINX
00000454 R_ARM_PC24 mempcpy
0000045c R_ARM_PC24 getpid
00000464 R_ARM_PC24 ELFMAINX
00000470 R_ARM_PC24 ELFMAINX
0000047c R_ARM_PC24 ELFMAINX
00000494 R_ARM_PC24 ELFMAINX
000004a4 R_ARM_PC24 memfd_create
000004c4 R_ARM_PC24 uname
000004c8 R_ARM_PC24 ELFMAINX
000004e0 R_ARM_PC24 ELFMAINX
000004f8 R_ARM_PC24 ELFMAINX
000004fc R_ARM_PC24 get_upxfn_path
00000514 R_ARM_PC24 ELFMAINX
0000051c R_ARM_PC24 ELFMAINX
00000528 R_ARM_PC24 ELFMAINX
000004b4 R_ARM_PC24 ELFMAINX
000004c4 R_ARM_PC24 memfd_create
000004e4 R_ARM_PC24 uname
000004e8 R_ARM_PC24 ELFMAINX
00000500 R_ARM_PC24 ELFMAINX
00000518 R_ARM_PC24 ELFMAINX
0000051c R_ARM_PC24 get_upxfn_path
00000534 R_ARM_PC24 ELFMAINX
0000053c R_ARM_PC24 ELFMAINX
0000054c R_ARM_PC24 open
00000558 R_ARM_PC24 ELFMAINX
00000560 R_ARM_PC24 unlink
00000568 R_ARM_PC24 ELFMAINX
00000570 R_ARM_PC24 ELFMAINX
0000057c R_ARM_PC24 ftruncate
00000584 R_ARM_PC24 ELFMAINX
00000548 R_ARM_PC24 ELFMAINX
00000554 R_ARM_PC24 ELFMAINX
0000055c R_ARM_PC24 ELFMAINX
0000056c R_ARM_PC24 open
00000578 R_ARM_PC24 ELFMAINX
00000580 R_ARM_PC24 unlink
00000588 R_ARM_PC24 ELFMAINX
00000598 R_ARM_PC24 memset
000005b8 R_ARM_PC24 write
000005c0 R_ARM_PC24 ELFMAINX
000005c8 R_ARM_PC24 ELFMAINX
000005d8 R_ARM_PC24 lseek
000005e4 R_ARM_PC24 ELFMAINX
00000590 R_ARM_PC24 ELFMAINX
0000059c R_ARM_PC24 ftruncate
000005a4 R_ARM_PC24 ELFMAINX
000005a8 R_ARM_PC24 ELFMAINX
000005b8 R_ARM_PC24 memset
000005d8 R_ARM_PC24 write
000005e0 R_ARM_PC24 ELFMAINX
000005e8 R_ARM_PC24 ELFMAINX
000005f0 R_ARM_PC24 ELFMAINX
00000614 R_ARM_PC24 mmap
000005f8 R_ARM_PC24 lseek
00000604 R_ARM_PC24 ELFMAINX
00000608 R_ARM_PC24 ELFMAINX
00000610 R_ARM_PC24 ELFMAINX
00000634 R_ARM_PC24 mmap