PowerPC 64-bit big-endian

modified:   conf.h
	modified:   linker.cpp
	modified:   linker.h
	modified:   p_lx_elf.cpp
	modified:   p_lx_elf.h
	modified:   packmast.cpp
	modified:   stub/Makefile
	modified:   stub/powerpc-linux.elf-entry.h
	new file:   stub/powerpc64-linux.elf-entry.h
	new file:   stub/powerpc64-linux.elf-fold.h
	modified:   stub/powerpc64le-linux.elf-entry.h
	modified:   stub/powerpc64le-linux.elf-fold.h
	modified:   stub/scripts/xstrip.py
	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
	new file:   stub/src/powerpc64-darwin.dylib-entry.S
	new file:   stub/src/powerpc64-darwin.macho-entry.S
	new file:   stub/src/powerpc64-darwin.macho-fold.S
	new file:   stub/src/powerpc64-darwin.macho-main.c
	new file:   stub/src/powerpc64-linux.elf-entry.S
	new file:   stub/src/powerpc64-linux.elf-fold.S
	new file:   stub/src/powerpc64-linux.elf-fold.lds
	new file:   stub/src/powerpc64-linux.elf-main.c
	modified:   stub/src/powerpc64le-linux.elf-entry.S
	modified:   stub/src/powerpc64le-linux.elf-fold.S
	modified:   stub/src/powerpc64le-linux.elf-main.c
	modified:   stub/tmp/powerpc64le-linux.elf-entry.bin.dump
	modified:   stub/tmp/powerpc64le-linux.elf-fold.map
This commit is contained in:
John Reiser
2017-04-11 19:15:43 -07:00
parent 40b506d2e0
commit 4e05f087f9
29 changed files with 1944 additions and 478 deletions
@@ -13,8 +13,8 @@ Idx Name Size VMA LMA File off Algn
8 LZMA_DEC30 00000028 0000000000000000 0000000000000000 00001c84 2**0 CONTENTS, READONLY
9 NRV_TAIL 0000001c 0000000000000000 0000000000000000 00001cac 2**0 CONTENTS, READONLY
10 CFLUSH 00000024 0000000000000000 0000000000000000 00001cc8 2**0 CONTENTS, READONLY
11 ELFMAINY 00000030 0000000000000000 0000000000000000 00001cf0 2**4 CONTENTS, RELOC, READONLY
12 ELFMAINZ 00000114 0000000000000000 0000000000000000 00001d20 2**0 CONTENTS, RELOC, READONLY
11 ELFMAINY 00000022 0000000000000000 0000000000000000 00001cec 2**0 CONTENTS, RELOC, READONLY
12 ELFMAINZ 00000110 0000000000000000 0000000000000000 00001d10 2**2 CONTENTS, RELOC, READONLY
SYMBOL TABLE:
0000000000000000 l d LZMA_DEC30 0000000000000000 LZMA_DEC30
0000000000000000 l d NRV_TAIL 0000000000000000 NRV_TAIL
@@ -59,4 +59,4 @@ OFFSET TYPE VALUE
RELOCATION RECORDS FOR [ELFMAINZ]:
OFFSET TYPE VALUE
0000000000000058 R_PPC64_REL14 ELFMAINY
0000000000000110 R_PPC64_ADDR32 O_BINFO
000000000000010c R_PPC64_ADDR32 O_BINFO
+39 -39
View File
@@ -9,58 +9,58 @@ Linker script and memory map
TARGET(elf64-powerpcle)
0x00000000001000bc . = ((0x100000 + SIZEOF_HEADERS) + 0xc)
.text 0x00000000001000bc 0x808
.text 0x00000000001000bc 0x80c
*(.text)
.text 0x00000000001000bc 0x1a4 tmp/powerpc64le-linux.elf-fold.o
0x0000000000100214 mmap
0x0000000000100228 exit
0x0000000000100230 read
0x0000000000100238 open
0x0000000000100240 close
0x0000000000100248 mprotect
0x0000000000100250 munmap
0x0000000000100258 brk
.text 0x0000000000100260 0x664 tmp/powerpc64le-linux.elf-main.o
.text 0x00000000001000bc 0x1ac tmp/powerpc64le-linux.elf-fold.o
0x000000000010021c mmap
0x0000000000100230 exit
0x0000000000100238 read
0x0000000000100240 open
0x0000000000100248 close
0x0000000000100250 mprotect
0x0000000000100258 munmap
0x0000000000100260 brk
.text 0x0000000000100268 0x660 tmp/powerpc64le-linux.elf-main.o
*(.data)
.data 0x00000000001008c4 0x0 tmp/powerpc64le-linux.elf-fold.o
.data 0x00000000001008c4 0x0 tmp/powerpc64le-linux.elf-main.o
.data 0x00000000001008c8 0x0 tmp/powerpc64le-linux.elf-fold.o
.data 0x00000000001008c8 0x0 tmp/powerpc64le-linux.elf-main.o
.sfpr 0x00000000001008c4 0xa4
.sfpr 0x00000000001008c4 0xa4 linker stubs
0x00000000001008c4 _savegpr0_14
0x00000000001008f8 _savegpr0_27
0x00000000001008fc _savegpr0_28
0x0000000000100914 _restgpr0_14
0x0000000000100948 _restgpr0_27
0x000000000010094c _restgpr0_28
.sfpr 0x00000000001008c8 0xa4
.sfpr 0x00000000001008c8 0xa4 linker stubs
0x00000000001008c8 _savegpr0_14
0x00000000001008f8 _savegpr0_26
0x0000000000100900 _savegpr0_28
0x0000000000100918 _restgpr0_14
0x0000000000100948 _restgpr0_26
0x0000000000100950 _restgpr0_28
.glink 0x0000000000100968 0x0
.glink 0x0000000000100968 0x0 linker stubs
.glink 0x0000000000100970 0x0
.glink 0x0000000000100970 0x0 linker stubs
.eh_frame 0x0000000000100968 0x0
.eh_frame 0x0000000000100968 0x0 linker stubs
.eh_frame 0x000000000010096c 0x0
.eh_frame 0x000000000010096c 0x0 linker stubs
.rela.dyn 0x0000000000100968 0x0
.rela.iplt 0x0000000000100968 0x0 linker stubs
.rela.dyn 0x0000000000100970 0x0
.rela.iplt 0x0000000000100970 0x0 linker stubs
.data
LOAD tmp/powerpc64le-linux.elf-fold.o
LOAD tmp/powerpc64le-linux.elf-main.o
OUTPUT(tmp/powerpc64le-linux.elf-fold.bin elf64-powerpcle)
.branch_lt 0x0000000000100968 0x0
.branch_lt 0x0000000000100968 0x0 linker stubs
.branch_lt 0x0000000000100970 0x0
.branch_lt 0x0000000000100970 0x0 linker stubs
.toc 0x0000000000100968 0x0
.toc 0x0000000000100968 0x0 tmp/powerpc64le-linux.elf-main.o
.toc 0x0000000000100970 0x0
.toc 0x0000000000100970 0x0 tmp/powerpc64le-linux.elf-main.o
.opd 0x0000000000100968 0x58
.opd 0x0000000000100968 0x58 tmp/powerpc64le-linux.elf-main.o
0x00000000001009a8 upx_main
.opd 0x0000000000100970 0x58
.opd 0x0000000000100970 0x58 tmp/powerpc64le-linux.elf-main.o
0x00000000001009b0 upx_main
.iplt 0x00000000001009c0 0x0
.iplt 0x00000000001009c0 0x0 linker stubs
.iplt 0x00000000001009c8 0x0
.iplt 0x00000000001009c8 0x0 linker stubs
.bss 0x00000000001009c0 0x0
.bss 0x00000000001009c0 0x0 tmp/powerpc64le-linux.elf-fold.o
.bss 0x00000000001009c0 0x0 tmp/powerpc64le-linux.elf-main.o
.bss 0x00000000001009c8 0x0
.bss 0x00000000001009c8 0x0 tmp/powerpc64le-linux.elf-fold.o
.bss 0x00000000001009c8 0x0 tmp/powerpc64le-linux.elf-main.o