arm64: stub uses new strategy

modified:   p_lx_elf.cpp
	modified:   stub/src/powerpc64le-linux.elf-entry.S
	modified:   stub/src/amd64-linux.elf-main.c
	modified:   stub/src/arm64-linux.elf-entry.S
	modified:   stub/src/arm64-linux.elf-fold.S
	modified:   stub/src/arm64-linux.elf-main.c
	also .h, .map, .bin.dump
This commit is contained in:
John Reiser
2017-10-10 14:51:03 -07:00
parent b37bc99330
commit 1522293be0
19 changed files with 1234 additions and 1790 deletions
+39 -39
View File
@@ -32,8 +32,8 @@
#define STUB_POWERPC64_LINUX_ELF_FOLD_SIZE 3104
#define STUB_POWERPC64_LINUX_ELF_FOLD_ADLER32 0xe43a3a74
#define STUB_POWERPC64_LINUX_ELF_FOLD_CRC32 0x39041749
#define STUB_POWERPC64_LINUX_ELF_FOLD_ADLER32 0x48493ab5
#define STUB_POWERPC64_LINUX_ELF_FOLD_CRC32 0x6f4ca6de
unsigned char stub_powerpc64_linux_elf_fold[3104] = {
/* 0x0000 */ 127, 69, 76, 70, 2, 2, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0,
@@ -42,7 +42,7 @@ unsigned char stub_powerpc64_linux_elf_fold[3104] = {
/* 0x0030 */ 0, 0, 0, 1, 0, 64, 0, 56, 0, 2, 0, 0, 0, 0, 0, 0,
/* 0x0040 */ 0, 0, 0, 1, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0,
/* 0x0050 */ 0, 0, 0, 0, 0, 16, 0, 0, 0, 0, 0, 0, 0, 16, 0, 0,
/* 0x0060 */ 0, 0, 0, 0, 0, 0, 11,204, 0, 0, 0, 0, 0, 0, 11,204,
/* 0x0060 */ 0, 0, 0, 0, 0, 0, 11,208, 0, 0, 0, 0, 0, 0, 11,208,
/* 0x0070 */ 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 6,
/* 0x0080 */ 0, 0, 0, 0, 0, 0, 11,208, 0, 0, 0, 0, 0, 16, 11,208,
/* 0x0090 */ 0, 0, 0, 0, 0, 16, 11,208, 0, 0, 0, 0, 0, 0, 0, 80,
@@ -106,7 +106,7 @@ unsigned char stub_powerpc64_linux_elf_fold[3104] = {
/* 0x0430 */ 57, 41, 0, 1, 75,255,255,240,233, 67, 0, 8,125, 74, 74, 20,
/* 0x0440 */ 249, 67, 0, 8,233, 67, 0, 0,125, 41, 80, 80,249, 35, 0, 0,
/* 0x0450 */ 78,128, 0, 32, 0, 0, 0, 0, 0, 0, 0, 1,128, 0, 0, 0,
/* 0x0460 */ 125,128, 0, 38,124, 8, 2,166,145,129, 0, 8, 72, 0, 6,245,
/* 0x0460 */ 125,128, 0, 38,124, 8, 2,166,145,129, 0, 8, 72, 0, 6,249,
/* 0x0470 */ 248, 33,255, 81,124,126, 27,120,124,159, 35,120,124,189, 43,120,
/* 0x0480 */ 124,220, 51,120, 46, 38, 0, 0,233, 63, 0, 0, 47,169, 0, 0,
/* 0x0490 */ 65,158, 1, 84,127,195,243,120, 56,129, 0,112, 56,160, 0, 12,
@@ -131,8 +131,8 @@ unsigned char stub_powerpc64_linux_elf_fold[3104] = {
/* 0x05c0 */ 75,255,254, 49,129, 1, 0,112,233, 95, 0, 8,233, 63, 0, 0,
/* 0x05d0 */ 125, 74, 66, 20,125, 40, 72, 80,249, 95, 0, 8,249, 63, 0, 0,
/* 0x05e0 */ 75,255,254,168, 56, 33, 0,176,129,129, 0, 8,125,144,129, 32,
/* 0x05f0 */ 72, 0, 5,192, 0, 0, 0, 0, 0, 0, 0, 3,128, 4, 0, 0,
/* 0x0600 */ 125,128, 0, 38,124, 8, 2,166,145,129, 0, 8, 72, 0, 5, 29,
/* 0x05f0 */ 72, 0, 5,196, 0, 0, 0, 0, 0, 0, 0, 3,128, 4, 0, 0,
/* 0x0600 */ 125,128, 0, 38,124, 8, 2,166,145,129, 0, 8, 72, 0, 5, 33,
/* 0x0610 */ 248, 33,254,225,125, 15, 67,120,161, 3, 0, 16,125, 50, 75,120,
/* 0x0620 */ 233, 35, 0, 32,125, 90, 83,120,124,125, 27,120,124,147, 35,120,
/* 0x0630 */ 47,136, 0, 3,248,161, 1, 96,124,216, 51,120,124,240, 59,120,
@@ -189,42 +189,42 @@ unsigned char stub_powerpc64_linux_elf_fold[3104] = {
/* 0x0960 */ 127,190, 24, 0, 64,222,254,236, 59, 57, 0, 1, 58, 49, 0, 56,
/* 0x0970 */ 127, 57, 7,180, 75,255,253,196,251,242, 0, 0, 56, 33, 1, 32,
/* 0x0980 */ 129,129, 0, 8,125,144,129, 32,232,125, 0, 24,124,127, 26, 20,
/* 0x0990 */ 72, 0, 1,232,233, 33, 0,128,233, 17, 0, 8,124,167, 74, 20,
/* 0x0990 */ 72, 0, 1,236,233, 33, 0,128,233, 17, 0, 8,124,167, 74, 20,
/* 0x09a0 */ 47,168, 0, 0, 56,165, 0, 8, 65,158,255, 80, 75,255,255,104,
/* 0x09b0 */ 0, 0, 0, 0, 0, 0, 0, 3,128, 18, 0, 0,124, 8, 2,166,
/* 0x09c0 */ 72, 0, 1,145,248, 33,255, 17,124,191, 43,120,124,218, 51,120,
/* 0x09d0 */ 125, 61, 75,120,129, 35, 0, 0, 56,192, 0, 0,125, 88, 83,120,
/* 0x09c0 */ 72, 0, 1,149,248, 33,255, 17,125, 61, 75,120,129, 35, 0, 0,
/* 0x09d0 */ 124,191, 43,120,124,218, 51,120, 56,192, 0, 0,125, 88, 83,120,
/* 0x09e0 */ 248,161, 0,152,249, 33, 0,144,124,229, 59,120, 59,159, 0, 64,
/* 0x09f0 */ 248, 97, 0,120,248,129, 0,112, 59,192, 0, 0,248, 97, 0,136,
/* 0x0a00 */ 248,129, 0,128,248,225, 0,160,249, 1, 0,168, 56, 97, 0,112,
/* 0x0a10 */ 56,129, 0,144, 75,255,250, 77,232,225, 0,160,233, 1, 0,168,
/* 0x0a20 */ 56,129, 0,128, 56,160, 0, 0,127, 70,211,120,127,169,235,120,
/* 0x0a30 */ 127, 10,195,120,127,227,251,120, 75,255,251,201, 56,128, 0, 9,
/* 0x0a40 */ 124,123, 27,120,127, 67,211,120,127,101,219,120, 75,255,249, 97,
/* 0x0a50 */ 161, 63, 0, 56,127,137,240, 64, 64,157, 0,184,129, 60, 0, 0,
/* 0x0a60 */ 47,137, 0, 3, 64,158, 0,156,232,124, 0, 16,233, 61, 0, 0,
/* 0x0a70 */ 56,128, 0, 0, 56,160, 0, 0,124, 99, 74, 20, 75,255,249, 9,
/* 0x0a80 */ 96, 0, 0, 0, 47,131, 0, 0,124,121, 27,120, 64,252, 0, 16,
/* 0x0a90 */ 56, 96, 0,127, 75,255,248,209, 96, 0, 0, 0,127,228,251,120,
/* 0x0aa0 */ 56,160, 4, 0, 75,255,248,217, 96, 0, 0, 0, 47,163, 4, 0,
/* 0x0ab0 */ 64,222,255,224, 57, 32, 0, 0, 56,128, 0, 0,249, 61, 0, 0,
/* 0x0ac0 */ 127, 37,203,120, 56,192, 0, 0, 56,224, 0, 0, 57, 0, 0, 0,
/* 0x0ad0 */ 127,169,235,120,127, 10,195,120,127,227,251,120, 75,255,251, 37,
/* 0x0ae0 */ 232,189, 0, 0, 56,128, 0, 7,124,123, 27,120,127, 67,211,120,
/* 0x0af0 */ 75,255,248,189,127, 35,203,120, 75,255,248,149, 96, 0, 0, 0,
/* 0x0b00 */ 59,222, 0, 1, 59,156, 0, 56,123,222, 0, 32, 75,255,255, 68,
/* 0x0b10 */ 56, 33, 0,240,127, 99,219,120, 72, 0, 0,136, 0, 0, 0, 0,
/* 0x0b20 */ 0, 0, 0, 1,128, 8, 0, 0,249,193,255,112,249,225,255,120,
/* 0x0b30 */ 250, 1,255,128,250, 33,255,136,250, 65,255,144,250, 97,255,152,
/* 0x0b40 */ 250,129,255,160,250,161,255,168,250,193,255,176,250,225,255,184,
/* 0x0b50 */ 251, 1,255,192,251, 33,255,200,251, 65,255,208,251, 97,255,216,
/* 0x0b60 */ 251,129,255,224,251,161,255,232,251,193,255,240,251,225,255,248,
/* 0x0b70 */ 248, 1, 0, 16, 78,128, 0, 32,233,193,255,112,233,225,255,120,
/* 0x0b80 */ 234, 1,255,128,234, 33,255,136,234, 65,255,144,234, 97,255,152,
/* 0x0b90 */ 234,129,255,160,234,161,255,168,234,193,255,176,234,225,255,184,
/* 0x0ba0 */ 235, 1,255,192,235, 33,255,200,235, 65,255,208,235, 97,255,216,
/* 0x0bb0 */ 235,129,255,224,232, 1, 0, 16,235,161,255,232,124, 8, 3,166,
/* 0x0bc0 */ 235,193,255,240,235,225,255,248, 78,128, 0, 32, 0, 0, 0, 0,
/* 0x09f0 */ 129, 35, 0, 4,248, 97, 0,120, 59,192, 0, 0,248, 97, 0,136,
/* 0x0a00 */ 248,129, 0,128,249, 33, 0,112,248,225, 0,160,249, 1, 0,168,
/* 0x0a10 */ 56, 97, 0,112, 56,129, 0,144, 75,255,250, 73,232,225, 0,160,
/* 0x0a20 */ 233, 1, 0,168, 56,129, 0,128, 56,160, 0, 0,127, 70,211,120,
/* 0x0a30 */ 127,169,235,120,127, 10,195,120,127,227,251,120, 75,255,251,197,
/* 0x0a40 */ 56,128, 0, 9,124,123, 27,120,127, 67,211,120,127,101,219,120,
/* 0x0a50 */ 75,255,249, 93,161, 63, 0, 56,127,137,240, 64, 64,157, 0,184,
/* 0x0a60 */ 129, 60, 0, 0, 47,137, 0, 3, 64,158, 0,156,232,124, 0, 16,
/* 0x0a70 */ 233, 61, 0, 0, 56,128, 0, 0, 56,160, 0, 0,124, 99, 74, 20,
/* 0x0a80 */ 75,255,249, 5, 96, 0, 0, 0, 47,131, 0, 0,124,121, 27,120,
/* 0x0a90 */ 64,252, 0, 16, 56, 96, 0,127, 75,255,248,205, 96, 0, 0, 0,
/* 0x0aa0 */ 127,228,251,120, 56,160, 4, 0, 75,255,248,213, 96, 0, 0, 0,
/* 0x0ab0 */ 47,163, 4, 0, 64,222,255,224, 57, 32, 0, 0, 56,128, 0, 0,
/* 0x0ac0 */ 249, 61, 0, 0,127, 37,203,120, 56,192, 0, 0, 56,224, 0, 0,
/* 0x0ad0 */ 57, 0, 0, 0,127,169,235,120,127, 10,195,120,127,227,251,120,
/* 0x0ae0 */ 75,255,251, 33,232,189, 0, 0, 56,128, 0, 7,124,123, 27,120,
/* 0x0af0 */ 127, 67,211,120, 75,255,248,185,127, 35,203,120, 75,255,248,145,
/* 0x0b00 */ 96, 0, 0, 0, 59,222, 0, 1, 59,156, 0, 56,123,222, 0, 32,
/* 0x0b10 */ 75,255,255, 68, 56, 33, 0,240,127, 99,219,120, 72, 0, 0,136,
/* 0x0b20 */ 0, 0, 0, 0, 0, 0, 0, 1,128, 8, 0, 0,249,193,255,112,
/* 0x0b30 */ 249,225,255,120,250, 1,255,128,250, 33,255,136,250, 65,255,144,
/* 0x0b40 */ 250, 97,255,152,250,129,255,160,250,161,255,168,250,193,255,176,
/* 0x0b50 */ 250,225,255,184,251, 1,255,192,251, 33,255,200,251, 65,255,208,
/* 0x0b60 */ 251, 97,255,216,251,129,255,224,251,161,255,232,251,193,255,240,
/* 0x0b70 */ 251,225,255,248,248, 1, 0, 16, 78,128, 0, 32,233,193,255,112,
/* 0x0b80 */ 233,225,255,120,234, 1,255,128,234, 33,255,136,234, 65,255,144,
/* 0x0b90 */ 234, 97,255,152,234,129,255,160,234,161,255,168,234,193,255,176,
/* 0x0ba0 */ 234,225,255,184,235, 1,255,192,235, 33,255,200,235, 65,255,208,
/* 0x0bb0 */ 235, 97,255,216,235,129,255,224,232, 1, 0, 16,235,161,255,232,
/* 0x0bc0 */ 124, 8, 3,166,235,193,255,240,235,225,255,248, 78,128, 0, 32,
/* 0x0bd0 */ 0, 0, 0, 0, 0, 16, 3,172, 0, 0, 0, 0, 0, 16,139,208,
/* 0x0be0 */ 0, 0, 0, 0, 0, 16, 3,240, 0, 0, 0, 0, 0, 16,139,208,
/* 0x0bf0 */ 0, 0, 0, 0, 0, 16, 4, 96, 0, 0, 0, 0, 0, 16,139,208,