1
0
mirror of https://github.com/upx/upx synced 2025-09-28 19:06:07 +08:00

Cleanup stub for arm64 shared library

modified:   stub/arm64-linux.elf-so_entry.h
	modified:   stub/src/arm64-linux.elf-so_entry.S
This commit is contained in:
John Reiser 2025-02-16 08:41:50 -08:00 committed by Markus F.X.J. Oberhumer
parent 78f4959521
commit 0144f81c28
2 changed files with 118 additions and 122 deletions

View File

@ -1,5 +1,5 @@
/* arm64-linux.elf-so_entry.h
created from arm64-linux.elf-so_entry.bin, 1898 (0x76a) bytes
created from arm64-linux.elf-so_entry.bin, 1896 (0x768) bytes
This file is part of the UPX executable compressor.
@ -32,128 +32,128 @@
/* clang-format off */
#define STUB_ARM64_LINUX_ELF_SO_ENTRY_SIZE 1898
#define STUB_ARM64_LINUX_ELF_SO_ENTRY_ADLER32 0x584d7595
#define STUB_ARM64_LINUX_ELF_SO_ENTRY_CRC32 0x8b6fbaa0
#define STUB_ARM64_LINUX_ELF_SO_ENTRY_SIZE 1896
#define STUB_ARM64_LINUX_ELF_SO_ENTRY_ADLER32 0x9d2c74ac
#define STUB_ARM64_LINUX_ELF_SO_ENTRY_CRC32 0xb466a20f
unsigned char stub_arm64_linux_elf_so_entry[1898] = {
unsigned char stub_arm64_linux_elf_so_entry[1896] = {
/* 0x0000 */ 127, 69, 76, 70, 2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0,
/* 0x0010 */ 1, 0,183, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
/* 0x0020 */ 0, 0, 0, 0, 0, 0, 0, 0, 56, 3, 0, 0, 0, 0, 0, 0,
/* 0x0020 */ 0, 0, 0, 0, 0, 0, 0, 0, 48, 3, 0, 0, 0, 0, 0, 0,
/* 0x0030 */ 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 64, 0, 7, 0, 4, 0,
/* 0x0040 */ 0, 0, 32,212,224, 7,190,169,226,123, 1,169,255, 67, 0,209,
/* 0x0050 */ 0, 0, 0,148,238, 3, 0,145,192, 3, 64,185,192, 5, 0,249,
/* 0x0060 */ 224, 99, 32,203, 31,236,124,146, 2, 0,128, 82,225, 6, 0, 16,
/* 0x0070 */ 0, 0,128, 82, 8, 7,128, 82, 1, 0, 0,212,229, 3, 0, 42,
/* 0x0080 */ 225, 3, 0,145, 2, 64,128,210,232, 7,128, 82, 1, 0, 0,212,
/* 0x0090 */ 36, 0, 0,139,224, 3, 5, 42, 40, 7,128, 82, 1, 0, 0,212,
/* 0x00a0 */ 32, 8, 64,189, 34, 4, 65,248, 95, 24, 0,241,128, 0, 0, 84,
/* 0x00b0 */ 63, 0, 4,235, 99,255,255, 84, 0, 0,130,210,231, 3, 0,203,
/* 0x00c0 */ 195, 33, 0,145,226, 3, 0,145,193, 7, 64,185,192, 51, 0,145,
/* 0x00d0 */ 34, 0, 0,148, 1, 0,128, 82, 96, 3, 0, 16,232, 34,128, 82,
/* 0x00e0 */ 1, 0, 0,212,239, 3, 0, 42,225, 3, 0,145,194, 5, 64,249,
/* 0x0040 */ 224, 7,190,169,226,123, 1,169,255, 67, 0,209, 30, 0, 0, 16,
/* 0x0050 */ 238, 3, 0,145,192, 3, 64,185,192, 5, 0,249,224, 99, 32,203,
/* 0x0060 */ 31,236,124,146, 2, 0,128, 82,225, 6, 0, 16, 0, 0,128, 82,
/* 0x0070 */ 8, 7,128, 82, 1, 0, 0,212,229, 3, 0, 42,225, 3, 0,145,
/* 0x0080 */ 2, 64,128,210,232, 7,128, 82, 1, 0, 0,212, 36, 0, 0,139,
/* 0x0090 */ 224, 3, 5, 42, 40, 7,128, 82, 1, 0, 0,212, 32, 4, 64,249,
/* 0x00a0 */ 34, 4, 65,248, 95, 24, 0,241,128, 0, 0, 84, 63, 0, 4,235,
/* 0x00b0 */ 99,255,255, 84, 0, 0,130,210,231, 3, 0,203,195, 33, 0,145,
/* 0x00c0 */ 226, 3, 0,145,193, 7, 64,185,192, 51, 0,145, 34, 0, 0,148,
/* 0x00d0 */ 1, 0,128, 82, 96, 3, 0, 16,232, 34,128, 82, 1, 0, 0,212,
/* 0x00e0 */ 239, 3, 0, 42,231, 3, 0,249,225, 3, 0,145,194, 5, 64,249,
/* 0x00f0 */ 8, 8,128, 82, 1, 0, 0,212,223, 1, 0,145, 5, 0,128,210,
/* 0x0100 */ 228, 3, 15, 42, 67, 0,128, 82,162, 0,128, 82,225, 7, 64,249,
/* 0x0110 */ 0, 0,128,210,200, 27,128, 82, 1, 0, 0,212,224, 3, 0,249,
/* 0x0120 */ 238, 3, 0,170,224, 3, 15, 42, 40, 7,128, 82, 1, 0, 0,212,
/* 0x0130 */ 0, 0, 0, 16,225, 67, 0,145,199, 1, 0,249,206, 65, 0,145,
/* 0x0140 */ 192, 1, 31,214,117,112,120, 0, 47,112,114,111, 99, 47,115,101,
/* 0x0150 */ 108,102, 47, 97,117,120,118, 0, 1, 64, 33,139,225, 11,190,169,
/* 0x0160 */ 227,123, 1,169, 5, 0,128, 18, 4, 0,176, 82, 26, 0, 0, 20,
/* 0x0170 */ 228,123, 65,169,225, 15,194,168, 0, 0, 1,203, 66, 0, 3,203,
/* 0x0180 */ 130, 0, 0,185,229, 3, 0,170,224, 3, 3,170, 97, 0, 2,139,
/* 0x0190 */ 224, 3, 5,170,192, 3, 95,214,132, 0, 4, 43, 68, 0, 0, 52,
/* 0x01a0 */ 192, 3, 95,214, 4, 68, 64,184,132, 0, 4, 58,192, 3, 95,214,
/* 0x01b0 */ 33, 0,128, 82,240, 3, 30,170,248,255,255,151, 33, 0, 1, 58,
/* 0x01c0 */ 246,255,255,151,163,255,255, 84, 0, 2, 31,214, 3, 20, 64, 56,
/* 0x01d0 */ 67, 20, 0, 56,241,255,255,151,162,255,255, 84,245,255,255,151,
/* 0x01e0 */ 35, 12, 0,113, 1, 0,128, 82,163, 0, 0, 84, 5, 20, 64, 56,
/* 0x01f0 */ 165, 32, 3, 42,229, 3, 37, 42,197,251,255, 52,231,255,255,151,
/* 0x0200 */ 33, 0, 1, 58,229,255,255,151, 33, 0, 1, 58, 97, 0, 0, 84,
/* 0x0210 */ 232,255,255,151, 33, 8, 0, 17,191, 0, 52, 49, 33, 36,129, 26,
/* 0x0220 */ 67,200,101, 56, 33, 4, 0,113, 67, 20, 0, 56,162,255,255, 84,
/* 0x0230 */ 233,255,255, 23,192, 3, 63,214, 0, 46,115,121,109,116, 97, 98,
/* 0x0240 */ 0, 46,115,116,114,116, 97, 98, 0, 46,115,104,115,116,114,116,
/* 0x0250 */ 97, 98, 0, 46,114,101,108, 97, 69, 76, 70, 77, 65, 73, 78, 88,
/* 0x0260 */ 0, 69, 76, 70, 77, 65, 73, 78, 90, 0, 0, 0, 0, 0, 0, 0,
/* 0x0130 */ 0, 0, 0, 16,225, 67, 0,145,206, 65, 0,145,192, 1, 31,214,
/* 0x0140 */ 117,112,120, 0, 47,112,114,111, 99, 47,115,101,108,102, 47, 97,
/* 0x0150 */ 117,120,118, 0, 1, 64, 33,139,225, 11,190,169,227,123, 1,169,
/* 0x0160 */ 5, 0,128, 18, 4, 0,176, 82, 26, 0, 0, 20,228,123, 65,169,
/* 0x0170 */ 225, 15,194,168, 0, 0, 1,203, 66, 0, 3,203,130, 0, 0,185,
/* 0x0180 */ 229, 3, 0,170,224, 3, 3,170, 97, 0, 2,139,224, 3, 5,170,
/* 0x0190 */ 192, 3, 95,214,132, 0, 4, 43, 68, 0, 0, 52,192, 3, 95,214,
/* 0x01a0 */ 4, 68, 64,184,132, 0, 4, 58,192, 3, 95,214, 33, 0,128, 82,
/* 0x01b0 */ 240, 3, 30,170,248,255,255,151, 33, 0, 1, 58,246,255,255,151,
/* 0x01c0 */ 163,255,255, 84, 0, 2, 31,214, 3, 20, 64, 56, 67, 20, 0, 56,
/* 0x01d0 */ 241,255,255,151,162,255,255, 84,245,255,255,151, 35, 12, 0,113,
/* 0x01e0 */ 1, 0,128, 82,163, 0, 0, 84, 5, 20, 64, 56,165, 32, 3, 42,
/* 0x01f0 */ 229, 3, 37, 42,197,251,255, 52,231,255,255,151, 33, 0, 1, 58,
/* 0x0200 */ 229,255,255,151, 33, 0, 1, 58, 97, 0, 0, 84,232,255,255,151,
/* 0x0210 */ 33, 8, 0, 17,191, 0, 52, 49, 33, 36,129, 26, 67,200,101, 56,
/* 0x0220 */ 33, 4, 0,113, 67, 20, 0, 56,162,255,255, 84,233,255,255, 23,
/* 0x0230 */ 0, 46,115,121,109,116, 97, 98, 0, 46,115,116,114,116, 97, 98,
/* 0x0240 */ 0, 46,115,104,115,116,114,116, 97, 98, 0, 46,114,101,108, 97,
/* 0x0250 */ 69, 76, 70, 77, 65, 73, 78, 88, 0, 69, 76, 70, 77, 65, 73, 78,
/* 0x0260 */ 90, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
/* 0x0270 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
/* 0x0280 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 3, 0,
/* 0x0290 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
/* 0x02a0 */ 0, 0, 0, 0, 3, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0,
/* 0x02b0 */ 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 16, 0, 1, 0,
/* 0x02c0 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
/* 0x02d0 */ 8, 0, 0, 0, 18, 0, 1, 0, 24, 1, 0, 0, 0, 0, 0, 0,
/* 0x02e0 */ 220, 0, 0, 0, 0, 0, 0, 0, 0, 95,115,116, 97,114,116, 0,
/* 0x02f0 */ 117, 99,108, 95,110,114,118, 50, 98, 95,100,101, 99,111,109,112,
/* 0x0300 */ 114,101,115,115, 95, 51, 50, 0, 16, 0, 0, 0, 0, 0, 0, 0,
/* 0x0310 */ 27, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
/* 0x0320 */ 240, 0, 0, 0, 0, 0, 0, 0, 18, 1, 0, 0, 3, 0, 0, 0,
/* 0x0330 */ 240,255,255,255,255,255,255,255, 0, 0, 0, 0, 0, 0, 0, 0,
/* 0x0280 */ 0, 0, 0, 0, 3, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0,
/* 0x0290 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 1, 0,
/* 0x02a0 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
/* 0x02b0 */ 1, 0, 0, 0, 16, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0,
/* 0x02c0 */ 0, 0, 0, 0, 0, 0, 0, 0, 8, 0, 0, 0, 18, 0, 1, 0,
/* 0x02d0 */ 20, 1, 0, 0, 0, 0, 0, 0,220, 0, 0, 0, 0, 0, 0, 0,
/* 0x02e0 */ 0, 95,115,116, 97,114,116, 0,117, 99,108, 95,110,114,118, 50,
/* 0x02f0 */ 98, 95,100,101, 99,111,109,112,114,101,115,115, 95, 51, 50, 0,
/* 0x0300 */ 12, 0, 0, 0, 0, 0, 0, 0, 18, 1, 0, 0, 1, 0, 0, 0,
/* 0x0310 */ 0, 0, 0, 0, 0, 0, 0, 0,240, 0, 0, 0, 0, 0, 0, 0,
/* 0x0320 */ 18, 1, 0, 0, 3, 0, 0, 0,240,255,255,255,255,255,255,255,
/* 0x0330 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
/* 0x0340 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
/* 0x0350 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
/* 0x0360 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
/* 0x0370 */ 0, 0, 0, 0, 0, 0, 0, 0, 32, 0, 0, 0, 1, 0, 0, 0,
/* 0x0380 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
/* 0x0390 */ 64, 0, 0, 0, 0, 0, 0, 0,244, 1, 0, 0, 0, 0, 0, 0,
/* 0x03a0 */ 0, 0, 0, 0, 0, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0,
/* 0x03b0 */ 0, 0, 0, 0, 0, 0, 0, 0, 27, 0, 0, 0, 4, 0, 0, 0,
/* 0x03c0 */ 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
/* 0x03d0 */ 8, 3, 0, 0, 0, 0, 0, 0, 48, 0, 0, 0, 0, 0, 0, 0,
/* 0x03e0 */ 5, 0, 0, 0, 1, 0, 0, 0, 8, 0, 0, 0, 0, 0, 0, 0,
/* 0x03f0 */ 24, 0, 0, 0, 0, 0, 0, 0, 41, 0, 0, 0, 1, 0, 0, 0,
/* 0x0400 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
/* 0x0410 */ 52, 2, 0, 0, 0, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0,
/* 0x0420 */ 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0,
/* 0x0430 */ 0, 0, 0, 0, 0, 0, 0, 0, 17, 0, 0, 0, 3, 0, 0, 0,
/* 0x0440 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
/* 0x0450 */ 56, 2, 0, 0, 0, 0, 0, 0, 50, 0, 0, 0, 0, 0, 0, 0,
/* 0x0460 */ 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0,
/* 0x0470 */ 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 2, 0, 0, 0,
/* 0x0480 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
/* 0x0490 */ 112, 2, 0, 0, 0, 0, 0, 0,120, 0, 0, 0, 0, 0, 0, 0,
/* 0x04a0 */ 6, 0, 0, 0, 3, 0, 0, 0, 8, 0, 0, 0, 0, 0, 0, 0,
/* 0x04b0 */ 24, 0, 0, 0, 0, 0, 0, 0, 9, 0, 0, 0, 3, 0, 0, 0,
/* 0x04c0 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
/* 0x04d0 */ 232, 2, 0, 0, 0, 0, 0, 0, 32, 0, 0, 0, 0, 0, 0, 0,
/* 0x04e0 */ 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0,
/* 0x04f0 */ 0, 0, 0, 0, 0, 0, 0, 0,102,105,108,101, 32,102,111,114,
/* 0x0500 */ 109, 97,116, 32,101,108,102, 54, 52, 45,108,105,116,116,108,101,
/* 0x0510 */ 97, 97,114, 99,104, 54, 52, 10, 10, 83,101, 99,116,105,111,110,
/* 0x0520 */ 115, 58, 10, 73,100,120, 32, 78, 97,109,101, 32, 32, 32, 32, 32,
/* 0x0530 */ 32, 32, 32, 32, 32, 83,105,122,101, 32, 32, 32, 32, 32, 32, 86,
/* 0x0540 */ 77, 65, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,
/* 0x0550 */ 32, 76, 77, 65, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,
/* 0x0560 */ 32, 32, 32, 70,105,108,101, 32,111,102,102, 32, 32, 65,108,103,
/* 0x0570 */ 110, 32, 32, 70,108, 97,103,115, 10, 32, 32, 48, 32, 69, 76, 70,
/* 0x0580 */ 77, 65, 73, 78, 88, 32, 32, 32, 32, 32, 32, 48, 49,102, 52, 32,
/* 0x0590 */ 32, 48, 32, 32, 48, 32, 32, 48, 52, 48, 32, 32, 50, 42, 42, 50,
/* 0x05a0 */ 32, 32, 67, 79, 78, 84, 69, 78, 84, 83, 10, 32, 32, 49, 32, 69,
/* 0x05b0 */ 76, 70, 77, 65, 73, 78, 90, 32, 32, 32, 32, 32, 32, 48, 52, 32,
/* 0x05c0 */ 32, 48, 32, 32, 48, 32, 32, 48, 50, 51, 52, 32, 32, 50, 42, 42,
/* 0x05d0 */ 48, 32, 32, 67, 79, 78, 84, 69, 78, 84, 83, 10, 83, 89, 77, 66,
/* 0x05e0 */ 79, 76, 32, 84, 65, 66, 76, 69, 58, 10, 48, 48, 48, 48, 48, 48,
/* 0x05f0 */ 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 32,108, 32, 32, 32, 32,
/* 0x0600 */ 100, 32, 32, 69, 76, 70, 77, 65, 73, 78, 90, 32, 48, 32, 69, 76,
/* 0x0610 */ 70, 77, 65, 73, 78, 90, 10, 48, 48, 48, 48, 48, 48, 48, 48, 48,
/* 0x0620 */ 48, 48, 48, 48, 48, 48, 48, 32,108, 32, 32, 32, 32,100, 32, 32,
/* 0x0630 */ 69, 76, 70, 77, 65, 73, 78, 88, 32, 48, 32, 69, 76, 70, 77, 65,
/* 0x0640 */ 73, 78, 88, 10, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
/* 0x0650 */ 48, 48, 48, 48, 32,103, 32, 32, 32, 32, 32, 32, 32, 69, 76, 70,
/* 0x0660 */ 77, 65, 73, 78, 88, 32, 48, 32, 95,115,116, 97,114,116, 10, 48,
/* 0x0670 */ 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 49, 49, 56, 32,
/* 0x0680 */ 103, 32, 32, 32, 32, 32, 70, 32, 69, 76, 70, 77, 65, 73, 78, 88,
/* 0x0690 */ 32, 48,100, 99, 32,117, 99,108, 95,110,114,118, 50, 98, 95,100,
/* 0x06a0 */ 101, 99,111,109,112,114,101,115,115, 95, 51, 50, 10, 10, 82, 69,
/* 0x06b0 */ 76, 79, 67, 65, 84, 73, 79, 78, 32, 82, 69, 67, 79, 82, 68, 83,
/* 0x06c0 */ 32, 70, 79, 82, 32, 91, 69, 76, 70, 77, 65, 73, 78, 88, 93, 58,
/* 0x06d0 */ 10, 79, 70, 70, 83, 69, 84, 32, 32, 32, 32, 32, 32, 32, 32, 32,
/* 0x06e0 */ 32, 32, 84, 89, 80, 69, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,
/* 0x06f0 */ 32, 32, 32, 32, 86, 65, 76, 85, 69, 10, 48, 48, 48, 48, 48, 48,
/* 0x0700 */ 48, 48, 48, 48, 48, 48, 48, 48, 49, 48, 32, 82, 95, 65, 65, 82,
/* 0x0710 */ 67, 72, 54, 52, 95, 67, 65, 76, 76, 50, 54, 32, 32, 69, 76, 70,
/* 0x0720 */ 77, 65, 73, 78, 90, 10, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
/* 0x0730 */ 48, 48, 48, 48,102, 48, 32, 82, 95, 65, 65, 82, 67, 72, 54, 52,
/* 0x0740 */ 95, 65, 68, 82, 95, 80, 82, 69, 76, 95, 76, 79, 50, 49, 32, 32,
/* 0x0750 */ 95,115,116, 97,114,116, 45, 48,120, 48, 48, 48, 48, 48, 48, 48,
/* 0x0760 */ 48, 48, 48, 48, 48, 48, 48, 49, 48, 10
/* 0x0370 */ 32, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
/* 0x0380 */ 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0,
/* 0x0390 */ 240, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
/* 0x03a0 */ 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
/* 0x03b0 */ 27, 0, 0, 0, 4, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0,
/* 0x03c0 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0,
/* 0x03d0 */ 48, 0, 0, 0, 0, 0, 0, 0, 5, 0, 0, 0, 1, 0, 0, 0,
/* 0x03e0 */ 8, 0, 0, 0, 0, 0, 0, 0, 24, 0, 0, 0, 0, 0, 0, 0,
/* 0x03f0 */ 41, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
/* 0x0400 */ 0, 0, 0, 0, 0, 0, 0, 0, 48, 2, 0, 0, 0, 0, 0, 0,
/* 0x0410 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
/* 0x0420 */ 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
/* 0x0430 */ 17, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
/* 0x0440 */ 0, 0, 0, 0, 0, 0, 0, 0, 48, 2, 0, 0, 0, 0, 0, 0,
/* 0x0450 */ 50, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
/* 0x0460 */ 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
/* 0x0470 */ 1, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
/* 0x0480 */ 0, 0, 0, 0, 0, 0, 0, 0,104, 2, 0, 0, 0, 0, 0, 0,
/* 0x0490 */ 120, 0, 0, 0, 0, 0, 0, 0, 6, 0, 0, 0, 3, 0, 0, 0,
/* 0x04a0 */ 8, 0, 0, 0, 0, 0, 0, 0, 24, 0, 0, 0, 0, 0, 0, 0,
/* 0x04b0 */ 9, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
/* 0x04c0 */ 0, 0, 0, 0, 0, 0, 0, 0,224, 2, 0, 0, 0, 0, 0, 0,
/* 0x04d0 */ 32, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
/* 0x04e0 */ 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
/* 0x04f0 */ 102,105,108,101, 32,102,111,114,109, 97,116, 32,101,108,102, 54,
/* 0x0500 */ 52, 45,108,105,116,116,108,101, 97, 97,114, 99,104, 54, 52, 10,
/* 0x0510 */ 10, 83,101, 99,116,105,111,110,115, 58, 10, 73,100,120, 32, 78,
/* 0x0520 */ 97,109,101, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 83,105,122,
/* 0x0530 */ 101, 32, 32, 32, 32, 32, 32, 86, 77, 65, 32, 32, 32, 32, 32, 32,
/* 0x0540 */ 32, 32, 32, 32, 32, 32, 32, 32, 32, 76, 77, 65, 32, 32, 32, 32,
/* 0x0550 */ 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 70,105,108,101, 32,
/* 0x0560 */ 111,102,102, 32, 32, 65,108,103,110, 32, 32, 70,108, 97,103,115,
/* 0x0570 */ 10, 32, 32, 48, 32, 69, 76, 70, 77, 65, 73, 78, 88, 32, 32, 32,
/* 0x0580 */ 32, 32, 32, 48, 49,102, 48, 32, 32, 48, 32, 32, 48, 32, 32, 48,
/* 0x0590 */ 52, 48, 32, 32, 50, 42, 42, 50, 32, 32, 67, 79, 78, 84, 69, 78,
/* 0x05a0 */ 84, 83, 10, 32, 32, 49, 32, 69, 76, 70, 77, 65, 73, 78, 90, 32,
/* 0x05b0 */ 32, 32, 32, 32, 32, 48, 32, 32, 48, 32, 32, 48, 32, 32, 48, 50,
/* 0x05c0 */ 51, 48, 32, 32, 50, 42, 42, 48, 32, 32, 67, 79, 78, 84, 69, 78,
/* 0x05d0 */ 84, 83, 10, 83, 89, 77, 66, 79, 76, 32, 84, 65, 66, 76, 69, 58,
/* 0x05e0 */ 10, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
/* 0x05f0 */ 48, 32,108, 32, 32, 32, 32,100, 32, 32, 69, 76, 70, 77, 65, 73,
/* 0x0600 */ 78, 90, 32, 48, 32, 69, 76, 70, 77, 65, 73, 78, 90, 10, 48, 48,
/* 0x0610 */ 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 32,108,
/* 0x0620 */ 32, 32, 32, 32,100, 32, 32, 69, 76, 70, 77, 65, 73, 78, 88, 32,
/* 0x0630 */ 48, 32, 69, 76, 70, 77, 65, 73, 78, 88, 10, 48, 48, 48, 48, 48,
/* 0x0640 */ 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 32,103, 32, 32, 32,
/* 0x0650 */ 32, 32, 32, 32, 69, 76, 70, 77, 65, 73, 78, 88, 32, 48, 32, 95,
/* 0x0660 */ 115,116, 97,114,116, 10, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
/* 0x0670 */ 48, 48, 48, 49, 49, 52, 32,103, 32, 32, 32, 32, 32, 70, 32, 69,
/* 0x0680 */ 76, 70, 77, 65, 73, 78, 88, 32, 48,100, 99, 32,117, 99,108, 95,
/* 0x0690 */ 110,114,118, 50, 98, 95,100,101, 99,111,109,112,114,101,115,115,
/* 0x06a0 */ 95, 51, 50, 10, 10, 82, 69, 76, 79, 67, 65, 84, 73, 79, 78, 32,
/* 0x06b0 */ 82, 69, 67, 79, 82, 68, 83, 32, 70, 79, 82, 32, 91, 69, 76, 70,
/* 0x06c0 */ 77, 65, 73, 78, 88, 93, 58, 10, 79, 70, 70, 83, 69, 84, 32, 32,
/* 0x06d0 */ 32, 32, 32, 32, 32, 32, 32, 32, 32, 84, 89, 80, 69, 32, 32, 32,
/* 0x06e0 */ 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 86, 65, 76, 85, 69,
/* 0x06f0 */ 10, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
/* 0x0700 */ 99, 32, 82, 95, 65, 65, 82, 67, 72, 54, 52, 95, 65, 68, 82, 95,
/* 0x0710 */ 80, 82, 69, 76, 95, 76, 79, 50, 49, 32, 32, 69, 76, 70, 77, 65,
/* 0x0720 */ 73, 78, 90, 10, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
/* 0x0730 */ 48, 48,102, 48, 32, 82, 95, 65, 65, 82, 67, 72, 54, 52, 95, 65,
/* 0x0740 */ 68, 82, 95, 80, 82, 69, 76, 95, 76, 79, 50, 49, 32, 32, 95,115,
/* 0x0750 */ 116, 97,114,116, 45, 48,120, 48, 48, 48, 48, 48, 48, 48, 48, 48,
/* 0x0760 */ 48, 48, 48, 48, 48, 49, 48, 10
};

View File

@ -90,7 +90,7 @@ arg6w .req w5
.balign 4
_start: .globl _start
bkpt // DEBUG
// bkpt // DEBUG
PUSH4 (x0,x1,x2,lr) // MATCH_00
sub sp,sp,#2*NBPW // space for ADRU, LENU
@ -98,9 +98,8 @@ F_ADRU= 0 * NBPW
F_LENU= 1 * NBPW
F_ARGC= 2 * NBPW
bl L70
L70_ret:
foldi .req lr
adr x30,fold_info // assembler bug: 'lr' not an integer register
foldi .req x30
old_sp .req x14 // busy: lr,x14
mov old_sp,sp
ldr w0,[foldi,#sz_unc]
@ -124,7 +123,7 @@ O_RDONLY= 0
mov w0,psa_fd; do_sys __NR_close
.unreq psa_fd
0:
ldr s0,[x1,#NBPW] // value
ldr x0,[x1,#NBPW] // value
ldr x2,[x1],#2*NBPW // tag
cmp x2,#AT_PAGESZ; beq 1f
cmp x1,aux_end; blo 0b; mov x0,#1<<12 // default 4KiB
@ -144,6 +143,7 @@ O_RDONLY= 0
mfd .req w15 // busy: x15,x14
do_sys __NR_memfd_create; mov mfd, w0
str page_m, [sp,#0]
mov arg2,sp
ldr arg3,[old_sp,#F_LENU]
do_sys __NR_write
@ -166,7 +166,6 @@ O_RDONLY= 0
adr arg1,_start - 4*4 // &SO_INFO
add arg2,sp,#F_ARGC // &{argc, argv, envp}
str page_m, [u_ptr,#0]
add u_ptr,u_ptr,2*NBPW
br u_ptr
.unreq u_ptr
@ -198,9 +197,6 @@ off .req w5
// IDENTSTR goes here
section ELFMAINZ
L70:
lr .req x30
blr lr // lr= &fold_info
fold_info:
// b_info (sz_unc, sz_cpr, method) of folded code (C-language, etc.)