Revamp powerpc{,64le,64}.
Fix 64-bit stack frame (8*8 bytes for spilling a0-a7). Avoid using r2 (t0). Prepare for -pie executables. Prepare for unified strategy in stubs. modified: p_lx_elf.cpp modified: stub/src/amd64-linux.elf-main.c modified: stub/src/arch/powerpc/32/bxx.S modified: stub/src/arch/powerpc/32/lzma_d.S modified: stub/src/arch/powerpc/32/nrv2b_d.S modified: stub/src/arch/powerpc/32/nrv2d_d.S modified: stub/src/arch/powerpc/32/nrv2e_d.S modified: stub/src/arch/powerpc/32/ppc_regs.h new file: stub/src/arch/powerpc/64/Makefile new file: stub/src/arch/powerpc/64/Makefile.extra new file: stub/src/arch/powerpc/64/lzma_d.S new file: stub/src/arch/powerpc/64/lzma_d_cf.S new file: stub/src/arch/powerpc/64/lzma_d_cs.S modified: stub/src/arch/powerpc/64le/bxx.S copied: stub/src/arch/powerpc/64le/lzma_d.S -> stub/src/arch/powerpc/64le/lzma_d-common.S modified: stub/src/arch/powerpc/64le/lzma_d.S modified: stub/src/arch/powerpc/64le/lzma_d_cs.S modified: stub/src/arch/powerpc/64le/nrv2b_d.S modified: stub/src/arch/powerpc/64le/nrv2d_d.S modified: stub/src/arch/powerpc/64le/nrv2e_d.S modified: stub/src/arch/powerpc/64le/ppc_regs.h modified: stub/src/i386-darwin.macho-entry.S 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-entry.S modified: stub/src/powerpc-linux.elf-fold.S modified: stub/src/powerpc-linux.elf-main.c modified: stub/src/powerpc64-darwin.dylib-entry.S modified: stub/src/powerpc64-darwin.macho-entry.S modified: stub/src/powerpc64-darwin.macho-fold.S modified: stub/src/powerpc64-darwin.macho-main.c modified: stub/src/powerpc64-linux.elf-main.c modified: stub/src/powerpc64-savegpr0.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/i386-darwin.macho-entry.h 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-entry.h modified: stub/powerpc-linux.elf-fold.h modified: stub/powerpc-linux.kernel.vmlinux.h modified: stub/powerpc64-linux.elf-entry.h modified: stub/powerpc64-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/powerpc64le-linux.kernel.vmlinux.h modified: stub/tmp/i386-darwin.macho-entry.bin.dump modified: stub/tmp/powerpc-darwin.dylib-entry.bin.dump modified: stub/tmp/powerpc-darwin.macho-entry.bin.dump modified: stub/tmp/powerpc-linux.elf-entry.bin.dump modified: stub/tmp/powerpc-linux.elf-fold.map modified: stub/tmp/powerpc64le-darwin.dylib-entry.bin.dump modified: stub/tmp/powerpc64le-darwin.macho-entry.bin.dump modified: stub/tmp/powerpc64le-linux.elf-entry.bin.dump modified: stub/tmp/powerpc64le-linux.elf-fold.map modified: stub/tmp/powerpc64le-linux.kernel.vmlinux.bin.dump
This commit is contained in:
@@ -32,8 +32,8 @@
|
||||
|
||||
|
||||
#define STUB_POWERPC_LINUX_KERNEL_VMLINUX_SIZE 9090
|
||||
#define STUB_POWERPC_LINUX_KERNEL_VMLINUX_ADLER32 0x179626d2
|
||||
#define STUB_POWERPC_LINUX_KERNEL_VMLINUX_CRC32 0xc029750b
|
||||
#define STUB_POWERPC_LINUX_KERNEL_VMLINUX_ADLER32 0x07ef2789
|
||||
#define STUB_POWERPC_LINUX_KERNEL_VMLINUX_CRC32 0x4e7e9b33
|
||||
|
||||
unsigned char stub_powerpc_linux_kernel_vmlinux[9090] = {
|
||||
/* 0x0000 */ 127, 69, 76, 70, 1, 2, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
@@ -43,9 +43,9 @@ unsigned char stub_powerpc_linux_kernel_vmlinux[9090] = {
|
||||
/* 0x0040 */ 0, 0, 0, 0, 40, 6, 0,208, 76,130, 0, 32, 84,132,240,191,
|
||||
/* 0x0050 */ 77,130, 0, 32, 60, 0, 0, 16,124, 4, 0, 64, 65,128, 0, 8,
|
||||
/* 0x0060 */ 124, 4, 3,120, 56,165, 1, 32,124,103, 27,120, 56, 99,255,252,
|
||||
/* 0x0070 */ 124,137, 3,166, 72, 0, 0, 28, 84, 75, 2,186,125, 99, 88, 80,
|
||||
/* 0x0080 */ 125,107, 58, 20, 81, 98, 1,186,144, 67, 0, 0, 78, 64, 0, 32,
|
||||
/* 0x0090 */ 132, 67, 0, 4, 84, 75, 85,190,124, 11, 40, 64, 65,162,255,220,
|
||||
/* 0x0070 */ 124,137, 3,166, 72, 0, 0, 28, 85, 96, 2,186,124, 3, 0, 80,
|
||||
/* 0x0080 */ 124, 0, 58, 20, 80, 11, 1,186,145, 99, 0, 0, 78, 64, 0, 32,
|
||||
/* 0x0090 */ 133, 99, 0, 4, 85, 96, 85,190,124, 0, 40, 64, 65,162,255,220,
|
||||
/* 0x00a0 */ 66, 0,255,240, 78,128, 0, 32,124, 0, 41,236,125,168, 2,166,
|
||||
/* 0x00b0 */ 40, 7, 0, 2, 64,130, 0,228,144,166, 0, 0,124,132, 26, 20,
|
||||
/* 0x00c0 */ 60, 0,128, 0, 61, 32,128, 0, 56, 99,255,255, 56,165,255,255,
|
||||
@@ -54,11 +54,11 @@ unsigned char stub_powerpc_linux_kernel_vmlinux[9090] = {
|
||||
/* 0x00f0 */ 124, 9, 0, 64,125, 41, 73, 20, 78,128, 0, 32,141, 3, 0, 1,
|
||||
/* 0x0100 */ 157, 5, 0, 1, 75,255,255,213, 65,129,255,244, 56,224, 0, 1,
|
||||
/* 0x0110 */ 75,255,255,201,124,231, 57, 21, 75,255,255,193, 65,160,255,244,
|
||||
/* 0x0120 */ 52,231,255,253, 57, 0, 0, 0, 65,128, 0, 20,140, 67, 0, 1,
|
||||
/* 0x0130 */ 84,231, 64, 46,124,234, 16,249, 65,130, 0, 0, 75,255,255,157,
|
||||
/* 0x0120 */ 52,231,255,253, 57, 0, 0, 0, 65,128, 0, 20,141, 99, 0, 1,
|
||||
/* 0x0130 */ 84,231, 64, 46,124,234, 88,249, 65,130, 0, 0, 75,255,255,157,
|
||||
/* 0x0140 */ 125, 8, 65, 21, 75,255,255,149,125, 8, 65, 21, 56,224, 0, 1,
|
||||
/* 0x0150 */ 64,130, 0, 28, 56,224, 0, 3, 57, 0, 0, 1, 75,255,255,125,
|
||||
/* 0x0160 */ 125, 8, 65, 21, 75,255,255,117, 65,160,255,244, 32, 74,242,255,
|
||||
/* 0x0160 */ 125, 8, 65, 21, 75,255,255,117, 65,160,255,244, 33,106,242,255,
|
||||
/* 0x0170 */ 125, 8, 57, 20,124,234, 42, 20,125, 9, 3,166,141, 7, 0, 1,
|
||||
/* 0x0180 */ 157, 5, 0, 1, 66, 0,255,248, 56,224, 1, 0,124, 7, 41,236,
|
||||
/* 0x0190 */ 124, 7, 26, 44, 75,255,255,112,124, 0, 41,236,125,168, 2,166,
|
||||
@@ -72,7 +72,7 @@ unsigned char stub_powerpc_linux_kernel_vmlinux[9090] = {
|
||||
/* 0x0210 */ 124,231, 57, 21,125, 41, 72, 21, 65,162,255,177,124,231, 57, 21,
|
||||
/* 0x0220 */ 124, 9, 0, 64,125, 41, 74, 20, 65,162,255,161, 65,160,255,216,
|
||||
/* 0x0230 */ 57, 0, 0, 0, 52,231,255,253, 84,231, 64, 46, 65,128, 0, 24,
|
||||
/* 0x0240 */ 140, 67, 0, 1,124,234, 16,249,125, 74, 14,112, 65,130, 0, 0,
|
||||
/* 0x0240 */ 141, 99, 0, 1,124,234, 88,249,125, 74, 14,112, 65,130, 0, 0,
|
||||
/* 0x0250 */ 72, 0, 0, 12,125, 41, 72, 21, 65,162,255,113,125, 8, 65, 21,
|
||||
/* 0x0260 */ 125, 41, 72, 21, 65,162,255,101,125, 8, 65, 21, 64,130, 0, 40,
|
||||
/* 0x0270 */ 57, 0, 0, 1,125, 41, 72, 21, 65,162,255, 81,125, 8, 65, 21,
|
||||
@@ -90,8 +90,8 @@ unsigned char stub_powerpc_linux_kernel_vmlinux[9090] = {
|
||||
/* 0x0330 */ 56,231,255,255,125, 41, 72, 21, 65,162,255,189,124,231, 57, 20,
|
||||
/* 0x0340 */ 125, 41, 72, 21, 65,162,255,177,124,231, 57, 20,124, 9, 0, 64,
|
||||
/* 0x0350 */ 125, 41, 74, 20, 65,162,255,161, 65,160,255,216, 57, 0, 0, 0,
|
||||
/* 0x0360 */ 52,231,255,253, 84,231, 64, 46, 65,128, 0, 32,140, 67, 0, 1,
|
||||
/* 0x0370 */ 124,234, 16,249,125, 74, 14,112, 65,130, 0, 0,112, 66, 0, 1,
|
||||
/* 0x0360 */ 52,231,255,253, 84,231, 64, 46, 65,128, 0, 32,141, 99, 0, 1,
|
||||
/* 0x0370 */ 124,234, 88,249,125, 74, 14,112, 65,130, 0, 0,113,107, 0, 1,
|
||||
/* 0x0380 */ 65,162, 0, 80, 72, 0, 0, 20,124, 9, 0, 64,125, 41, 74, 20,
|
||||
/* 0x0390 */ 65,162,255,101, 65,161, 0, 60, 57, 0, 0, 1,124, 9, 0, 64,
|
||||
/* 0x03a0 */ 125, 41, 74, 20, 65,162,255, 81, 65,161, 0, 40,125, 41, 72, 21,
|
||||
@@ -107,13 +107,13 @@ unsigned char stub_powerpc_linux_kernel_vmlinux[9090] = {
|
||||
/* 0x0440 */ 124, 0, 4,172, 76, 0, 1, 44, 78,128, 0, 32, 40, 7, 0, 14,
|
||||
/* 0x0450 */ 64,130, 0, 36,148, 33,255,232,124, 8, 2,166,124,201, 51,120,
|
||||
/* 0x0460 */ 129, 6, 0, 0,124,167, 43,120, 56,164,255,254, 56,131, 0, 2,
|
||||
/* 0x0470 */ 144, 1, 0, 8,136, 3, 0, 0, 84, 11,232,254, 84, 2, 7,126,
|
||||
/* 0x0470 */ 144, 1, 0, 8,136, 3, 0, 0, 84, 11,232,254, 84, 12, 7,126,
|
||||
/* 0x0480 */ 56, 96,250, 0,124, 99, 88, 48, 56, 99,241,124,124, 38, 11,120,
|
||||
/* 0x0490 */ 124, 33, 26, 20, 84, 33, 0, 52, 56, 0, 0, 0,124,195, 51,120,
|
||||
/* 0x04a0 */ 144, 9, 0, 0,148, 3,255,252,124, 1, 24, 64, 65,128,255,248,
|
||||
/* 0x04b0 */ 144,193, 0, 0,136, 4,255,255,144,225, 0, 8, 56,193, 0, 16,
|
||||
/* 0x04c0 */ 145, 33, 0, 12, 56, 97, 0, 20, 84, 11,225, 62, 84, 0, 7, 62,
|
||||
/* 0x04d0 */ 152, 67, 0, 2,153, 99, 0, 1,152, 3, 0, 0,124, 8, 2,166,
|
||||
/* 0x04d0 */ 153,131, 0, 2,153, 99, 0, 1,152, 3, 0, 0,124, 8, 2,166,
|
||||
/* 0x04e0 */ 148, 33,255,160,189,193, 0, 24, 59, 32, 0, 0,125, 40, 3,166,
|
||||
/* 0x04f0 */ 124,206, 51,120,124,147, 35,120,144, 1, 0,100,124,245, 59,120,
|
||||
/* 0x0500 */ 125, 20, 67,120,137, 67, 0, 2, 59, 3, 0, 4, 59,224, 0, 0,
|
||||
|
||||
Reference in New Issue
Block a user