mips stub uses new strategy

modified:   p_lx_elf.cpp
	modified:   stub/src/arch/mips/r3000/macros.ash
	modified:   stub/src/arm64-linux.elf-entry.S
	modified:   stub/src/i386-linux.elf-main.c
	modified:   stub/src/mipsel.r3000-linux.elf-entry.S
	modified:   stub/src/mipsel.r3000-linux.elf-fold.S
	also .h, .bin.dump, .map
This commit is contained in:
John Reiser
2017-10-12 21:04:10 -07:00
parent 85eb4c7537
commit e0bc040b0a
14 changed files with 1842 additions and 1951 deletions
@@ -2,19 +2,19 @@ file format elf32-bigmips
Sections:
Idx Name Size VMA LMA File off Algn Flags
0 ELFMAINX 00000020 00000000 00000000 00000034 2**0 CONTENTS, RELOC, READONLY
1 NRV2E 00000154 00000000 00000000 00000054 2**0 CONTENTS, RELOC, READONLY
2 NRV2D 00000144 00000000 00000000 000001a8 2**0 CONTENTS, RELOC, READONLY
3 NRV2B 00000128 00000000 00000000 000002ec 2**0 CONTENTS, RELOC, READONLY
4 LZMA_ELF00 0000009c 00000000 00000000 00000414 2**0 CONTENTS, READONLY
5 LZMA_DEC20 00000ad8 00000000 00000000 000004b0 2**0 CONTENTS, READONLY
6 LZMA_DEC10 00000ad8 00000000 00000000 00000f88 2**0 CONTENTS, READONLY
7 LZMA_DEC30 00000004 00000000 00000000 00001a60 2**0 CONTENTS, READONLY
8 NRV_HEAD 00000010 00000000 00000000 00001a64 2**0 CONTENTS, READONLY
9 NRV_TAIL 00000010 00000000 00000000 00001a74 2**0 CONTENTS, READONLY
10 CFLUSH 00000024 00000000 00000000 00001a84 2**0 CONTENTS, READONLY
11 ELFMAINY 0000002a 00000000 00000000 00001aa8 2**0 CONTENTS, RELOC, READONLY
12 ELFMAINZ 00000124 00000000 00000000 00001ad2 2**0 CONTENTS, RELOC, READONLY
0 ELFMAINX 00000008 00000000 00000000 00000034 2**0 CONTENTS, RELOC, READONLY
1 NRV2E 00000154 00000000 00000000 0000003c 2**0 CONTENTS, RELOC, READONLY
2 NRV2D 00000144 00000000 00000000 00000190 2**0 CONTENTS, RELOC, READONLY
3 NRV2B 00000128 00000000 00000000 000002d4 2**0 CONTENTS, RELOC, READONLY
4 LZMA_ELF00 0000009c 00000000 00000000 000003fc 2**0 CONTENTS, READONLY
5 LZMA_DEC20 00000ad8 00000000 00000000 00000498 2**0 CONTENTS, READONLY
6 LZMA_DEC10 00000ad8 00000000 00000000 00000f70 2**0 CONTENTS, READONLY
7 LZMA_DEC30 00000004 00000000 00000000 00001a48 2**0 CONTENTS, READONLY
8 NRV_HEAD 00000010 00000000 00000000 00001a4c 2**0 CONTENTS, READONLY
9 NRV_TAIL 00000010 00000000 00000000 00001a5c 2**0 CONTENTS, READONLY
10 CFLUSH 00000024 00000000 00000000 00001a6c 2**0 CONTENTS, READONLY
11 ELFMAINY 0000002a 00000000 00000000 00001a90 2**0 CONTENTS, RELOC, READONLY
12 ELFMAINZ 00000194 00000000 00000000 00001abc 2**2 CONTENTS, RELOC, READONLY
SYMBOL TABLE:
00000000 l d NRV_TAIL 00000000 NRV_TAIL
00000000 l d ELFMAINZ 00000000 ELFMAINZ
@@ -29,24 +29,12 @@ SYMBOL TABLE:
00000000 l d NRV_HEAD 00000000 NRV_HEAD
00000000 l d CFLUSH 00000000 CFLUSH
00000000 l d ELFMAINY 00000000 ELFMAINY
00000000 *UND* 00000000 ADRM
00000000 *UND* 00000000 LENM
00000000 *UND* 00000000 ADRU
00000000 *UND* 00000000 ADRC
00000000 *UND* 00000000 LENU
00000000 *UND* 00000000 ADRX
00000018 g O ELFMAINX 00000000 _start
00000000 g O ELFMAINX 00000000 _start
00000000 *UND* 00000000 O_BINFO
RELOCATION RECORDS FOR [ELFMAINX]:
OFFSET TYPE VALUE
00000000 R_MIPS_32 ADRM
00000004 R_MIPS_32 LENM
00000008 R_MIPS_32 ADRU
0000000c R_MIPS_32 ADRC
00000010 R_MIPS_32 LENU
00000014 R_MIPS_32 ADRX
00000018 R_MIPS_PC16 ELFMAINZ
00000000 R_MIPS_PC16 ELFMAINZ
RELOCATION RECORDS FOR [NRV2E]:
OFFSET TYPE VALUE
@@ -66,4 +54,4 @@ OFFSET TYPE VALUE
RELOCATION RECORDS FOR [ELFMAINZ]:
OFFSET TYPE VALUE
00000120 R_MIPS_32 O_BINFO
00000190 R_MIPS_32 O_BINFO
+9 -9
View File
@@ -9,20 +9,20 @@ Linker script and memory map
TARGET(elf32-bigmips)
0x0000000000100080 . = ((0x100000 + SIZEOF_HEADERS) + 0xc)
.text 0x0000000000100080 0x940
.text 0x0000000000100080 0x990
*(.text)
.text 0x0000000000100080 0x130 tmp/mips.r3000-linux.elf-fold.o
.text 0x00000000001001b0 0x810 tmp/mips.r3000-linux.elf-main.o
0x0000000000100830 upx_main
.text 0x0000000000100080 0x170 tmp/mips.r3000-linux.elf-fold.o
.text 0x00000000001001f0 0x820 tmp/mips.r3000-linux.elf-main.o
0x0000000000100870 upx_main
*(.data)
.data 0x00000000001009c0 0x0 tmp/mips.r3000-linux.elf-fold.o
.data 0x00000000001009c0 0x0 tmp/mips.r3000-linux.elf-main.o
.data 0x0000000000100a10 0x0 tmp/mips.r3000-linux.elf-fold.o
.data 0x0000000000100a10 0x0 tmp/mips.r3000-linux.elf-main.o
.data
.bss 0x00000000001009c0 0x0
.bss 0x00000000001009c0 0x0 tmp/mips.r3000-linux.elf-fold.o
.bss 0x00000000001009c0 0x0 tmp/mips.r3000-linux.elf-main.o
.bss 0x0000000000100a10 0x0
.bss 0x0000000000100a10 0x0 tmp/mips.r3000-linux.elf-fold.o
.bss 0x0000000000100a10 0x0 tmp/mips.r3000-linux.elf-main.o
LOAD tmp/mips.r3000-linux.elf-fold.o
LOAD tmp/mips.r3000-linux.elf-main.o
OUTPUT(tmp/mips.r3000-linux.elf-fold.bin elf32-bigmips)
@@ -2,19 +2,19 @@ file format elf32-littlemips
Sections:
Idx Name Size VMA LMA File off Algn Flags
0 ELFMAINX 00000020 00000000 00000000 00000034 2**0 CONTENTS, RELOC, READONLY
1 NRV2E 0000012c 00000000 00000000 00000054 2**0 CONTENTS, RELOC, READONLY
2 NRV2D 0000011c 00000000 00000000 00000180 2**0 CONTENTS, RELOC, READONLY
3 NRV2B 00000100 00000000 00000000 0000029c 2**0 CONTENTS, RELOC, READONLY
4 LZMA_ELF00 0000009c 00000000 00000000 0000039c 2**0 CONTENTS, READONLY
5 LZMA_DEC20 00000ad8 00000000 00000000 00000438 2**0 CONTENTS, READONLY
6 LZMA_DEC10 00000ad8 00000000 00000000 00000f10 2**0 CONTENTS, READONLY
7 LZMA_DEC30 00000004 00000000 00000000 000019e8 2**0 CONTENTS, READONLY
8 NRV_HEAD 00000010 00000000 00000000 000019ec 2**0 CONTENTS, READONLY
9 NRV_TAIL 00000010 00000000 00000000 000019fc 2**0 CONTENTS, READONLY
10 CFLUSH 00000024 00000000 00000000 00001a0c 2**0 CONTENTS, READONLY
11 ELFMAINY 0000002a 00000000 00000000 00001a30 2**0 CONTENTS, RELOC, READONLY
12 ELFMAINZ 00000124 00000000 00000000 00001a5a 2**0 CONTENTS, RELOC, READONLY
0 ELFMAINX 00000008 00000000 00000000 00000034 2**0 CONTENTS, RELOC, READONLY
1 NRV2E 0000012c 00000000 00000000 0000003c 2**0 CONTENTS, RELOC, READONLY
2 NRV2D 0000011c 00000000 00000000 00000168 2**0 CONTENTS, RELOC, READONLY
3 NRV2B 00000100 00000000 00000000 00000284 2**0 CONTENTS, RELOC, READONLY
4 LZMA_ELF00 0000009c 00000000 00000000 00000384 2**0 CONTENTS, READONLY
5 LZMA_DEC20 00000ad8 00000000 00000000 00000420 2**0 CONTENTS, READONLY
6 LZMA_DEC10 00000ad8 00000000 00000000 00000ef8 2**0 CONTENTS, READONLY
7 LZMA_DEC30 00000004 00000000 00000000 000019d0 2**0 CONTENTS, READONLY
8 NRV_HEAD 00000010 00000000 00000000 000019d4 2**0 CONTENTS, READONLY
9 NRV_TAIL 00000010 00000000 00000000 000019e4 2**0 CONTENTS, READONLY
10 CFLUSH 00000024 00000000 00000000 000019f4 2**0 CONTENTS, READONLY
11 ELFMAINY 0000002a 00000000 00000000 00001a18 2**0 CONTENTS, RELOC, READONLY
12 ELFMAINZ 00000194 00000000 00000000 00001a44 2**2 CONTENTS, RELOC, READONLY
SYMBOL TABLE:
00000000 l d NRV_TAIL 00000000 NRV_TAIL
00000000 l d ELFMAINZ 00000000 ELFMAINZ
@@ -29,24 +29,12 @@ SYMBOL TABLE:
00000000 l d NRV_HEAD 00000000 NRV_HEAD
00000000 l d CFLUSH 00000000 CFLUSH
00000000 l d ELFMAINY 00000000 ELFMAINY
00000000 *UND* 00000000 ADRM
00000000 *UND* 00000000 LENM
00000000 *UND* 00000000 ADRU
00000000 *UND* 00000000 ADRC
00000000 *UND* 00000000 LENU
00000000 *UND* 00000000 ADRX
00000018 g O ELFMAINX 00000000 _start
00000000 g O ELFMAINX 00000000 _start
00000000 *UND* 00000000 O_BINFO
RELOCATION RECORDS FOR [ELFMAINX]:
OFFSET TYPE VALUE
00000000 R_MIPS_32 ADRM
00000004 R_MIPS_32 LENM
00000008 R_MIPS_32 ADRU
0000000c R_MIPS_32 ADRC
00000010 R_MIPS_32 LENU
00000014 R_MIPS_32 ADRX
00000018 R_MIPS_PC16 ELFMAINZ
00000000 R_MIPS_PC16 ELFMAINZ
RELOCATION RECORDS FOR [NRV2E]:
OFFSET TYPE VALUE
@@ -66,4 +54,4 @@ OFFSET TYPE VALUE
RELOCATION RECORDS FOR [ELFMAINZ]:
OFFSET TYPE VALUE
00000120 R_MIPS_32 O_BINFO
00000190 R_MIPS_32 O_BINFO
+9 -9
View File
@@ -9,20 +9,20 @@ Linker script and memory map
TARGET(elf32-littlemips)
0x0000000000100080 . = ((0x100000 + SIZEOF_HEADERS) + 0xc)
.text 0x0000000000100080 0x940
.text 0x0000000000100080 0x990
*(.text)
.text 0x0000000000100080 0x130 tmp/mipsel.r3000-linux.elf-fold.o
.text 0x00000000001001b0 0x810 tmp/mipsel.r3000-linux.elf-main.o
0x0000000000100830 upx_main
.text 0x0000000000100080 0x170 tmp/mipsel.r3000-linux.elf-fold.o
.text 0x00000000001001f0 0x820 tmp/mipsel.r3000-linux.elf-main.o
0x0000000000100870 upx_main
*(.data)
.data 0x00000000001009c0 0x0 tmp/mipsel.r3000-linux.elf-fold.o
.data 0x00000000001009c0 0x0 tmp/mipsel.r3000-linux.elf-main.o
.data 0x0000000000100a10 0x0 tmp/mipsel.r3000-linux.elf-fold.o
.data 0x0000000000100a10 0x0 tmp/mipsel.r3000-linux.elf-main.o
.data
.bss 0x00000000001009c0 0x0
.bss 0x00000000001009c0 0x0 tmp/mipsel.r3000-linux.elf-fold.o
.bss 0x00000000001009c0 0x0 tmp/mipsel.r3000-linux.elf-main.o
.bss 0x0000000000100a10 0x0
.bss 0x0000000000100a10 0x0 tmp/mipsel.r3000-linux.elf-fold.o
.bss 0x0000000000100a10 0x0 tmp/mipsel.r3000-linux.elf-main.o
LOAD tmp/mipsel.r3000-linux.elf-fold.o
LOAD tmp/mipsel.r3000-linux.elf-main.o
OUTPUT(tmp/mipsel.r3000-linux.elf-fold.bin elf32-littlemips)