Fix --lzma (and so --ultra-brute) for 32-bit ARM

https://github.com/upx/upx/issues/167  (comment #14)
	modified:   stub/src/arm.v4a-linux.elf-entry.S
	modified:   ../.github/travis_testsuite_1.sh
This commit is contained in:
John Reiser
2018-02-03 15:37:32 -08:00
parent 95cedb6640
commit 0ef00e9b82
8 changed files with 1886 additions and 1884 deletions
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
+3 -1
View File
@@ -159,6 +159,7 @@ unfold: // in: r3= mflg; lr= &O_BINFO
// Unfold
ldr r3,[r6,#sz_unc]; str r3,[sp,#-4]! @ P_01
mov r3,sp @ &sz_unc
ldrb r0,[r6,#b_method]; str r0,[sp,#-4]! @ P_02 5th param to f_exp
add r2,r6,r10 @ dst= reloc(&b_info)
ldr r1,[r6,#sz_cpr] @ srclen
add r0,r6,#3*4 @ src
@@ -166,7 +167,8 @@ unfold: // in: r3= mflg; lr= &O_BINFO
#if DEBUG /*{*/
stmdb sp!,{TRACE_REGS}; mov r0,#2; bl trace
#endif /*}*/
mov lr,pc; ldr pc,[sp,#4+ F_f_exp] @ call f_exp [ARMv4 lacks blx]
mov lr,pc; ldr pc,[sp,#2*4+ F_f_exp] @ call f_exp [ARMv4 lacks blx]
add sp,sp,#4 @ P_02 remove 5th param
ldr r3,[sp],#4 @ P_01 sz_unc
ldr r1,[sp,#F_mflg] @ mflg
@@ -13,7 +13,7 @@ Idx Name Size VMA LMA File off Algn Flags
8 LZMA_DEC10 00000478 00000000 00000000 00000d40 2**0 CONTENTS, RELOC, READONLY
9 LZMA_DEC30 00000000 00000000 00000000 000011b8 2**0 CONTENTS, READONLY
10 ELFMAINY 00000000 00000000 00000000 000011b8 2**0 CONTENTS, READONLY
11 ELFMAINZ 0000010c 00000000 00000000 000011b8 2**2 CONTENTS, RELOC, READONLY
11 ELFMAINZ 00000118 00000000 00000000 000011b8 2**2 CONTENTS, RELOC, READONLY
SYMBOL TABLE:
00000000 l d NRV2E 00000000 NRV2E
00000000 l d NRV2D 00000000 NRV2D
@@ -35,7 +35,7 @@ SYMBOL TABLE:
00000000 g LZMA_DEC10 00000000 LzmaDecode
00000000 g ELFMAINY 00000000 end_decompress
00000000 *UND* 00000000 O_BINFO
0000010c g ELFMAINZ 00000000 cpr0
00000118 g ELFMAINZ 00000000 cpr0
RELOCATION RECORDS FOR [ELFMAINX]:
OFFSET TYPE VALUE
@@ -249,5 +249,5 @@ OFFSET TYPE VALUE
RELOCATION RECORDS FOR [ELFMAINZ]:
OFFSET TYPE VALUE
00000104 R_ARM_PC24 ELFMAINZ
00000108 R_ARM_ABS32 O_BINFO
00000110 R_ARM_PC24 ELFMAINZ
00000114 R_ARM_ABS32 O_BINFO
@@ -13,7 +13,7 @@ Idx Name Size VMA LMA File off Algn Flags
8 LZMA_DEC10 00000478 00000000 00000000 00000d80 2**0 CONTENTS, RELOC, READONLY
9 LZMA_DEC30 00000000 00000000 00000000 000011f8 2**0 CONTENTS, READONLY
10 ELFMAINY 00000000 00000000 00000000 000011f8 2**0 CONTENTS, READONLY
11 ELFMAINZ 0000011c 00000000 00000000 000011f8 2**2 CONTENTS, RELOC, READONLY
11 ELFMAINZ 00000128 00000000 00000000 000011f8 2**2 CONTENTS, RELOC, READONLY
SYMBOL TABLE:
00000000 l d NRV2E 00000000 NRV2E
00000000 l d NRV2D 00000000 NRV2D
@@ -35,7 +35,7 @@ SYMBOL TABLE:
00000000 g LZMA_DEC10 00000000 LzmaDecode
00000000 g ELFMAINY 00000000 end_decompress
00000000 *UND* 00000000 O_BINFO
0000011c g ELFMAINZ 00000000 cpr0
00000128 g ELFMAINZ 00000000 cpr0
RELOCATION RECORDS FOR [ELFMAINX]:
OFFSET TYPE VALUE
@@ -249,5 +249,5 @@ OFFSET TYPE VALUE
RELOCATION RECORDS FOR [ELFMAINZ]:
OFFSET TYPE VALUE
00000114 R_ARM_PC24 ELFMAINZ
00000118 R_ARM_ABS32 O_BINFO
00000120 R_ARM_PC24 ELFMAINZ
00000124 R_ARM_ABS32 O_BINFO
@@ -13,7 +13,7 @@ Idx Name Size VMA LMA File off Algn Flags
8 LZMA_DEC10 00000478 00000000 00000000 00000d40 2**0 CONTENTS, RELOC, READONLY
9 LZMA_DEC30 00000000 00000000 00000000 000011b8 2**0 CONTENTS, READONLY
10 ELFMAINY 00000000 00000000 00000000 000011b8 2**0 CONTENTS, READONLY
11 ELFMAINZ 0000010c 00000000 00000000 000011b8 2**2 CONTENTS, RELOC, READONLY
11 ELFMAINZ 00000118 00000000 00000000 000011b8 2**2 CONTENTS, RELOC, READONLY
SYMBOL TABLE:
00000000 l d NRV2E 00000000 NRV2E
00000000 l d NRV2D 00000000 NRV2D
@@ -35,7 +35,7 @@ SYMBOL TABLE:
00000000 g LZMA_DEC10 00000000 LzmaDecode
00000000 g ELFMAINY 00000000 end_decompress
00000000 *UND* 00000000 O_BINFO
0000010c g ELFMAINZ 00000000 cpr0
00000118 g ELFMAINZ 00000000 cpr0
RELOCATION RECORDS FOR [ELFMAINX]:
OFFSET TYPE VALUE
@@ -249,5 +249,5 @@ OFFSET TYPE VALUE
RELOCATION RECORDS FOR [ELFMAINZ]:
OFFSET TYPE VALUE
00000104 R_ARM_PC24 ELFMAINZ
00000108 R_ARM_ABS32 O_BINFO
00000110 R_ARM_PC24 ELFMAINZ
00000114 R_ARM_ABS32 O_BINFO