ELF2: arm32 shared libraries; runs on Android 14 under TermUX

NYI: complex DT_INIT (R_RELR, etc.)
	modified:   p_lx_elf.cpp
	modified:   p_lx_elf.h
	modified:   stub/src/arm.v4a-expand.S
	modified:   stub/src/arm.v4a-linux.elf-entry.S
	modified:   stub/src/arm.v4a-linux.elf-so_entry.S
	modified:   stub/src/arm.v4a-linux.elf-so_fold.S
	modified:   stub/src/i386-linux.elf-main2.c
	modified:   stub/src/i386-linux.elf-so_main.c
	modified:   stub/src/upxfd_android.c
           plus generated *.h *.map *.dump
This commit is contained in:
John Reiser
2024-08-09 13:03:26 -07:00
parent 5d5f4d1765
commit 94eebc3ee5
37 changed files with 21229 additions and 18892 deletions
+81 -81
View File
@@ -4,14 +4,14 @@ Sections:
Idx Name Size VMA LMA File off Algn Flags
0 ELFMAINY 0 0 0 034 2**0 CONTENTS
1 ELFMAINZ 01dc 0 0 034 2**0 CONTENTS
2 ELFMAINX 06e0 0 0 0210 2**2 CONTENTS
2 ELFMAINX 06b0 0 0 0210 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
000000d8 g ELFMAINZ 0 getpid
00000498 g F ELFMAINX 0248 upx_mmap_and_fd
00000468 g F ELFMAINX 0248 upx_mmap_and_fd
00000008 g ELFMAINZ 0 memcpy
00000000 *UND* 0 O_BINFO
0000004c g ELFMAINZ 0 mempcpy
@@ -28,7 +28,7 @@ SYMBOL TABLE:
00000128 g ELFMAINZ 0 read
00000164 g ELFMAINZ 0 unlink
0000002c g ELFMAINZ 0 memset
0000016c g F ELFMAINX 0f4 ucl_nrv2b_decompress_8
0000016c g F ELFMAINX 0c4 ucl_nrv2b_decompress_8
0000018c g ELFMAINZ 0 my_bkpt
000000b0 g ELFMAINZ 0 fsync
0000013c g ELFMAINZ 0 stat
@@ -61,92 +61,92 @@ OFFSET TYPE VALUE
00000108 R_ARM_PC24 ELFMAINX
00000164 R_ARM_PC24 ELFMAINX
0000017c R_ARM_PC24 ELFMAINX
000001b4 R_ARM_PC24 ELFMAINX
000001bc R_ARM_PC24 ELFMAINX
000001c0 R_ARM_PC24 ELFMAINX
000001d0 R_ARM_PC24 ELFMAINX
000001d4 R_ARM_PC24 ELFMAINX
000001d8 R_ARM_PC24 ELFMAINX
000001e4 R_ARM_PC24 ELFMAINX
000001ec R_ARM_PC24 ELFMAINX
000001f0 R_ARM_PC24 ELFMAINX
000001f4 R_ARM_PC24 ELFMAINX
000001f8 R_ARM_PC24 ELFMAINX
00000200 R_ARM_PC24 ELFMAINX
00000204 R_ARM_PC24 ELFMAINX
00000208 R_ARM_PC24 ELFMAINX
00000214 R_ARM_PC24 ELFMAINX
00000224 R_ARM_PC24 ELFMAINX
0000020c R_ARM_PC24 ELFMAINX
00000228 R_ARM_PC24 ELFMAINX
00000230 R_ARM_PC24 ELFMAINX
00000238 R_ARM_PC24 ELFMAINX
0000022c R_ARM_PC24 ELFMAINX
0000023c 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
00000270 R_ARM_PC24 ELFMAINX
00000284 R_ARM_PC24 ELFMAINX
000002b0 R_ARM_PC24 memset
000002bc R_ARM_PC24 stat
000002c4 R_ARM_PC24 ELFMAINX
000002d8 R_ARM_PC24 ELFMAINX
000002e8 R_ARM_PC24 mkdir
00000300 R_ARM_PC24 ELFMAINX
00000318 R_ARM_PC24 mempcpy
00000328 R_ARM_PC24 ELFMAINX
0000032c R_ARM_PC24 ELFMAINX
00000350 R_ARM_PC24 open
00000364 R_ARM_PC24 read
00000370 R_ARM_PC24 close
00000394 R_ARM_PC24 ELFMAINX
000003a4 R_ARM_PC24 ELFMAINX
000003ac R_ARM_PC24 ELFMAINX
000003b8 R_ARM_PC24 ELFMAINX
000003c8 R_ARM_PC24 mempcpy
000003dc R_ARM_PC24 ELFMAINX
000003e8 R_ARM_PC24 ELFMAINX
000003e0 R_ARM_PC24 ELFMAINX
000003f8 R_ARM_PC24 mempcpy
00000408 R_ARM_PC24 ELFMAINX
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
00000424 R_ARM_PC24 mempcpy
0000042c R_ARM_PC24 getpid
00000434 R_ARM_PC24 ELFMAINX
00000440 R_ARM_PC24 ELFMAINX
0000044c R_ARM_PC24 ELFMAINX
00000464 R_ARM_PC24 ELFMAINX
00000470 R_ARM_PC24 ELFMAINX
0000047c R_ARM_PC24 ELFMAINX
00000494 R_ARM_PC24 ELFMAINX
000004b4 R_ARM_PC24 ELFMAINX
000004c8 R_ARM_PC24 memfd_create
000004d4 R_ARM_PC24 ELFMAINX
000004e0 R_ARM_PC24 memfd_create
000004ec R_ARM_PC24 ELFMAINX
000004f0 R_ARM_PC24 ELFMAINX
00000510 R_ARM_PC24 open
00000518 R_ARM_PC24 ELFMAINX
0000051c R_ARM_PC24 ELFMAINX
00000534 R_ARM_PC24 my_bkpt
00000554 R_ARM_PC24 uname
00000558 R_ARM_PC24 ELFMAINX
0000056c R_ARM_PC24 ELFMAINX
00000574 R_ARM_PC24 ELFMAINX
00000578 R_ARM_PC24 ELFMAINX
0000058c R_ARM_PC24 ELFMAINX
00000594 R_ARM_PC24 ELFMAINX
000005a4 R_ARM_PC24 ELFMAINX
000005ac R_ARM_PC24 ELFMAINX
000005b0 R_ARM_PC24 get_upxfn_path
000005bc R_ARM_PC24 ELFMAINX
000005c4 R_ARM_PC24 ELFMAINX
000005d0 R_ARM_PC24 ELFMAINX
00000480 R_ARM_PC24 ELFMAINX
00000494 R_ARM_PC24 memfd_create
000004a0 R_ARM_PC24 ELFMAINX
000004ac R_ARM_PC24 memfd_create
000004b8 R_ARM_PC24 ELFMAINX
000004bc R_ARM_PC24 ELFMAINX
000004dc R_ARM_PC24 open
000004e4 R_ARM_PC24 ELFMAINX
000004e8 R_ARM_PC24 ELFMAINX
00000500 R_ARM_PC24 my_bkpt
0000050c R_ARM_PC24 uname
00000510 R_ARM_PC24 ELFMAINX
00000524 R_ARM_PC24 ELFMAINX
0000052c R_ARM_PC24 ELFMAINX
00000530 R_ARM_PC24 ELFMAINX
00000544 R_ARM_PC24 ELFMAINX
0000054c R_ARM_PC24 ELFMAINX
0000055c R_ARM_PC24 ELFMAINX
00000564 R_ARM_PC24 ELFMAINX
00000568 R_ARM_PC24 get_upxfn_path
00000588 R_ARM_PC24 ELFMAINX
00000590 R_ARM_PC24 ELFMAINX
0000059c R_ARM_PC24 ELFMAINX
000005a8 R_ARM_PC24 ELFMAINX
000005b0 R_ARM_PC24 ELFMAINX
000005c0 R_ARM_PC24 open
000005cc R_ARM_PC24 ELFMAINX
000005d4 R_ARM_PC24 unlink
000005dc R_ARM_PC24 ELFMAINX
000005e4 R_ARM_PC24 ELFMAINX
000005f4 R_ARM_PC24 open
00000600 R_ARM_PC24 ELFMAINX
00000608 R_ARM_PC24 unlink
00000610 R_ARM_PC24 ELFMAINX
0000061c R_ARM_PC24 ELFMAINX
00000624 R_ARM_PC24 ELFMAINX
00000630 R_ARM_PC24 ftruncate
00000638 R_ARM_PC24 ELFMAINX
0000063c R_ARM_PC24 ELFMAINX
0000064c R_ARM_PC24 memset
0000066c R_ARM_PC24 write
00000674 R_ARM_PC24 ELFMAINX
0000067c R_ARM_PC24 ELFMAINX
0000068c R_ARM_PC24 lseek
00000698 R_ARM_PC24 ELFMAINX
0000069c R_ARM_PC24 ELFMAINX
000006a4 R_ARM_PC24 ELFMAINX
000006c8 R_ARM_PC24 mmap
000005e8 R_ARM_PC24 ELFMAINX
000005f0 R_ARM_PC24 ELFMAINX
000005fc R_ARM_PC24 ftruncate
00000604 R_ARM_PC24 ELFMAINX
00000608 R_ARM_PC24 ELFMAINX
00000618 R_ARM_PC24 memset
00000638 R_ARM_PC24 write
00000640 R_ARM_PC24 ELFMAINX
00000648 R_ARM_PC24 ELFMAINX
00000658 R_ARM_PC24 lseek
00000664 R_ARM_PC24 ELFMAINX
00000668 R_ARM_PC24 ELFMAINX
00000670 R_ARM_PC24 ELFMAINX
00000694 R_ARM_PC24 mmap