Fix powerpc64le ABI stack frame omitting spill area for a0-a7
Also use new symbol SZ_FRAME in */ppc_regs.h modified: stub/src/arch/powerpc/32/ppc_regs.h modified: stub/src/arch/powerpc/64le/ppc_regs.h modified: stub/src/powerpc-darwin.dylib-entry.S modified: stub/src/powerpc-darwin.macho-entry.S modified: stub/src/powerpc-darwin.macho-fold.S modified: stub/src/powerpc-linux.elf-fold.S modified: stub/src/powerpc64le-darwin.dylib-entry.S modified: stub/src/powerpc64le-darwin.macho-entry.S modified: stub/src/powerpc64le-darwin.macho-fold.S modified: stub/src/powerpc64le-linux.elf-entry.S modified: stub/src/powerpc64le-linux.elf-fold.S modified: stub/powerpc-darwin.dylib-entry.h modified: stub/powerpc-darwin.macho-entry.h modified: stub/powerpc-darwin.macho-fold.h modified: stub/powerpc-linux.elf-fold.h modified: stub/powerpc64le-darwin.dylib-entry.h modified: stub/powerpc64le-darwin.macho-entry.h modified: stub/powerpc64le-darwin.macho-fold.h modified: stub/powerpc64le-linux.elf-entry.h modified: stub/powerpc64le-linux.elf-fold.h modified: stub/tmp/powerpc64le-darwin.macho-fold.map
This commit is contained in:
parent
9583cfcc93
commit
a440564ba4
@ -32,8 +32,8 @@
|
||||
|
||||
|
||||
#define STUB_POWERPC_DARWIN_DYLIB_ENTRY_SIZE 8993
|
||||
#define STUB_POWERPC_DARWIN_DYLIB_ENTRY_ADLER32 0x8a436210
|
||||
#define STUB_POWERPC_DARWIN_DYLIB_ENTRY_CRC32 0x3d13cd40
|
||||
#define STUB_POWERPC_DARWIN_DYLIB_ENTRY_ADLER32 0x427b626c
|
||||
#define STUB_POWERPC_DARWIN_DYLIB_ENTRY_CRC32 0x27e8745c
|
||||
|
||||
unsigned char stub_powerpc_darwin_dylib_entry[8993] = {
|
||||
/* 0x0000 */ 127, 69, 76, 70, 1, 2, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
@ -432,7 +432,7 @@ unsigned char stub_powerpc_darwin_dylib_entry[8993] = {
|
||||
/* 0x1890 */ 127,123, 26, 20,124,119, 27,120, 56,122, 0, 4, 72, 0, 0,169,
|
||||
/* 0x18a0 */ 127, 90, 26, 20,124,118, 27,120, 59, 90, 0, 12,150,225,255,248,
|
||||
/* 0x18b0 */ 127,232, 3,166, 56,120, 0, 12,126,196,179,120,127, 37,203,120,
|
||||
/* 0x18c0 */ 124, 38, 11,120,136,248, 0, 8, 56, 33,255,232, 78,128, 0, 33,
|
||||
/* 0x18c0 */ 124, 38, 11,120,136,248, 0, 8,148, 33,255,232, 78,128, 0, 33,
|
||||
/* 0x18d0 */ 56, 33, 0, 32,136,216, 0, 9, 40, 6, 0, 0, 65,130,255,160,
|
||||
/* 0x18e0 */ 136,184, 0, 10,128,152, 0, 0,127, 35,203,120, 72, 0, 0,125,
|
||||
/* 0x18f0 */ 75,255,255,140, 72, 0, 0, 29, 68, 0, 0, 2, 56, 96,255,255,
|
||||
|
||||
@ -32,8 +32,8 @@
|
||||
|
||||
|
||||
#define STUB_POWERPC_DARWIN_MACHO_ENTRY_SIZE 8920
|
||||
#define STUB_POWERPC_DARWIN_MACHO_ENTRY_ADLER32 0x396b180d
|
||||
#define STUB_POWERPC_DARWIN_MACHO_ENTRY_CRC32 0x553738e1
|
||||
#define STUB_POWERPC_DARWIN_MACHO_ENTRY_ADLER32 0xf6f81869
|
||||
#define STUB_POWERPC_DARWIN_MACHO_ENTRY_CRC32 0xc92bb9f1
|
||||
|
||||
unsigned char stub_powerpc_darwin_macho_entry[8920] = {
|
||||
/* 0x0000 */ 127, 69, 76, 70, 1, 2, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
@ -427,7 +427,7 @@ unsigned char stub_powerpc_darwin_macho_entry[8920] = {
|
||||
/* 0x1840 */ 136,226, 0, 12,124,164, 18, 20, 56,165, 0, 16,124,102, 18, 20,
|
||||
/* 0x1850 */ 56, 99, 0,192,140, 5,255,255,156, 3,255,255, 66, 0,255,248,
|
||||
/* 0x1860 */ 127,233, 3,166, 56,162, 0,128,144,193,255,252, 56,193,255,252,
|
||||
/* 0x1870 */ 56, 33,255,232, 78,128, 4, 32,127,232, 2,166, 75,255,255,181,
|
||||
/* 0x1870 */ 148, 33,255,232, 78,128, 4, 32,127,232, 2,166, 75,255,255,181,
|
||||
/* 0x1880 */ 72, 0, 0,128,102,105,108,101, 32,102,111,114,109, 97,116, 32,
|
||||
/* 0x1890 */ 101,108,102, 51, 50, 45,112,111,119,101,114,112, 99, 10, 10, 83,
|
||||
/* 0x18a0 */ 101, 99,116,105,111,110,115, 58, 10, 73,100,120, 32, 78, 97,109,
|
||||
|
||||
@ -32,8 +32,8 @@
|
||||
|
||||
|
||||
#define STUB_POWERPC_DARWIN_MACHO_FOLD_SIZE 2564
|
||||
#define STUB_POWERPC_DARWIN_MACHO_FOLD_ADLER32 0x4c75bfa4
|
||||
#define STUB_POWERPC_DARWIN_MACHO_FOLD_CRC32 0xf7d60c1b
|
||||
#define STUB_POWERPC_DARWIN_MACHO_FOLD_ADLER32 0xac92c000
|
||||
#define STUB_POWERPC_DARWIN_MACHO_FOLD_CRC32 0x82d24b33
|
||||
|
||||
unsigned char stub_powerpc_darwin_macho_fold[2564] = {
|
||||
/* 0x0000 */ 72, 0, 0,105, 40, 6, 0,208, 76,130, 0, 32, 84,132,240,191,
|
||||
@ -46,7 +46,7 @@ unsigned char stub_powerpc_darwin_macho_fold[2564] = {
|
||||
/* 0x0070 */ 149, 33,255,252,124, 41, 11,120,125, 8, 2,166,128,159,255,248,
|
||||
/* 0x0080 */ 124,100,248, 80,128,195, 0, 24, 40, 6, 8, 0, 65,129, 0, 8,
|
||||
/* 0x0090 */ 56,192, 8, 0,124, 61, 11,120,124, 38, 8, 80,124, 37, 11,120,
|
||||
/* 0x00a0 */ 56, 33,255,232,127,231,251,120, 72, 0, 6,253,127,161,235,120,
|
||||
/* 0x00a0 */ 148, 33,255,232,127,231,251,120, 72, 0, 6,253,127,161,235,120,
|
||||
/* 0x00b0 */ 128, 67, 0, 0,124, 73, 3,166,128, 67, 0,136,124, 79,241, 32,
|
||||
/* 0x00c0 */ 128, 67, 0,140,124, 65, 3,166,128, 67, 0,144,124, 72, 3,166,
|
||||
/* 0x00d0 */ 184,131, 0, 24,128, 3, 0, 8,128, 67, 0, 16,128, 99, 0, 20,
|
||||
|
||||
@ -32,8 +32,8 @@
|
||||
|
||||
|
||||
#define STUB_POWERPC_LINUX_ELF_FOLD_SIZE 3312
|
||||
#define STUB_POWERPC_LINUX_ELF_FOLD_ADLER32 0xc36b66f0
|
||||
#define STUB_POWERPC_LINUX_ELF_FOLD_CRC32 0xcda01db9
|
||||
#define STUB_POWERPC_LINUX_ELF_FOLD_ADLER32 0x0276674c
|
||||
#define STUB_POWERPC_LINUX_ELF_FOLD_CRC32 0xa25eb95b
|
||||
|
||||
unsigned char stub_powerpc_linux_elf_fold[3312] = {
|
||||
/* 0x0000 */ 127, 69, 76, 70, 1, 2, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
@ -54,7 +54,7 @@ unsigned char stub_powerpc_linux_elf_fold[3312] = {
|
||||
/* 0x00f0 */ 128,159,255,248, 85, 30, 0, 38,127,231,251,120,127,164,248, 80,
|
||||
/* 0x0100 */ 56,161,248, 0, 59,189,255,248,160,221, 0, 44, 28,198, 0, 32,
|
||||
/* 0x0110 */ 56,198, 0, 52,124,134, 32, 80,124,125, 50, 20,127,106,219,120,
|
||||
/* 0x0120 */ 56, 33,247,232,128,195, 0, 24, 72, 0, 9,149,124,127, 27,120,
|
||||
/* 0x0120 */ 148, 33,247,232,128,195, 0, 24, 72, 0, 9,149,124,127, 27,120,
|
||||
/* 0x0130 */ 127,163,235,120,124,157,240, 80, 72, 0, 0, 81,127,232, 3,166,
|
||||
/* 0x0140 */ 184, 65, 8, 28,128, 33, 8, 24, 78,128, 0, 32, 56, 0, 0, 90,
|
||||
/* 0x0150 */ 68, 0, 0, 2, 64,163, 0, 8, 56, 96,255,255, 78,128, 0, 32,
|
||||
|
||||
@ -32,8 +32,8 @@
|
||||
|
||||
|
||||
#define STUB_POWERPC64LE_DARWIN_DYLIB_ENTRY_SIZE 11083
|
||||
#define STUB_POWERPC64LE_DARWIN_DYLIB_ENTRY_ADLER32 0x56a6c156
|
||||
#define STUB_POWERPC64LE_DARWIN_DYLIB_ENTRY_CRC32 0x013c1200
|
||||
#define STUB_POWERPC64LE_DARWIN_DYLIB_ENTRY_ADLER32 0x132bc217
|
||||
#define STUB_POWERPC64LE_DARWIN_DYLIB_ENTRY_CRC32 0xac3bff82
|
||||
|
||||
unsigned char stub_powerpc64le_darwin_dylib_entry[11083] = {
|
||||
/* 0x0000 */ 127, 69, 76, 70, 2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
@ -521,8 +521,8 @@ unsigned char stub_powerpc64le_darwin_dylib_entry[11083] = {
|
||||
/* 0x1e20 */ 104, 0,130, 65, 20, 26,123,127,120, 27,119,124, 4, 0,122, 56,
|
||||
/* 0x1e30 */ 29, 1, 0, 72, 20, 26, 90,127,120, 27,118,124, 12, 0, 90, 59,
|
||||
/* 0x1e40 */ 249,255,225,250,166, 3,232,127, 12, 0,120, 56,120,179,196,126,
|
||||
/* 0x1e50 */ 120,203, 37,127,120, 11, 38,124, 8, 0,248,136,208,255, 33, 56,
|
||||
/* 0x1e60 */ 33, 0,128, 78, 56, 0, 33, 56, 9, 0,216,136, 0, 0, 6, 40,
|
||||
/* 0x1e50 */ 120,203, 37,127,120, 11, 38,124, 8, 0,248,136,145,255, 33,248,
|
||||
/* 0x1e60 */ 33, 0,128, 78,120, 0, 33, 56, 9, 0,216,136, 0, 0, 6, 40,
|
||||
/* 0x1e70 */ 160,255,130, 65, 10, 0,184,136, 0, 0,152,232,120,203, 35,127,
|
||||
/* 0x1e80 */ 241, 0, 0, 72,140,255,255, 75,145, 0, 0, 72, 2, 0, 0, 68,
|
||||
/* 0x1e90 */ 255,255, 96, 56, 0, 0, 65,232, 8, 0, 97,232, 16, 0,129,232,
|
||||
|
||||
@ -32,8 +32,8 @@
|
||||
|
||||
|
||||
#define STUB_POWERPC64LE_DARWIN_MACHO_ENTRY_SIZE 10419
|
||||
#define STUB_POWERPC64LE_DARWIN_MACHO_ENTRY_ADLER32 0x7d02b0f9
|
||||
#define STUB_POWERPC64LE_DARWIN_MACHO_ENTRY_CRC32 0x99f59cfa
|
||||
#define STUB_POWERPC64LE_DARWIN_MACHO_ENTRY_ADLER32 0x4a23b17a
|
||||
#define STUB_POWERPC64LE_DARWIN_MACHO_ENTRY_CRC32 0x6b1877da
|
||||
|
||||
unsigned char stub_powerpc64le_darwin_macho_entry[10419] = {
|
||||
/* 0x0000 */ 127, 69, 76, 70, 2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
@ -502,7 +502,7 @@ unsigned char stub_powerpc64le_darwin_macho_entry[10419] = {
|
||||
/* 0x1cf0 */ 8, 0,130,128,166, 3,137,124, 4, 0,194,128, 12, 0,226,136,
|
||||
/* 0x1d00 */ 20, 18,164,124, 16, 0,165, 56, 20, 18,102,124,192, 0, 99, 56,
|
||||
/* 0x1d10 */ 255,255, 5,140,255,255, 3,156,248,255, 32, 67,166, 3,233,127,
|
||||
/* 0x1d20 */ 128, 0,162, 56,248,255,193,248,248,255,193, 56,208,255, 33, 56,
|
||||
/* 0x1d20 */ 128, 0,162, 56,248,255,193,248,248,255,193, 56,145,255, 33,248,
|
||||
/* 0x1d30 */ 32, 4,128, 78,166, 2,232,127,181,255,255, 75,128, 0, 0, 72,
|
||||
/* 0x1d40 */ 102,105,108,101, 32,102,111,114,109, 97,116, 32,101,108,102, 54,
|
||||
/* 0x1d50 */ 52, 45,112,111,119,101,114,112, 99,108,101, 10, 10, 83,101, 99,
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
/* powerpc64le-darwin.macho-fold.h
|
||||
created from powerpc64le-darwin.macho-fold.bin, 6504 (0x1968) bytes
|
||||
created from powerpc64le-darwin.macho-fold.bin, 6512 (0x1970) bytes
|
||||
|
||||
This file is part of the UPX executable compressor.
|
||||
|
||||
@ -31,158 +31,158 @@
|
||||
*/
|
||||
|
||||
|
||||
#define STUB_POWERPC64LE_DARWIN_MACHO_FOLD_SIZE 6504
|
||||
#define STUB_POWERPC64LE_DARWIN_MACHO_FOLD_ADLER32 0x5a4ec4ac
|
||||
#define STUB_POWERPC64LE_DARWIN_MACHO_FOLD_CRC32 0x2bc0f08d
|
||||
#define STUB_POWERPC64LE_DARWIN_MACHO_FOLD_SIZE 6512
|
||||
#define STUB_POWERPC64LE_DARWIN_MACHO_FOLD_ADLER32 0xf7b3c681
|
||||
#define STUB_POWERPC64LE_DARWIN_MACHO_FOLD_CRC32 0xeef454bf
|
||||
|
||||
unsigned char stub_powerpc64le_darwin_macho_fold[6504] = {
|
||||
/* 0x0000 */ 105, 0, 0, 72,208, 0, 6, 40, 32, 0,194, 76,191,240,132, 84,
|
||||
/* 0x0010 */ 32, 0,194, 77, 16, 0, 0, 60, 64, 0, 4,124, 8, 0,128, 65,
|
||||
/* 0x0020 */ 120, 3, 4,124, 32, 1,165, 56,120, 27,103,124,252,255, 99, 56,
|
||||
/* 0x0030 */ 166, 3,137,124, 28, 0, 0, 72,186, 2, 75, 84, 80, 88, 99,125,
|
||||
/* 0x0040 */ 20, 58,107,125,186, 1, 98, 81, 0, 0, 67,144, 32, 0, 64, 79,
|
||||
/* 0x0050 */ 4, 0, 67,132,190, 85, 75, 84, 64, 40, 11,124,220,255,194, 65,
|
||||
/* 0x0060 */ 240,255, 32, 67, 32, 0,128, 78, 24, 0, 33, 56, 0, 0, 32, 57,
|
||||
/* 0x0070 */ 252,255, 33,149,120, 11, 41,124,166, 2, 8,125,248,255,159,128,
|
||||
/* 0x0080 */ 80,248,100,124, 24, 0,195,128, 0, 8, 6, 40, 8, 0,129, 65,
|
||||
/* 0x0090 */ 0, 8,192, 56,120, 11, 61,124, 80, 8, 38,124,120, 11, 37,124,
|
||||
/* 0x00a0 */ 232,255, 33, 56,120,251,231,127,105, 6, 0, 72,120,235,161,127,
|
||||
/* 0x00b0 */ 0, 0, 67,128,166, 3, 73,124,136, 0, 67,128, 32,241, 79,124,
|
||||
/* 0x00c0 */ 140, 0, 67,128,166, 3, 65,124,144, 0, 67,128,166, 3, 72,124,
|
||||
/* 0x00d0 */ 24, 0,131,184, 8, 0, 3,128, 16, 0, 67,128, 20, 0, 99,128,
|
||||
/* 0x00e0 */ 32, 4,128, 78,120, 51,199,124, 0, 0,192, 56,153, 0, 0, 56,
|
||||
/* 0x00f0 */ 16, 0, 0, 72,120, 67, 9,125, 0, 0, 0, 57,197, 0, 0, 56,
|
||||
/* 0x0100 */ 2, 0, 0, 68,255,255, 96, 56, 32, 0,128, 78, 1, 0, 0, 56,
|
||||
/* 0x0110 */ 240,255,255, 75, 3, 0, 0, 56,232,255,255, 75, 5, 0, 0, 56,
|
||||
/* 0x0120 */ 224,255,255, 75, 6, 0, 0, 56,216,255,255, 75, 74, 0, 0, 56,
|
||||
/* 0x0130 */ 208,255,255, 75,112,255,193,249,120,255,225,249,128,255, 1,250,
|
||||
/* 0x0140 */ 136,255, 33,250,144,255, 65,250,152,255, 97,250,160,255,129,250,
|
||||
/* 0x0150 */ 168,255,161,250,176,255,193,250,184,255,225,250,192,255, 1,251,
|
||||
/* 0x0160 */ 200,255, 33,251,208,255, 65,251,216,255, 97,251,224,255,129,251,
|
||||
/* 0x0170 */ 232,255,161,251,240,255,193,251,248,255,225,251, 16, 0, 1,248,
|
||||
/* 0x0180 */ 32, 0,128, 78,112,255,193,233,120,255,225,233,128,255, 1,234,
|
||||
/* 0x0190 */ 136,255, 33,234,144,255, 65,234,152,255, 97,234,160,255,129,234,
|
||||
/* 0x01a0 */ 168,255,161,234,176,255,193,234,184,255,225,234,192,255, 1,235,
|
||||
/* 0x01b0 */ 200,255, 33,235,208,255, 65,235,216,255, 97,235,224,255,129,235,
|
||||
/* 0x01c0 */ 16, 0, 1,232,232,255,161,235,166, 3, 8,124,240,255,193,235,
|
||||
/* 0x01d0 */ 248,255,225,235, 32, 0,128, 78, 8, 0, 3,233, 0, 0, 67,233,
|
||||
/* 0x01e0 */ 64, 40,170,127, 40, 0,220, 65,255,255, 37, 57,255,255, 72, 57,
|
||||
/* 0x01f0 */ 255,255,132, 56, 20, 74, 40,125, 80, 72, 42,125,166, 3, 41,125,
|
||||
/* 0x0200 */ 0, 0,165, 47, 32, 0,158, 64, 40, 0, 0, 72,166, 2, 8,124,
|
||||
/* 0x0210 */ 16, 0, 1,248,145,255, 33,248,127, 0, 96, 56,241,254,255, 75,
|
||||
/* 0x0220 */ 0, 0, 0, 96, 1, 0, 42,141, 1, 0, 36,157,248,255, 0, 66,
|
||||
/* 0x0230 */ 8, 0, 35,233, 20, 42, 41,125, 8, 0, 35,249, 0, 0, 35,233,
|
||||
/* 0x0240 */ 80, 72,165,124, 0, 0,163,248, 32, 0,128, 78, 0, 0, 0, 0,
|
||||
/* 0x0250 */ 0, 0, 0, 1,128, 0, 0, 0,166, 2, 8,124, 16, 0, 1,248,
|
||||
/* 0x0260 */ 38, 0,128,125,224,255,129,251,232,255,161,251,240,255,193,251,
|
||||
/* 0x0270 */ 248,255,225,251, 8, 0,129,145, 97,255, 33,248, 0, 0, 36,233,
|
||||
/* 0x0280 */ 0, 0,169, 47, 92, 1,158, 65,120, 51,220,124,120, 43,189,124,
|
||||
/* 0x0290 */ 120, 35,159,124,120, 27,126,124, 0, 0, 38, 46,120,243,195,127,
|
||||
/* 0x02a0 */ 112, 0,129, 56, 12, 0,160, 56, 49,255,255, 75,112, 0, 33,129,
|
||||
/* 0x02b0 */ 0, 0,169, 47, 40, 0,158, 64,116, 0, 33,129, 88, 33, 64, 61,
|
||||
/* 0x02c0 */ 85, 80, 74, 97, 0, 80,137,127, 32, 0,222, 64, 0, 0, 62,233,
|
||||
/* 0x02d0 */ 0, 0,169, 47, 12, 1,254, 65, 16, 0, 0, 72,116, 0,161,128,
|
||||
/* 0x02e0 */ 0, 0,165, 47, 16, 0,254, 64,127, 0, 96, 56, 33,254,255, 75,
|
||||
/* 0x02f0 */ 0, 0, 0, 96, 64, 40,137,127,240,255,220, 65, 0, 0, 95,233,
|
||||
/* 0x0300 */ 64, 80,169,127,228,255,221, 65, 64, 40,137,127,164, 0,157, 64,
|
||||
/* 0x0310 */ 124, 0, 33,145, 8, 0,126,232,120, 43,164,124, 8, 0,191,232,
|
||||
/* 0x0320 */ 124, 0,193, 56,120, 0,225,136, 40, 0, 65,248, 0, 0, 61,233,
|
||||
/* 0x0330 */ 16, 0,125,233,166, 3, 41,125, 8, 0, 93,232, 33, 4,128, 78,
|
||||
/* 0x0340 */ 40, 0, 65,232, 0, 0,163, 47,160,255,222, 64,112, 0,129,128,
|
||||
/* 0x0350 */ 124, 0, 33,129, 0, 32,137,127,144,255,222, 64,121, 0,193,136,
|
||||
/* 0x0360 */ 0, 0,166, 47, 44, 0,158, 65, 40, 0,146, 65, 8, 0,127,232,
|
||||
/* 0x0370 */ 122, 0,161,136, 40, 0, 65,248, 0, 0, 60,233, 16, 0,124,233,
|
||||
/* 0x0380 */ 166, 3, 41,125, 8, 0, 92,232, 33, 4,128, 78, 40, 0, 65,232,
|
||||
/* 0x0390 */ 116, 0, 1,129, 8, 0, 94,233, 20, 66, 74,125, 8, 0, 94,249,
|
||||
/* 0x03a0 */ 0, 0, 62,233, 80, 72, 40,125, 0, 0, 62,249, 16, 0, 0, 72,
|
||||
/* 0x03b0 */ 120,243,195,127, 8, 0,159,232, 33,254,255, 75,112, 0, 1,129,
|
||||
/* 0x03c0 */ 8, 0, 95,233, 20, 66, 74,125, 8, 0, 95,249, 0, 0, 63,233,
|
||||
/* 0x03d0 */ 80, 72, 40,125, 0, 0, 63,249, 0, 0,169, 47,192,254,158, 64,
|
||||
/* 0x03e0 */ 160, 0, 33, 56, 16, 0, 1,232, 8, 0,129,129,166, 3, 8,124,
|
||||
/* 0x03f0 */ 224,255,129,235,232,255,161,235,240,255,193,235,248,255,225,235,
|
||||
/* 0x0400 */ 32,129,144,125, 32, 0,128, 78, 0, 0, 0, 0, 0, 0, 0, 3,
|
||||
/* 0x0410 */ 128, 4, 0, 0,166, 2, 8,124, 16, 0, 1,248, 38, 0,128,125,
|
||||
/* 0x0420 */ 120,255,225,249,128,255, 1,250,136,255, 33,250,144,255, 65,250,
|
||||
/* 0x0430 */ 152,255, 97,250,160,255,129,250,168,255,161,250,176,255,193,250,
|
||||
/* 0x0440 */ 184,255,225,250,192,255, 1,251,200,255, 33,251,208,255, 65,251,
|
||||
/* 0x0450 */ 216,255, 97,251,224,255,129,251,232,255,161,251,240,255,193,251,
|
||||
/* 0x0460 */ 248,255,225,251, 8, 0,129,145,241,254, 33,248,120, 27,123,124,
|
||||
/* 0x0470 */ 120, 75, 53,125, 28, 0,227, 59, 16, 0, 35,129, 0, 0,137, 47,
|
||||
/* 0x0480 */ 140, 1,158, 65,120, 35,153,124,120, 43,184,124,120, 51,215,124,
|
||||
/* 0x0490 */ 120, 59,244,124,120, 67, 22,125, 0, 0,160, 59, 0, 0, 96, 58,
|
||||
/* 0x04a0 */ 0, 0, 37, 46, 0, 0, 64, 59, 0, 0,128, 59, 18, 0, 64, 58,
|
||||
/* 0x04b0 */ 0, 0, 95,129, 1, 0,138, 43, 12, 1,158, 64, 36, 0, 63,129,
|
||||
/* 0x04c0 */ 112, 0, 33,249, 24, 0, 63,130,120, 0, 33,250, 28, 0, 31,130,
|
||||
/* 0x04d0 */ 20,130, 17,126,228, 4, 47,122, 32, 5, 49,122, 21, 74, 49,126,
|
||||
/* 0x04e0 */ 52, 1,130, 65, 16, 0,146, 64, 0, 0,169, 47, 64, 1,158, 65,
|
||||
/* 0x04f0 */ 48, 1, 0, 72,120,187,231,126, 0, 0,169, 47,100, 1,158, 64,
|
||||
/* 0x0500 */ 255,255,224, 56, 92, 1, 0, 72, 36, 0, 63,129, 0, 0,137, 47,
|
||||
/* 0x0510 */ 40, 0,158, 65, 32, 0, 63,129, 0, 0,137, 47, 8, 0,158, 64,
|
||||
/* 0x0520 */ 0, 0,244,249,120,195, 3,127,112, 0,129, 56,120,179,197,126,
|
||||
/* 0x0530 */ 120,171,166,126, 37,253,255, 75,208, 0,209,127, 33, 5,222,123,
|
||||
/* 0x0540 */ 24, 0,130, 65, 20,138, 47,125,255,255, 41, 57,166, 3,201,127,
|
||||
/* 0x0550 */ 1, 0,137,159,252,255, 0, 66, 0, 0,177, 47, 44, 0,158, 65,
|
||||
/* 0x0560 */ 120,123,227,125,120,139, 36,126, 46, 0,191,232,193,251,255, 75,
|
||||
/* 0x0570 */ 0, 0, 0, 96, 0, 0,163, 47, 16, 0,254, 65,127, 0, 96, 56,
|
||||
/* 0x0580 */ 141,251,255, 75, 0, 0, 0, 96, 20,138,222,127, 20,242,239,125,
|
||||
/* 0x0590 */ 64,120,176,127, 88, 0,157, 64,120,123,227,125, 80,128,143,124,
|
||||
/* 0x05a0 */ 44, 0,191,128, 18, 16,192, 56,255,255,224, 56,120,211, 72,127,
|
||||
/* 0x05b0 */ 69,251,255, 75, 0, 0, 0, 96, 0, 24,175,127, 48, 0,254, 65,
|
||||
/* 0x05c0 */ 188,255,255, 75,252,255, 74, 57, 1, 0,138, 43, 32, 0,157, 65,
|
||||
/* 0x05d0 */ 8, 0, 63,129, 1, 0,137, 47, 20, 0,158, 64, 12, 0, 63,129,
|
||||
/* 0x05e0 */ 40, 0,137, 47, 8, 0,158, 64, 16, 0,127, 58, 1, 0, 93, 57,
|
||||
/* 0x05f0 */ 32, 0, 93,121, 4, 0, 63,129, 20, 74,255,127, 16, 0, 59,129,
|
||||
/* 0x0600 */ 64, 80,137,127,172,254,157, 65,156, 0, 0, 72, 0, 0, 96, 58,
|
||||
/* 0x0610 */ 148, 0, 0, 72,124, 0,146, 64,120,211, 94,127,108,255,255, 75,
|
||||
/* 0x0620 */ 120,187,231,126,120,147, 70,126, 12, 0, 0, 72, 18, 16,192, 56,
|
||||
/* 0x0630 */ 255,255,224, 56, 32, 0, 31,129, 20,202, 8,125,120,123,227,125,
|
||||
/* 0x0640 */ 120,139, 36,126, 3, 0,160, 56, 32, 0, 8,121,169,250,255, 75,
|
||||
/* 0x0650 */ 0, 0, 0, 96, 0, 24,175,127,224,254,254, 65, 32,255,255, 75,
|
||||
/* 0x0660 */ 32, 0, 31,129, 20,202, 8,125,120,123,227,125,120,139, 36,126,
|
||||
/* 0x0670 */ 3, 0,160, 56, 18, 16,192, 56, 32, 0, 8,121,121,250,255, 75,
|
||||
/* 0x0680 */ 0, 0, 0, 96, 0, 24,175,127,128,254,254, 65,240,254,255, 75,
|
||||
/* 0x0690 */ 36, 0, 63,129,120,211, 94,127, 0, 0,137, 47,188,254,158, 65,
|
||||
/* 0x06a0 */ 116,254,255, 75,120,155, 99,126, 16, 1, 33, 56, 16, 0, 1,232,
|
||||
/* 0x06b0 */ 8, 0,129,129,166, 3, 8,124,120,255,225,233,128,255, 1,234,
|
||||
/* 0x06c0 */ 136,255, 33,234,144,255, 65,234,152,255, 97,234,160,255,129,234,
|
||||
/* 0x06d0 */ 168,255,161,234,176,255,193,234,184,255,225,234,192,255, 1,235,
|
||||
/* 0x06e0 */ 200,255, 33,235,208,255, 65,235,216,255, 97,235,224,255,129,235,
|
||||
/* 0x06f0 */ 232,255,161,235,240,255,193,235,248,255,225,235, 32,129,144,125,
|
||||
/* 0x0700 */ 32, 0,128, 78, 0, 0, 0, 0, 0, 0, 0, 3,128, 17, 0, 0,
|
||||
/* 0x0710 */ 166, 2, 8,124, 16, 0, 1,248,216,255, 97,251,224,255,129,251,
|
||||
/* 0x0720 */ 232,255,161,251,240,255,193,251,248,255,225,251, 49,255, 33,248,
|
||||
/* 0x0730 */ 8, 1,129,248,120, 43,191,124,120, 51,222,124,120, 59,253,124,
|
||||
/* 0x0740 */ 120, 67, 28,125,120, 75, 59,125, 24, 0,195, 56,120, 0,193,248,
|
||||
/* 0x0750 */ 8, 1, 65,233,232,255, 74, 57,112, 0, 65,249,136, 0,161,248,
|
||||
/* 0x0760 */ 24, 0, 35,129,128, 0, 33,249,144, 0, 65,249,152, 0,193,248,
|
||||
/* 0x0770 */ 112, 0, 97, 56,128, 0,129, 56,120, 59,229,124, 0, 0,192, 56,
|
||||
/* 0x0780 */ 217,250,255, 75,120,251,227,127, 0, 0,128, 56,144, 0,161, 56,
|
||||
/* 0x0790 */ 255,255,192, 56,120,219,103,127,120,235,168,127,120,227,137,127,
|
||||
/* 0x07a0 */ 117,252,255, 75,120, 27,124,124, 28, 0, 63, 57, 16, 0, 31,129,
|
||||
/* 0x07b0 */ 0, 0,168, 47, 64, 1,158, 65, 28, 0, 95,129, 14, 0,138, 47,
|
||||
/* 0x07c0 */ 40, 0,158, 65, 0, 0, 64, 57,255,255, 8, 57, 32, 0, 8,121,
|
||||
/* 0x07d0 */ 1, 0, 8, 57,166, 3, 9,125, 8, 1, 0, 72, 0, 0, 9,129,
|
||||
/* 0x07e0 */ 14, 0,136, 47,252, 0,158, 64, 8, 0,105,232, 20, 26,105,124,
|
||||
/* 0x07f0 */ 0, 0,128, 56, 0, 0,160, 56, 37,249,255, 75, 0, 0, 0, 96,
|
||||
/* 0x0800 */ 120, 27,125,124, 0, 0,131, 47, 48, 0,220, 65, 0, 0,128, 59,
|
||||
/* 0x0810 */ 254,202, 96, 63,190,186,123, 99,120,235,163,127,120,251,228,127,
|
||||
/* 0x0820 */ 120,243,197,127,120,227,134,127,189,248,255, 75, 0, 0, 0, 96,
|
||||
/* 0x0830 */ 0, 24,190,127, 16, 0,254, 65,127, 0, 96, 56,209,248,255, 75,
|
||||
/* 0x0840 */ 0, 0, 0, 96, 0, 0, 63,129, 0,216,137,127, 96, 0,158, 64,
|
||||
/* 0x0850 */ 8, 0, 63, 57, 4, 0, 95,129, 0, 0,170, 47, 80, 0,158, 65,
|
||||
/* 0x0860 */ 8, 0, 31,129, 18, 0,136, 47, 28, 0,158, 64, 16, 0, 0, 72,
|
||||
/* 0x0870 */ 0, 0, 73,129, 18, 0,138, 47, 40, 0,158, 64, 8, 0,137,131,
|
||||
/* 0x0880 */ 152,255,255, 75,255,255, 74, 57, 32, 0, 74,121,100, 23, 72,121,
|
||||
/* 0x0890 */ 228, 38, 74,121, 20, 82, 8,125, 28, 0, 8, 57, 20, 66, 31,125,
|
||||
/* 0x08a0 */ 20, 0, 41, 57, 64, 64,169,127,200,255,158, 64,120,251,227,127,
|
||||
/* 0x08b0 */ 120,227,132,127, 0, 0,160, 56,120,235,166,127, 0, 0,224, 56,
|
||||
/* 0x08c0 */ 0, 0, 0, 57, 0, 0, 32, 57, 77,251,255, 75,120, 27,124,124,
|
||||
/* 0x08d0 */ 120,235,163,127, 81,248,255, 75, 0, 0, 0, 96, 24, 0, 0, 72,
|
||||
/* 0x08e0 */ 1, 0, 74, 57, 32, 0, 74,121, 4, 0, 9,129, 20, 66, 41,125,
|
||||
/* 0x08f0 */ 236,254, 0, 66,120,227,131,127,208, 0, 33, 56, 16, 0, 1,232,
|
||||
/* 0x0900 */ 166, 3, 8,124,216,255, 97,235,224,255,129,235,232,255,161,235,
|
||||
/* 0x0910 */ 240,255,193,235,248,255,225,235, 32, 0,128, 78, 0, 0, 0, 0,
|
||||
/* 0x0920 */ 0, 0, 0, 1,128, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
unsigned char stub_powerpc64le_darwin_macho_fold[6512] = {
|
||||
/* 0x0000 */ 8, 0,128,124,105, 0, 0, 72,208, 0, 6, 40, 32, 0,194, 76,
|
||||
/* 0x0010 */ 191,240,132, 84, 32, 0,194, 77, 16, 0, 0, 60, 64, 0, 4,124,
|
||||
/* 0x0020 */ 8, 0,128, 65,120, 3, 4,124, 32, 1,165, 56,120, 27,103,124,
|
||||
/* 0x0030 */ 252,255, 99, 56,166, 3,137,124, 28, 0, 0, 72,186, 2, 75, 84,
|
||||
/* 0x0040 */ 80, 88, 99,125, 20, 58,107,125,186, 1, 98, 81, 0, 0, 67,144,
|
||||
/* 0x0050 */ 32, 0, 64, 79, 4, 0, 67,132,190, 85, 75, 84, 64, 40, 11,124,
|
||||
/* 0x0060 */ 220,255,194, 65,240,255, 32, 67, 32, 0,128, 78,112, 0, 33, 56,
|
||||
/* 0x0070 */ 0, 0, 32, 57,252,255, 33,149,120, 11, 41,124,166, 2, 8,125,
|
||||
/* 0x0080 */ 248,255,159,128, 80,248,100,124, 24, 0,195,128, 0, 8, 6, 40,
|
||||
/* 0x0090 */ 8, 0,129, 65, 0, 8,192, 56,120, 11, 61,124, 80, 8, 38,124,
|
||||
/* 0x00a0 */ 120, 11, 37,124,145,255, 33,248,120,251,231,127,105, 6, 0, 72,
|
||||
/* 0x00b0 */ 120,235,161,127, 0, 0, 67,128,166, 3, 73,124,136, 0, 67,128,
|
||||
/* 0x00c0 */ 32,241, 79,124,140, 0, 67,128,166, 3, 65,124,144, 0, 67,128,
|
||||
/* 0x00d0 */ 166, 3, 72,124, 24, 0,131,184, 8, 0, 3,128, 16, 0, 67,128,
|
||||
/* 0x00e0 */ 20, 0, 99,128, 32, 4,128, 78,120, 51,199,124, 0, 0,192, 56,
|
||||
/* 0x00f0 */ 153, 0, 0, 56, 16, 0, 0, 72,120, 67, 9,125, 0, 0, 0, 57,
|
||||
/* 0x0100 */ 197, 0, 0, 56, 2, 0, 0, 68,255,255, 96, 56, 32, 0,128, 78,
|
||||
/* 0x0110 */ 1, 0, 0, 56,240,255,255, 75, 3, 0, 0, 56,232,255,255, 75,
|
||||
/* 0x0120 */ 5, 0, 0, 56,224,255,255, 75, 6, 0, 0, 56,216,255,255, 75,
|
||||
/* 0x0130 */ 74, 0, 0, 56,208,255,255, 75,112,255,193,249,120,255,225,249,
|
||||
/* 0x0140 */ 128,255, 1,250,136,255, 33,250,144,255, 65,250,152,255, 97,250,
|
||||
/* 0x0150 */ 160,255,129,250,168,255,161,250,176,255,193,250,184,255,225,250,
|
||||
/* 0x0160 */ 192,255, 1,251,200,255, 33,251,208,255, 65,251,216,255, 97,251,
|
||||
/* 0x0170 */ 224,255,129,251,232,255,161,251,240,255,193,251,248,255,225,251,
|
||||
/* 0x0180 */ 16, 0, 1,248, 32, 0,128, 78,112,255,193,233,120,255,225,233,
|
||||
/* 0x0190 */ 128,255, 1,234,136,255, 33,234,144,255, 65,234,152,255, 97,234,
|
||||
/* 0x01a0 */ 160,255,129,234,168,255,161,234,176,255,193,234,184,255,225,234,
|
||||
/* 0x01b0 */ 192,255, 1,235,200,255, 33,235,208,255, 65,235,216,255, 97,235,
|
||||
/* 0x01c0 */ 224,255,129,235, 16, 0, 1,232,232,255,161,235,166, 3, 8,124,
|
||||
/* 0x01d0 */ 240,255,193,235,248,255,225,235, 32, 0,128, 78, 8, 0, 3,233,
|
||||
/* 0x01e0 */ 0, 0, 67,233, 64, 40,170,127, 40, 0,220, 65,255,255, 37, 57,
|
||||
/* 0x01f0 */ 255,255, 72, 57,255,255,132, 56, 20, 74, 40,125, 80, 72, 42,125,
|
||||
/* 0x0200 */ 166, 3, 41,125, 0, 0,165, 47, 32, 0,158, 64, 40, 0, 0, 72,
|
||||
/* 0x0210 */ 166, 2, 8,124, 16, 0, 1,248,145,255, 33,248,127, 0, 96, 56,
|
||||
/* 0x0220 */ 241,254,255, 75, 0, 0, 0, 96, 1, 0, 42,141, 1, 0, 36,157,
|
||||
/* 0x0230 */ 248,255, 0, 66, 8, 0, 35,233, 20, 42, 41,125, 8, 0, 35,249,
|
||||
/* 0x0240 */ 0, 0, 35,233, 80, 72,165,124, 0, 0,163,248, 32, 0,128, 78,
|
||||
/* 0x0250 */ 0, 0, 0, 0, 0, 0, 0, 1,128, 0, 0, 0,166, 2, 8,124,
|
||||
/* 0x0260 */ 16, 0, 1,248, 38, 0,128,125,224,255,129,251,232,255,161,251,
|
||||
/* 0x0270 */ 240,255,193,251,248,255,225,251, 8, 0,129,145, 97,255, 33,248,
|
||||
/* 0x0280 */ 0, 0, 36,233, 0, 0,169, 47, 92, 1,158, 65,120, 51,220,124,
|
||||
/* 0x0290 */ 120, 43,189,124,120, 35,159,124,120, 27,126,124, 0, 0, 38, 46,
|
||||
/* 0x02a0 */ 120,243,195,127,112, 0,129, 56, 12, 0,160, 56, 49,255,255, 75,
|
||||
/* 0x02b0 */ 112, 0, 33,129, 0, 0,169, 47, 40, 0,158, 64,116, 0, 33,129,
|
||||
/* 0x02c0 */ 88, 33, 64, 61, 85, 80, 74, 97, 0, 80,137,127, 32, 0,222, 64,
|
||||
/* 0x02d0 */ 0, 0, 62,233, 0, 0,169, 47, 12, 1,254, 65, 16, 0, 0, 72,
|
||||
/* 0x02e0 */ 116, 0,161,128, 0, 0,165, 47, 16, 0,254, 64,127, 0, 96, 56,
|
||||
/* 0x02f0 */ 33,254,255, 75, 0, 0, 0, 96, 64, 40,137,127,240,255,220, 65,
|
||||
/* 0x0300 */ 0, 0, 95,233, 64, 80,169,127,228,255,221, 65, 64, 40,137,127,
|
||||
/* 0x0310 */ 164, 0,157, 64,124, 0, 33,145, 8, 0,126,232,120, 43,164,124,
|
||||
/* 0x0320 */ 8, 0,191,232,124, 0,193, 56,120, 0,225,136, 40, 0, 65,248,
|
||||
/* 0x0330 */ 0, 0, 61,233, 16, 0,125,233,166, 3, 41,125, 8, 0, 93,232,
|
||||
/* 0x0340 */ 33, 4,128, 78, 40, 0, 65,232, 0, 0,163, 47,160,255,222, 64,
|
||||
/* 0x0350 */ 112, 0,129,128,124, 0, 33,129, 0, 32,137,127,144,255,222, 64,
|
||||
/* 0x0360 */ 121, 0,193,136, 0, 0,166, 47, 44, 0,158, 65, 40, 0,146, 65,
|
||||
/* 0x0370 */ 8, 0,127,232,122, 0,161,136, 40, 0, 65,248, 0, 0, 60,233,
|
||||
/* 0x0380 */ 16, 0,124,233,166, 3, 41,125, 8, 0, 92,232, 33, 4,128, 78,
|
||||
/* 0x0390 */ 40, 0, 65,232,116, 0, 1,129, 8, 0, 94,233, 20, 66, 74,125,
|
||||
/* 0x03a0 */ 8, 0, 94,249, 0, 0, 62,233, 80, 72, 40,125, 0, 0, 62,249,
|
||||
/* 0x03b0 */ 16, 0, 0, 72,120,243,195,127, 8, 0,159,232, 33,254,255, 75,
|
||||
/* 0x03c0 */ 112, 0, 1,129, 8, 0, 95,233, 20, 66, 74,125, 8, 0, 95,249,
|
||||
/* 0x03d0 */ 0, 0, 63,233, 80, 72, 40,125, 0, 0, 63,249, 0, 0,169, 47,
|
||||
/* 0x03e0 */ 192,254,158, 64,160, 0, 33, 56, 16, 0, 1,232, 8, 0,129,129,
|
||||
/* 0x03f0 */ 166, 3, 8,124,224,255,129,235,232,255,161,235,240,255,193,235,
|
||||
/* 0x0400 */ 248,255,225,235, 32,129,144,125, 32, 0,128, 78, 0, 0, 0, 0,
|
||||
/* 0x0410 */ 0, 0, 0, 3,128, 4, 0, 0,166, 2, 8,124, 16, 0, 1,248,
|
||||
/* 0x0420 */ 38, 0,128,125,120,255,225,249,128,255, 1,250,136,255, 33,250,
|
||||
/* 0x0430 */ 144,255, 65,250,152,255, 97,250,160,255,129,250,168,255,161,250,
|
||||
/* 0x0440 */ 176,255,193,250,184,255,225,250,192,255, 1,251,200,255, 33,251,
|
||||
/* 0x0450 */ 208,255, 65,251,216,255, 97,251,224,255,129,251,232,255,161,251,
|
||||
/* 0x0460 */ 240,255,193,251,248,255,225,251, 8, 0,129,145,241,254, 33,248,
|
||||
/* 0x0470 */ 120, 27,123,124,120, 75, 53,125, 28, 0,227, 59, 16, 0, 35,129,
|
||||
/* 0x0480 */ 0, 0,137, 47,140, 1,158, 65,120, 35,153,124,120, 43,184,124,
|
||||
/* 0x0490 */ 120, 51,215,124,120, 59,244,124,120, 67, 22,125, 0, 0,160, 59,
|
||||
/* 0x04a0 */ 0, 0, 96, 58, 0, 0, 37, 46, 0, 0, 64, 59, 0, 0,128, 59,
|
||||
/* 0x04b0 */ 18, 0, 64, 58, 0, 0, 95,129, 1, 0,138, 43, 12, 1,158, 64,
|
||||
/* 0x04c0 */ 36, 0, 63,129,112, 0, 33,249, 24, 0, 63,130,120, 0, 33,250,
|
||||
/* 0x04d0 */ 28, 0, 31,130, 20,130, 17,126,228, 4, 47,122, 32, 5, 49,122,
|
||||
/* 0x04e0 */ 21, 74, 49,126, 52, 1,130, 65, 16, 0,146, 64, 0, 0,169, 47,
|
||||
/* 0x04f0 */ 64, 1,158, 65, 48, 1, 0, 72,120,187,231,126, 0, 0,169, 47,
|
||||
/* 0x0500 */ 100, 1,158, 64,255,255,224, 56, 92, 1, 0, 72, 36, 0, 63,129,
|
||||
/* 0x0510 */ 0, 0,137, 47, 40, 0,158, 65, 32, 0, 63,129, 0, 0,137, 47,
|
||||
/* 0x0520 */ 8, 0,158, 64, 0, 0,244,249,120,195, 3,127,112, 0,129, 56,
|
||||
/* 0x0530 */ 120,179,197,126,120,171,166,126, 37,253,255, 75,208, 0,209,127,
|
||||
/* 0x0540 */ 33, 5,222,123, 24, 0,130, 65, 20,138, 47,125,255,255, 41, 57,
|
||||
/* 0x0550 */ 166, 3,201,127, 1, 0,137,159,252,255, 0, 66, 0, 0,177, 47,
|
||||
/* 0x0560 */ 44, 0,158, 65,120,123,227,125,120,139, 36,126, 46, 0,191,232,
|
||||
/* 0x0570 */ 193,251,255, 75, 0, 0, 0, 96, 0, 0,163, 47, 16, 0,254, 65,
|
||||
/* 0x0580 */ 127, 0, 96, 56,141,251,255, 75, 0, 0, 0, 96, 20,138,222,127,
|
||||
/* 0x0590 */ 20,242,239,125, 64,120,176,127, 88, 0,157, 64,120,123,227,125,
|
||||
/* 0x05a0 */ 80,128,143,124, 44, 0,191,128, 18, 16,192, 56,255,255,224, 56,
|
||||
/* 0x05b0 */ 120,211, 72,127, 69,251,255, 75, 0, 0, 0, 96, 0, 24,175,127,
|
||||
/* 0x05c0 */ 48, 0,254, 65,188,255,255, 75,252,255, 74, 57, 1, 0,138, 43,
|
||||
/* 0x05d0 */ 32, 0,157, 65, 8, 0, 63,129, 1, 0,137, 47, 20, 0,158, 64,
|
||||
/* 0x05e0 */ 12, 0, 63,129, 40, 0,137, 47, 8, 0,158, 64, 16, 0,127, 58,
|
||||
/* 0x05f0 */ 1, 0, 93, 57, 32, 0, 93,121, 4, 0, 63,129, 20, 74,255,127,
|
||||
/* 0x0600 */ 16, 0, 59,129, 64, 80,137,127,172,254,157, 65,156, 0, 0, 72,
|
||||
/* 0x0610 */ 0, 0, 96, 58,148, 0, 0, 72,124, 0,146, 64,120,211, 94,127,
|
||||
/* 0x0620 */ 108,255,255, 75,120,187,231,126,120,147, 70,126, 12, 0, 0, 72,
|
||||
/* 0x0630 */ 18, 16,192, 56,255,255,224, 56, 32, 0, 31,129, 20,202, 8,125,
|
||||
/* 0x0640 */ 120,123,227,125,120,139, 36,126, 3, 0,160, 56, 32, 0, 8,121,
|
||||
/* 0x0650 */ 169,250,255, 75, 0, 0, 0, 96, 0, 24,175,127,224,254,254, 65,
|
||||
/* 0x0660 */ 32,255,255, 75, 32, 0, 31,129, 20,202, 8,125,120,123,227,125,
|
||||
/* 0x0670 */ 120,139, 36,126, 3, 0,160, 56, 18, 16,192, 56, 32, 0, 8,121,
|
||||
/* 0x0680 */ 121,250,255, 75, 0, 0, 0, 96, 0, 24,175,127,128,254,254, 65,
|
||||
/* 0x0690 */ 240,254,255, 75, 36, 0, 63,129,120,211, 94,127, 0, 0,137, 47,
|
||||
/* 0x06a0 */ 188,254,158, 65,116,254,255, 75,120,155, 99,126, 16, 1, 33, 56,
|
||||
/* 0x06b0 */ 16, 0, 1,232, 8, 0,129,129,166, 3, 8,124,120,255,225,233,
|
||||
/* 0x06c0 */ 128,255, 1,234,136,255, 33,234,144,255, 65,234,152,255, 97,234,
|
||||
/* 0x06d0 */ 160,255,129,234,168,255,161,234,176,255,193,234,184,255,225,234,
|
||||
/* 0x06e0 */ 192,255, 1,235,200,255, 33,235,208,255, 65,235,216,255, 97,235,
|
||||
/* 0x06f0 */ 224,255,129,235,232,255,161,235,240,255,193,235,248,255,225,235,
|
||||
/* 0x0700 */ 32,129,144,125, 32, 0,128, 78, 0, 0, 0, 0, 0, 0, 0, 3,
|
||||
/* 0x0710 */ 128, 17, 0, 0,166, 2, 8,124, 16, 0, 1,248,216,255, 97,251,
|
||||
/* 0x0720 */ 224,255,129,251,232,255,161,251,240,255,193,251,248,255,225,251,
|
||||
/* 0x0730 */ 49,255, 33,248, 8, 1,129,248,120, 43,191,124,120, 51,222,124,
|
||||
/* 0x0740 */ 120, 59,253,124,120, 67, 28,125,120, 75, 59,125, 24, 0,195, 56,
|
||||
/* 0x0750 */ 120, 0,193,248, 8, 1, 65,233,232,255, 74, 57,112, 0, 65,249,
|
||||
/* 0x0760 */ 136, 0,161,248, 24, 0, 35,129,128, 0, 33,249,144, 0, 65,249,
|
||||
/* 0x0770 */ 152, 0,193,248,112, 0, 97, 56,128, 0,129, 56,120, 59,229,124,
|
||||
/* 0x0780 */ 0, 0,192, 56,217,250,255, 75,120,251,227,127, 0, 0,128, 56,
|
||||
/* 0x0790 */ 144, 0,161, 56,255,255,192, 56,120,219,103,127,120,235,168,127,
|
||||
/* 0x07a0 */ 120,227,137,127,117,252,255, 75,120, 27,124,124, 28, 0, 63, 57,
|
||||
/* 0x07b0 */ 16, 0, 31,129, 0, 0,168, 47, 64, 1,158, 65, 28, 0, 95,129,
|
||||
/* 0x07c0 */ 14, 0,138, 47, 40, 0,158, 65, 0, 0, 64, 57,255,255, 8, 57,
|
||||
/* 0x07d0 */ 32, 0, 8,121, 1, 0, 8, 57,166, 3, 9,125, 8, 1, 0, 72,
|
||||
/* 0x07e0 */ 0, 0, 9,129, 14, 0,136, 47,252, 0,158, 64, 8, 0,105,232,
|
||||
/* 0x07f0 */ 20, 26,105,124, 0, 0,128, 56, 0, 0,160, 56, 37,249,255, 75,
|
||||
/* 0x0800 */ 0, 0, 0, 96,120, 27,125,124, 0, 0,131, 47, 48, 0,220, 65,
|
||||
/* 0x0810 */ 0, 0,128, 59,254,202, 96, 63,190,186,123, 99,120,235,163,127,
|
||||
/* 0x0820 */ 120,251,228,127,120,243,197,127,120,227,134,127,189,248,255, 75,
|
||||
/* 0x0830 */ 0, 0, 0, 96, 0, 24,190,127, 16, 0,254, 65,127, 0, 96, 56,
|
||||
/* 0x0840 */ 209,248,255, 75, 0, 0, 0, 96, 0, 0, 63,129, 0,216,137,127,
|
||||
/* 0x0850 */ 96, 0,158, 64, 8, 0, 63, 57, 4, 0, 95,129, 0, 0,170, 47,
|
||||
/* 0x0860 */ 80, 0,158, 65, 8, 0, 31,129, 18, 0,136, 47, 28, 0,158, 64,
|
||||
/* 0x0870 */ 16, 0, 0, 72, 0, 0, 73,129, 18, 0,138, 47, 40, 0,158, 64,
|
||||
/* 0x0880 */ 8, 0,137,131,152,255,255, 75,255,255, 74, 57, 32, 0, 74,121,
|
||||
/* 0x0890 */ 100, 23, 72,121,228, 38, 74,121, 20, 82, 8,125, 28, 0, 8, 57,
|
||||
/* 0x08a0 */ 20, 66, 31,125, 20, 0, 41, 57, 64, 64,169,127,200,255,158, 64,
|
||||
/* 0x08b0 */ 120,251,227,127,120,227,132,127, 0, 0,160, 56,120,235,166,127,
|
||||
/* 0x08c0 */ 0, 0,224, 56, 0, 0, 0, 57, 0, 0, 32, 57, 77,251,255, 75,
|
||||
/* 0x08d0 */ 120, 27,124,124,120,235,163,127, 81,248,255, 75, 0, 0, 0, 96,
|
||||
/* 0x08e0 */ 24, 0, 0, 72, 1, 0, 74, 57, 32, 0, 74,121, 4, 0, 9,129,
|
||||
/* 0x08f0 */ 20, 66, 41,125,236,254, 0, 66,120,227,131,127,208, 0, 33, 56,
|
||||
/* 0x0900 */ 16, 0, 1,232,166, 3, 8,124,216,255, 97,235,224,255,129,235,
|
||||
/* 0x0910 */ 232,255,161,235,240,255,193,235,248,255,225,235, 32, 0,128, 78,
|
||||
/* 0x0920 */ 0, 0, 0, 0, 0, 0, 0, 1,128, 5, 0, 0, 0, 0, 0, 0,
|
||||
/* 0x0930 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
/* 0x0940 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
/* 0x0950 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
@ -438,9 +438,9 @@ unsigned char stub_powerpc64le_darwin_macho_fold[6504] = {
|
||||
/* 0x18f0 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
/* 0x1900 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
/* 0x1910 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
/* 0x1920 */ 0, 0, 0, 0, 0, 0, 0, 0,216,129, 4, 8, 0, 0, 0, 0,
|
||||
/* 0x1930 */ 0, 25, 5, 8, 0, 0, 0, 0, 88,130, 4, 8, 0, 0, 0, 0,
|
||||
/* 0x1940 */ 0, 25, 5, 8, 0, 0, 0, 0, 20,132, 4, 8, 0, 0, 0, 0,
|
||||
/* 0x1950 */ 0, 25, 5, 8, 0, 0, 0, 0, 16,135, 4, 8, 0, 0, 0, 0,
|
||||
/* 0x1960 */ 0, 25, 5, 8, 0, 0, 0, 0
|
||||
/* 0x1920 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
/* 0x1930 */ 220,129, 4, 8, 0, 0, 0, 0, 0, 25, 5, 8, 0, 0, 0, 0,
|
||||
/* 0x1940 */ 92,130, 4, 8, 0, 0, 0, 0, 0, 25, 5, 8, 0, 0, 0, 0,
|
||||
/* 0x1950 */ 24,132, 4, 8, 0, 0, 0, 0, 0, 25, 5, 8, 0, 0, 0, 0,
|
||||
/* 0x1960 */ 20,135, 4, 8, 0, 0, 0, 0, 0, 25, 5, 8, 0, 0, 0, 0
|
||||
};
|
||||
|
||||
@ -32,8 +32,8 @@
|
||||
|
||||
|
||||
#define STUB_POWERPC64LE_LINUX_ELF_ENTRY_SIZE 10907
|
||||
#define STUB_POWERPC64LE_LINUX_ELF_ENTRY_ADLER32 0x4378349b
|
||||
#define STUB_POWERPC64LE_LINUX_ELF_ENTRY_CRC32 0x18bd7948
|
||||
#define STUB_POWERPC64LE_LINUX_ELF_ENTRY_ADLER32 0xce11351c
|
||||
#define STUB_POWERPC64LE_LINUX_ELF_ENTRY_CRC32 0x02d43381
|
||||
|
||||
unsigned char stub_powerpc64le_linux_elf_entry[10907] = {
|
||||
/* 0x0000 */ 127, 69, 76, 70, 2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
@ -509,7 +509,7 @@ unsigned char stub_powerpc64le_linux_elf_entry[10907] = {
|
||||
/* 0x1d60 */ 90, 0, 0, 56, 11, 0, 99, 56, 20, 34, 99,124, 30, 0, 99, 84,
|
||||
/* 0x1d70 */ 2, 0, 0, 68, 0, 0,195, 65,166, 3,233,127, 0, 0, 30,128,
|
||||
/* 0x1d80 */ 8, 0,254,136,248, 0,193, 56,248, 0, 1,248,120, 27,101,124,
|
||||
/* 0x1d90 */ 166, 3,104,124, 4, 0,158,128, 12, 0,126, 56,208,255, 33, 56,
|
||||
/* 0x1d90 */ 166, 3,104,124, 4, 0,158,128, 12, 0,126, 56,145,255, 33,248,
|
||||
/* 0x1da0 */ 32, 4,128, 78, 1,255, 33,248, 8, 0, 65,248, 16, 0, 97,248,
|
||||
/* 0x1db0 */ 24, 0,129,248, 32, 0,161,248, 40, 0,193,248, 48, 0,225,248,
|
||||
/* 0x1dc0 */ 56, 0, 1,249, 64, 0, 33,249, 72, 0, 65,249, 80, 0, 97,249,
|
||||
|
||||
@ -32,8 +32,8 @@
|
||||
|
||||
|
||||
#define STUB_POWERPC64LE_LINUX_ELF_FOLD_SIZE 2507
|
||||
#define STUB_POWERPC64LE_LINUX_ELF_FOLD_ADLER32 0x672f8a9f
|
||||
#define STUB_POWERPC64LE_LINUX_ELF_FOLD_CRC32 0x063cc76e
|
||||
#define STUB_POWERPC64LE_LINUX_ELF_FOLD_ADLER32 0x6a408a67
|
||||
#define STUB_POWERPC64LE_LINUX_ELF_FOLD_CRC32 0xc4e7756e
|
||||
|
||||
unsigned char stub_powerpc64le_linux_elf_fold[2507] = {
|
||||
/* 0x0000 */ 127, 69, 76, 70, 2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
@ -55,21 +55,21 @@ unsigned char stub_powerpc64le_linux_elf_fold[2507] = {
|
||||
/* 0x0100 */ 186, 1, 98, 81, 0, 0, 67,144, 32, 0, 64, 79, 4, 0, 67,132,
|
||||
/* 0x0110 */ 190, 85, 75, 84, 64, 40, 11,124,220,255,194, 65,240,255, 32, 67,
|
||||
/* 0x0120 */ 32, 0,128, 78, 0, 0, 73,232, 8, 0, 41, 57, 0, 0,162, 43,
|
||||
/* 0x0130 */ 244,255,254, 64, 32, 0,128, 78, 48, 0, 33, 56,166, 2, 8,125,
|
||||
/* 0x0130 */ 244,255,254, 64, 32, 0,128, 78,112, 0, 33, 56,166, 2, 8,125,
|
||||
/* 0x0140 */ 0, 0, 33,233,225,255,255, 75,221,255,255, 75,248,255,159,128,
|
||||
/* 0x0150 */ 38, 0, 30, 85,120,243,202,127,120,251,231,127, 80,248,164,127,
|
||||
/* 0x0160 */ 0,248,161, 56,248,255,189, 59, 56, 0,221,160, 56, 0,198, 28,
|
||||
/* 0x0170 */ 64, 0,198, 56, 80, 32,134,124, 20, 50,125,124,208,247, 33, 56,
|
||||
/* 0x0170 */ 64, 0,198, 56, 80, 32,134,124, 20, 50,125,124,144,247, 33, 56,
|
||||
/* 0x0180 */ 24, 0,195,128,205, 5, 0, 72,120, 27,127,124,120,235,163,127,
|
||||
/* 0x0190 */ 80,240,157,124,201, 0, 0, 72,166, 3,232,127, 56, 8, 65,232,
|
||||
/* 0x01a0 */ 64, 8, 97,232, 72, 8,129,232, 80, 8,161,232, 88, 8,193,232,
|
||||
/* 0x01b0 */ 96, 8,225,232,104, 8, 1,233,112, 8, 33,233,120, 8, 65,233,
|
||||
/* 0x01c0 */ 128, 8, 97,233,136, 8,129,233,144, 8,161,233,152, 8,193,233,
|
||||
/* 0x01d0 */ 160, 8,225,233,168, 8, 1,234,176, 8, 33,234,184, 8, 65,234,
|
||||
/* 0x01e0 */ 192, 8, 97,234,200, 8,129,234,208, 8,161,234,216, 8,193,234,
|
||||
/* 0x01f0 */ 224, 8,225,234,232, 8, 1,235,240, 8, 33,235,248, 8, 65,235,
|
||||
/* 0x0200 */ 0, 9, 97,235, 8, 9,129,235, 16, 9,161,235, 24, 9,193,235,
|
||||
/* 0x0210 */ 32, 9,225,235, 48, 8, 33,232,166, 2,136,125, 32, 0,128, 78,
|
||||
/* 0x0190 */ 80,240,157,124,201, 0, 0, 72,166, 3,232,127,120, 8, 65,232,
|
||||
/* 0x01a0 */ 128, 8, 97,232,136, 8,129,232,144, 8,161,232,152, 8,193,232,
|
||||
/* 0x01b0 */ 160, 8,225,232,168, 8, 1,233,176, 8, 33,233,184, 8, 65,233,
|
||||
/* 0x01c0 */ 192, 8, 97,233,200, 8,129,233,208, 8,161,233,216, 8,193,233,
|
||||
/* 0x01d0 */ 224, 8,225,233,232, 8, 1,234,240, 8, 33,234,248, 8, 65,234,
|
||||
/* 0x01e0 */ 0, 9, 97,234, 8, 9,129,234, 16, 9,161,234, 24, 9,193,234,
|
||||
/* 0x01f0 */ 32, 9,225,234, 40, 9, 1,235, 48, 9, 33,235, 56, 9, 65,235,
|
||||
/* 0x0200 */ 64, 9, 97,235, 72, 9,129,235, 80, 9,161,235, 88, 9,193,235,
|
||||
/* 0x0210 */ 96, 9,225,235,112, 8, 33,232,166, 2,136,125, 32, 0,128, 78,
|
||||
/* 0x0220 */ 90, 0, 0, 56, 2, 0, 0, 68, 8, 0,227, 64,255,255, 96, 56,
|
||||
/* 0x0230 */ 32, 0,128, 78, 1, 0, 0, 56,236,255,255, 75, 3, 0, 0, 56,
|
||||
/* 0x0240 */ 228,255,255, 75, 5, 0, 0, 56,220,255,255, 75, 6, 0, 0, 56,
|
||||
|
||||
@ -13,6 +13,7 @@
|
||||
|
||||
/* Stack pointer */
|
||||
#define sp 1
|
||||
SZ_FRAME= 6*4 // (sp,cr,lr, xx,yy,zz) save area per calling convention
|
||||
|
||||
/* Subroutine arguments; not saved by callee */
|
||||
#define a0 3
|
||||
|
||||
@ -36,6 +36,7 @@
|
||||
|
||||
/* Stack pointer */
|
||||
#define sp 1
|
||||
SZ_FRAME= 6*8 + 8*8 // (sp,cr,lr, xx,yy,zz) + spill area for a0-a7
|
||||
|
||||
/* Subroutine arguments; not saved by callee */
|
||||
#define a0 3
|
||||
|
||||
@ -137,8 +137,6 @@ sz_b_info= 12
|
||||
#define l_cpr 22
|
||||
#define t_h 21 /* temporary */
|
||||
|
||||
LINKAREA= 6*4 // (sp,pc,cr, xx,yy.zz) save area per calling convention
|
||||
|
||||
PROT_NONE =0x00
|
||||
PROT_READ =0x01
|
||||
PROT_WRITE =0x02
|
||||
@ -225,9 +223,9 @@ dy_uncpr:
|
||||
mr a2,s_unc # dst
|
||||
mr a3,sp # &l_dst
|
||||
lbz a4,b_method(s_cpr)
|
||||
la sp,-LINKAREA(sp)
|
||||
stwu sp,-SZ_FRAME(sp)
|
||||
blrl # uncompress
|
||||
la sp,8+LINKAREA(sp)
|
||||
la sp,8+SZ_FRAME(sp)
|
||||
// FIXME: check status
|
||||
|
||||
lbz a3,b_ftid(s_cpr); cmpli cr0,a3,0; beq dy_uncpr
|
||||
|
||||
@ -130,7 +130,7 @@ movup: # descending copy moves folded_loader to higher address
|
||||
addi dst,t0,GAP # &unfolded result
|
||||
stw ldst,-4(sp) # LZMA needs for EOF
|
||||
la ldst,-4(sp) # &sz_result
|
||||
la sp,-6*4(sp) // (sp,cr,pc, xx,yy,zz) save area per calling convention
|
||||
stwu sp,-SZ_FRAME(sp) // (sp,cr,pc, xx,yy,zz) save area per calling convention
|
||||
bctr # call decompress: branch to counter register, return to link register
|
||||
|
||||
main:
|
||||
|
||||
@ -62,7 +62,7 @@ fold_begin:
|
||||
#include "arch/powerpc/32/bxx.S"
|
||||
|
||||
L90:
|
||||
la sp,6*4(sp) // trim save area used by decompressor
|
||||
la sp,SZ_FRAME(sp) // trim save area used by decompressor
|
||||
li a6,0
|
||||
stwu a6,-4(sp) # _push_ default value for dyld
|
||||
movr a6,sp # &mhdrp
|
||||
@ -76,7 +76,7 @@ L100:
|
||||
movr r29,sp # remember for restoring later
|
||||
subf sp,a3,sp # alloca
|
||||
movr a2,sp # &temp char[sz_mach_headers]
|
||||
addi sp,sp,-4*6 # linkage area assumed by C code (sp,cr,lr, xx,yy,zz)
|
||||
stwu sp,-SZ_FRAME(sp) # ABI
|
||||
movr a4,r31 # f_decompress
|
||||
call upx_main # Out: a0= &Mach_ppc_thread_state of dyld
|
||||
|
||||
|
||||
@ -44,7 +44,6 @@ sz_l_info= 12
|
||||
sz_p_info= 12
|
||||
|
||||
OVERHEAD= 2048
|
||||
LINKAREA= 6*4 // (sp,pc,cr, xx,yy.zz) save area per calling convention
|
||||
/* In:
|
||||
r31= &decompress; also 8+ (char *)&(#bytes which preceed &-8(r31)
|
||||
r28= &Elf32_auxv_t
|
||||
@ -69,7 +68,7 @@ L90:
|
||||
sub a1,a1,a3
|
||||
add a0,r29,a3 // &{l_info; p_info; b_info}
|
||||
mr a7,r27 // pagesize
|
||||
addi sp,sp,-(LINKAREA+OVERHEAD)
|
||||
stwu sp,-(SZ_FRAME+OVERHEAD)(sp)
|
||||
lwz a3,sz_unc+sz_p_info+sz_l_info(a0) // sz_elf_headers
|
||||
call upx_main // Out: a0= entry
|
||||
/* entry= upx_main(l_info *a0, total_size a1, Elf32_Ehdr *a2, sz_ehdr a3,
|
||||
@ -82,8 +81,8 @@ L90:
|
||||
call munmap // unmap compressed program; /proc/self/exe disappears
|
||||
|
||||
mtlr r31 // entry address
|
||||
lmw r2,4+LINKAREA+OVERHEAD(sp) // restore registers r2 thru r31
|
||||
lwz r1, LINKAREA+OVERHEAD(sp) // restore r1; deallocate space
|
||||
lmw r2,4+SZ_FRAME+OVERHEAD(sp) // restore registers r2 thru r31
|
||||
lwz r1, SZ_FRAME+OVERHEAD(sp) // restore r1; deallocate space
|
||||
ret // enter /lib/ld.so.1
|
||||
|
||||
SYS_exit= 1
|
||||
|
||||
@ -137,8 +137,6 @@ sz_b_info= 12
|
||||
#define l_cpr 22
|
||||
#define t_h 21 /* temporary */
|
||||
|
||||
LINKAREA= 6*8 // (sp,pc,cr, xx,yy.zz) save area per calling convention
|
||||
|
||||
PROT_NONE =0x00
|
||||
PROT_READ =0x01
|
||||
PROT_WRITE =0x02
|
||||
@ -259,9 +257,9 @@ dy_uncpr:
|
||||
mr a2,s_unc # dst
|
||||
mr a3,sp # &l_dst
|
||||
lbz a4,b_method(s_cpr)
|
||||
la sp,-LINKAREA(sp)
|
||||
stdu sp,-SZ_FRAME(sp)
|
||||
blrl # uncompress
|
||||
la sp,8+LINKAREA(sp)
|
||||
la sp,8+SZ_FRAME(sp)
|
||||
// FIXME: check status
|
||||
|
||||
lbz a3,b_ftid(s_cpr)
|
||||
|
||||
@ -127,7 +127,7 @@ movup: # descending copy moves folded_loader to higher address
|
||||
addi dst,t0,GAP # &unfolded result
|
||||
std ldst,-8(sp) # LZMA needs for EOF
|
||||
la ldst,-8(sp) # &sz_result
|
||||
la sp,-6*8(sp) // (sp,cr,pc, xx,yy,zz) save area per calling convention
|
||||
stdu sp,-SZ_FRAME(sp) // ABI convention (for lzma compiled by gcc)
|
||||
bctr # call decompress: branch to counter register, return to link register
|
||||
|
||||
main:
|
||||
|
||||
@ -31,7 +31,7 @@
|
||||
|
||||
#include "arch/powerpc/64le/macros.S"
|
||||
#include "arch/powerpc/64le/ppc_regs.h"
|
||||
retaddr = 2*4 // (sp,cr,pc, xx,yy,zz) save area per calling convention
|
||||
retaddr = 2*8
|
||||
|
||||
sz_b_info= 12
|
||||
sz_unc= 0
|
||||
@ -58,11 +58,12 @@ _start: .globl _start # ignored, but silence "cannot find entry symbol _start"
|
||||
r31= &decompress; also 8+ (char *)&(offset to {l_info; p_info; b_info})
|
||||
*/
|
||||
fold_begin:
|
||||
teq r0,r0 // this code has not been converted to 64-bit!!
|
||||
call L90
|
||||
#include "arch/powerpc/32/bxx.S"
|
||||
|
||||
L90:
|
||||
la sp,6*4(sp) // trim save area used by decompressor
|
||||
la sp,SZ_FRAME(sp) // trim save area used by decompressor
|
||||
li a6,0
|
||||
stwu a6,-4(sp) # _push_ default value for dyld
|
||||
movr a6,sp # &mhdrp
|
||||
@ -76,7 +77,7 @@ L100:
|
||||
movr r29,sp # remember for restoring later
|
||||
subf sp,a3,sp # alloca
|
||||
movr a2,sp # &temp char[sz_mach_headers]
|
||||
addi sp,sp,-4*6 # linkage area assumed by C code (sp,cr,lr, xx,yy,zz)
|
||||
stdu sp,-SZ_FRAME(sp) # ABI convention
|
||||
movr a4,r31 # f_decompress
|
||||
call upx_main # Out: a0= &Mach_ppc_thread_state of dyld
|
||||
|
||||
|
||||
@ -171,8 +171,8 @@ unfold:
|
||||
mtlr a0 // &continuation
|
||||
lwz lsrc,sz_cpr(r30) // size of compressed
|
||||
addi src,r30,sz_b_info
|
||||
la sp,-6*8(sp) // (sp,pc,cr, xx,yy,zz) save area per calling convention
|
||||
bctr // goto decomrpess; return to link register (mmap'ed page)
|
||||
stdu sp,-SZ_FRAME(sp) // ABI calling convention (for lzma compiled by gcc)
|
||||
bctr // goto decompress; return to link register (mmap'ed page)
|
||||
|
||||
// Example code at entrypoint of C-language subroutine:
|
||||
// mflr r0 # r0= return address
|
||||
|
||||
@ -44,7 +44,6 @@ sz_l_info= 12
|
||||
sz_p_info= 12
|
||||
|
||||
OVERHEAD= 2048
|
||||
LINKAREA= 6*8 // (sp,pc,cr, xx,yy.zz) save area per calling convention
|
||||
/* In:
|
||||
r31= &decompress; also 8+ (char *)&(#bytes which preceed &-8(r31)
|
||||
*/
|
||||
@ -69,7 +68,7 @@ zfind:
|
||||
cmpldi cr7,t0,0; bne+ cr7,zfind
|
||||
ret
|
||||
L90:
|
||||
la sp,LINKAREA(sp) // trim save area used by decompressor
|
||||
la sp,SZ_FRAME(sp) // trim save area used by decompressor
|
||||
mflr a5 // &ppcbxx: f_unfilter
|
||||
ld a6,0(sp) // sp at execve
|
||||
call zfind // a6= &env
|
||||
@ -86,7 +85,7 @@ L90:
|
||||
addi a3,a3,szElf64_Ehdr
|
||||
sub a1,a1,a3
|
||||
add a0,r29,a3 // &{l_info; p_info; b_info}
|
||||
addi sp,sp,-(LINKAREA+OVERHEAD)
|
||||
addi sp,sp,-(SZ_FRAME+OVERHEAD)
|
||||
lwz a3,sz_unc+sz_p_info+sz_l_info(a0) // sz_elf_headers
|
||||
call upx_main // Out: a0= entry
|
||||
/* entry= upx_main(l_info *a0, total_size a1, Elf64_Ehdr *a2, sz_ehdr a3,
|
||||
@ -100,41 +99,41 @@ L90:
|
||||
|
||||
mtlr r31 // entry address
|
||||
|
||||
// lmw r2,4+LINKAREA+OVERHEAD(sp) // restore registers r2 thru r31 32bits load
|
||||
// lmw r2,4+SZ_FRAME+OVERHEAD(sp) // restore registers r2 thru r31 32bits load
|
||||
/* Restore Save Area */
|
||||
rest:
|
||||
ld 2,2*8-8+LINKAREA+OVERHEAD(sp)
|
||||
ld 3,3*8-8+LINKAREA+OVERHEAD(sp)
|
||||
ld 4,4*8-8+LINKAREA+OVERHEAD(sp)
|
||||
ld 5,5*8-8+LINKAREA+OVERHEAD(sp)
|
||||
ld 6,6*8-8+LINKAREA+OVERHEAD(sp)
|
||||
ld 7,7*8-8+LINKAREA+OVERHEAD(sp)
|
||||
ld 8,8*8-8+LINKAREA+OVERHEAD(sp)
|
||||
ld 9,9*8-8+LINKAREA+OVERHEAD(sp)
|
||||
ld 10,10*8-8+LINKAREA+OVERHEAD(sp)
|
||||
ld 11,11*8-8+LINKAREA+OVERHEAD(sp)
|
||||
ld 12,12*8-8+LINKAREA+OVERHEAD(sp)
|
||||
ld 13,13*8-8+LINKAREA+OVERHEAD(sp)
|
||||
ld 14,14*8-8+LINKAREA+OVERHEAD(sp)
|
||||
ld 15,15*8-8+LINKAREA+OVERHEAD(sp)
|
||||
ld 16,16*8-8+LINKAREA+OVERHEAD(sp)
|
||||
ld 17,17*8-8+LINKAREA+OVERHEAD(sp)
|
||||
ld 18,18*8-8+LINKAREA+OVERHEAD(sp)
|
||||
ld 19,19*8-8+LINKAREA+OVERHEAD(sp)
|
||||
ld 20,20*8-8+LINKAREA+OVERHEAD(sp)
|
||||
ld 21,21*8-8+LINKAREA+OVERHEAD(sp)
|
||||
ld 22,22*8-8+LINKAREA+OVERHEAD(sp)
|
||||
ld 23,23*8-8+LINKAREA+OVERHEAD(sp)
|
||||
ld 24,24*8-8+LINKAREA+OVERHEAD(sp)
|
||||
ld 25,25*8-8+LINKAREA+OVERHEAD(sp)
|
||||
ld 26,26*8-8+LINKAREA+OVERHEAD(sp)
|
||||
ld 27,27*8-8+LINKAREA+OVERHEAD(sp)
|
||||
ld 28,28*8-8+LINKAREA+OVERHEAD(sp)
|
||||
ld 29,29*8-8+LINKAREA+OVERHEAD(sp)
|
||||
ld 30,30*8-8+LINKAREA+OVERHEAD(sp)
|
||||
ld 31,31*8-8+LINKAREA+OVERHEAD(sp)
|
||||
ld 2,2*8-8+SZ_FRAME+OVERHEAD(sp)
|
||||
ld 3,3*8-8+SZ_FRAME+OVERHEAD(sp)
|
||||
ld 4,4*8-8+SZ_FRAME+OVERHEAD(sp)
|
||||
ld 5,5*8-8+SZ_FRAME+OVERHEAD(sp)
|
||||
ld 6,6*8-8+SZ_FRAME+OVERHEAD(sp)
|
||||
ld 7,7*8-8+SZ_FRAME+OVERHEAD(sp)
|
||||
ld 8,8*8-8+SZ_FRAME+OVERHEAD(sp)
|
||||
ld 9,9*8-8+SZ_FRAME+OVERHEAD(sp)
|
||||
ld 10,10*8-8+SZ_FRAME+OVERHEAD(sp)
|
||||
ld 11,11*8-8+SZ_FRAME+OVERHEAD(sp)
|
||||
ld 12,12*8-8+SZ_FRAME+OVERHEAD(sp)
|
||||
ld 13,13*8-8+SZ_FRAME+OVERHEAD(sp)
|
||||
ld 14,14*8-8+SZ_FRAME+OVERHEAD(sp)
|
||||
ld 15,15*8-8+SZ_FRAME+OVERHEAD(sp)
|
||||
ld 16,16*8-8+SZ_FRAME+OVERHEAD(sp)
|
||||
ld 17,17*8-8+SZ_FRAME+OVERHEAD(sp)
|
||||
ld 18,18*8-8+SZ_FRAME+OVERHEAD(sp)
|
||||
ld 19,19*8-8+SZ_FRAME+OVERHEAD(sp)
|
||||
ld 20,20*8-8+SZ_FRAME+OVERHEAD(sp)
|
||||
ld 21,21*8-8+SZ_FRAME+OVERHEAD(sp)
|
||||
ld 22,22*8-8+SZ_FRAME+OVERHEAD(sp)
|
||||
ld 23,23*8-8+SZ_FRAME+OVERHEAD(sp)
|
||||
ld 24,24*8-8+SZ_FRAME+OVERHEAD(sp)
|
||||
ld 25,25*8-8+SZ_FRAME+OVERHEAD(sp)
|
||||
ld 26,26*8-8+SZ_FRAME+OVERHEAD(sp)
|
||||
ld 27,27*8-8+SZ_FRAME+OVERHEAD(sp)
|
||||
ld 28,28*8-8+SZ_FRAME+OVERHEAD(sp)
|
||||
ld 29,29*8-8+SZ_FRAME+OVERHEAD(sp)
|
||||
ld 30,30*8-8+SZ_FRAME+OVERHEAD(sp)
|
||||
ld 31,31*8-8+SZ_FRAME+OVERHEAD(sp)
|
||||
|
||||
ld r1,LINKAREA+OVERHEAD(sp) // restore r1; deallocate space
|
||||
ld r1,SZ_FRAME+OVERHEAD(sp) // restore r1; deallocate space
|
||||
mflr 12 // load ld.so.2 address
|
||||
ret // enter /lib/ld.so.1
|
||||
|
||||
|
||||
@ -70,54 +70,54 @@ LOAD tmp/powerpc64le-darwin.macho-main.o
|
||||
.plt.got
|
||||
*(.plt.got)
|
||||
|
||||
.text 0x0000000008048000 0x928
|
||||
.text 0x0000000008048000 0x92c
|
||||
*(.text.unlikely .text.*_unlikely .text.unlikely.*)
|
||||
*(.text.exit .text.exit.*)
|
||||
*(.text.startup .text.startup.*)
|
||||
*(.text.hot .text.hot.*)
|
||||
*(.text .stub .text.* .gnu.linkonce.t.*)
|
||||
.text 0x0000000008048000 0x1d8 tmp/powerpc64le-darwin.macho-fold.o
|
||||
.text 0x0000000008048000 0x1dc tmp/powerpc64le-darwin.macho-fold.o
|
||||
0x0000000008048000 _start
|
||||
0x00000000080480e4 pread
|
||||
0x00000000080480f4 mmap
|
||||
0x000000000804810c exit
|
||||
0x0000000008048114 read
|
||||
0x000000000804811c open
|
||||
0x0000000008048124 close
|
||||
0x000000000804812c mprotect
|
||||
0x0000000008048134 _savegpr0_14
|
||||
0x0000000008048138 _savegpr0_15
|
||||
0x000000000804813c _savegpr0_16
|
||||
0x0000000008048140 _savegpr0_17
|
||||
0x0000000008048144 _savegpr0_18
|
||||
0x0000000008048148 _savegpr0_19
|
||||
0x000000000804814c _savegpr0_20
|
||||
0x0000000008048150 _savegpr0_21
|
||||
0x0000000008048154 _savegpr0_22
|
||||
0x0000000008048158 _savegpr0_23
|
||||
0x000000000804815c _savegpr0_24
|
||||
0x0000000008048160 _savegpr0_25
|
||||
0x0000000008048164 _savegpr0_26
|
||||
0x0000000008048168 _savegpr0_27
|
||||
0x000000000804816c _savegpr0_28
|
||||
0x0000000008048170 _savegpr0_29
|
||||
0x0000000008048184 _restgpr0_14
|
||||
0x0000000008048188 _restgpr0_15
|
||||
0x000000000804818c _restgpr0_16
|
||||
0x0000000008048190 _restgpr0_17
|
||||
0x0000000008048194 _restgpr0_18
|
||||
0x0000000008048198 _restgpr0_19
|
||||
0x000000000804819c _restgpr0_20
|
||||
0x00000000080481a0 _restgpr0_21
|
||||
0x00000000080481a4 _restgpr0_22
|
||||
0x00000000080481a8 _restgpr0_23
|
||||
0x00000000080481ac _restgpr0_24
|
||||
0x00000000080481b0 _restgpr0_25
|
||||
0x00000000080481b4 _restgpr0_26
|
||||
0x00000000080481b8 _restgpr0_27
|
||||
0x00000000080481bc _restgpr0_28
|
||||
0x00000000080481c0 _restgpr0_29
|
||||
.text 0x00000000080481d8 0x750 tmp/powerpc64le-darwin.macho-main.o
|
||||
0x00000000080480e8 pread
|
||||
0x00000000080480f8 mmap
|
||||
0x0000000008048110 exit
|
||||
0x0000000008048118 read
|
||||
0x0000000008048120 open
|
||||
0x0000000008048128 close
|
||||
0x0000000008048130 mprotect
|
||||
0x0000000008048138 _savegpr0_14
|
||||
0x000000000804813c _savegpr0_15
|
||||
0x0000000008048140 _savegpr0_16
|
||||
0x0000000008048144 _savegpr0_17
|
||||
0x0000000008048148 _savegpr0_18
|
||||
0x000000000804814c _savegpr0_19
|
||||
0x0000000008048150 _savegpr0_20
|
||||
0x0000000008048154 _savegpr0_21
|
||||
0x0000000008048158 _savegpr0_22
|
||||
0x000000000804815c _savegpr0_23
|
||||
0x0000000008048160 _savegpr0_24
|
||||
0x0000000008048164 _savegpr0_25
|
||||
0x0000000008048168 _savegpr0_26
|
||||
0x000000000804816c _savegpr0_27
|
||||
0x0000000008048170 _savegpr0_28
|
||||
0x0000000008048174 _savegpr0_29
|
||||
0x0000000008048188 _restgpr0_14
|
||||
0x000000000804818c _restgpr0_15
|
||||
0x0000000008048190 _restgpr0_16
|
||||
0x0000000008048194 _restgpr0_17
|
||||
0x0000000008048198 _restgpr0_18
|
||||
0x000000000804819c _restgpr0_19
|
||||
0x00000000080481a0 _restgpr0_20
|
||||
0x00000000080481a4 _restgpr0_21
|
||||
0x00000000080481a8 _restgpr0_22
|
||||
0x00000000080481ac _restgpr0_23
|
||||
0x00000000080481b0 _restgpr0_24
|
||||
0x00000000080481b4 _restgpr0_25
|
||||
0x00000000080481b8 _restgpr0_26
|
||||
0x00000000080481bc _restgpr0_27
|
||||
0x00000000080481c0 _restgpr0_28
|
||||
0x00000000080481c4 _restgpr0_29
|
||||
.text 0x00000000080481dc 0x750 tmp/powerpc64le-darwin.macho-main.o
|
||||
*(.gnu.warning)
|
||||
|
||||
.fini
|
||||
@ -148,7 +148,7 @@ LOAD tmp/powerpc64le-darwin.macho-main.o
|
||||
|
||||
.exception_ranges
|
||||
*(.exception_ranges .exception_ranges*)
|
||||
0x0000000008049928 . = DATA_SEGMENT_ALIGN (0x1000, 0x1000)
|
||||
0x000000000804992c . = DATA_SEGMENT_ALIGN (0x1000, 0x1000)
|
||||
|
||||
.eh_frame
|
||||
*(.eh_frame)
|
||||
@ -170,18 +170,18 @@ LOAD tmp/powerpc64le-darwin.macho-main.o
|
||||
*(.tbss .tbss.* .gnu.linkonce.tb.*)
|
||||
*(.tcommon)
|
||||
|
||||
.preinit_array 0x0000000008049928 0x0
|
||||
.preinit_array 0x000000000804992c 0x0
|
||||
[!provide] PROVIDE (__preinit_array_start, .)
|
||||
*(.preinit_array)
|
||||
[!provide] PROVIDE (__preinit_array_end, .)
|
||||
|
||||
.init_array 0x0000000008049928 0x0
|
||||
.init_array 0x000000000804992c 0x0
|
||||
[!provide] PROVIDE (__init_array_start, .)
|
||||
*(SORT(.init_array.*) SORT(.ctors.*))
|
||||
*(.init_array EXCLUDE_FILE(*crtend?.o *crtend.o *crtbegin?.o *crtbegin.o) .ctors)
|
||||
[!provide] PROVIDE (__init_array_end, .)
|
||||
|
||||
.fini_array 0x0000000008049928 0x0
|
||||
.fini_array 0x000000000804992c 0x0
|
||||
[!provide] PROVIDE (__fini_array_start, .)
|
||||
*(SORT(.fini_array.*) SORT(.dtors.*))
|
||||
*(.fini_array EXCLUDE_FILE(*crtend?.o *crtend.o *crtbegin?.o *crtbegin.o) .dtors)
|
||||
@ -214,44 +214,44 @@ LOAD tmp/powerpc64le-darwin.macho-main.o
|
||||
.got
|
||||
*(.got)
|
||||
*(.igot)
|
||||
0x0000000008049928 . = DATA_SEGMENT_RELRO_END (., (SIZEOF (.got.plt) >= 0xc)?0xc:0x0)
|
||||
0x000000000804992c . = DATA_SEGMENT_RELRO_END (., (SIZEOF (.got.plt) >= 0xc)?0xc:0x0)
|
||||
|
||||
.got.plt 0x0000000008049928 0x0
|
||||
.got.plt 0x000000000804992c 0x0
|
||||
*(.got.plt)
|
||||
*(.igot.plt)
|
||||
|
||||
.data 0x0000000008049928 0x0
|
||||
.data 0x000000000804992c 0x0
|
||||
*(.data .data.* .gnu.linkonce.d.*)
|
||||
.data 0x0000000008049928 0x0 tmp/powerpc64le-darwin.macho-fold.o
|
||||
.data 0x0000000008049928 0x0 tmp/powerpc64le-darwin.macho-main.o
|
||||
.data 0x000000000804992c 0x0 tmp/powerpc64le-darwin.macho-fold.o
|
||||
.data 0x000000000804992c 0x0 tmp/powerpc64le-darwin.macho-main.o
|
||||
|
||||
.toc 0x0000000008049928 0x0
|
||||
.toc 0x0000000008049928 0x0 tmp/powerpc64le-darwin.macho-main.o
|
||||
.toc 0x000000000804992c 0x0
|
||||
.toc 0x000000000804992c 0x0 tmp/powerpc64le-darwin.macho-main.o
|
||||
|
||||
.opd 0x0000000008049928 0x40
|
||||
.opd 0x0000000008049928 0x40 tmp/powerpc64le-darwin.macho-main.o
|
||||
0x0000000008049958 upx_main
|
||||
.opd 0x0000000008049930 0x40
|
||||
.opd 0x0000000008049930 0x40 tmp/powerpc64le-darwin.macho-main.o
|
||||
0x0000000008049960 upx_main
|
||||
|
||||
.data1
|
||||
*(.data1)
|
||||
0x0000000008049968 _edata = .
|
||||
0x0000000008049970 _edata = .
|
||||
[!provide] PROVIDE (edata, .)
|
||||
0x0000000008049968 . = .
|
||||
0x0000000008049968 __bss_start = .
|
||||
0x0000000008049970 . = .
|
||||
0x0000000008049970 __bss_start = .
|
||||
|
||||
.bss 0x0000000008049968 0x0
|
||||
.bss 0x0000000008049970 0x0
|
||||
*(.dynbss)
|
||||
*(.bss .bss.* .gnu.linkonce.b.*)
|
||||
.bss 0x0000000008049968 0x0 tmp/powerpc64le-darwin.macho-fold.o
|
||||
.bss 0x0000000008049968 0x0 tmp/powerpc64le-darwin.macho-main.o
|
||||
.bss 0x0000000008049970 0x0 tmp/powerpc64le-darwin.macho-fold.o
|
||||
.bss 0x0000000008049970 0x0 tmp/powerpc64le-darwin.macho-main.o
|
||||
*(COMMON)
|
||||
0x0000000008049968 . = ALIGN ((. != 0x0)?0x4:0x1)
|
||||
0x0000000008049968 . = ALIGN (0x4)
|
||||
0x0000000008049968 . = SEGMENT_START ("ldata-segment", .)
|
||||
0x0000000008049968 . = ALIGN (0x4)
|
||||
0x0000000008049968 _end = .
|
||||
0x0000000008049970 . = ALIGN ((. != 0x0)?0x4:0x1)
|
||||
0x0000000008049970 . = ALIGN (0x4)
|
||||
0x0000000008049970 . = SEGMENT_START ("ldata-segment", .)
|
||||
0x0000000008049970 . = ALIGN (0x4)
|
||||
0x0000000008049970 _end = .
|
||||
[!provide] PROVIDE (end, .)
|
||||
0x0000000008049968 . = DATA_SEGMENT_END (.)
|
||||
0x0000000008049970 . = DATA_SEGMENT_END (.)
|
||||
|
||||
.stab
|
||||
*(.stab)
|
||||
|
||||
Loading…
Reference in New Issue
Block a user