ELF2 for arm64 main programs
modified: ../misc/testsuite/upx_testsuite_1-expected_sha256sums.sh
modified: p_lx_elf.cpp
modified: stub/Makefile
modified: stub/src/amd64-linux.elf-entry.S
modified: stub/src/amd64-linux.elf-main2.c
modified: stub/src/arm64-linux.elf-entry.S
modified: stub/src/arm64-linux.elf-fold.S
modified: stub/src/arm64-linux.elf-fold.lds
new file: stub/src/arm64-linux.elf-main2.c
plus generated *.h *.dump *.map
This commit is contained in:
+4
-3
@@ -1651,8 +1651,8 @@ PackLinuxElf64::buildLinuxLoader(
|
||||
}
|
||||
else if (0
|
||||
|| this->e_machine==Elf64_Ehdr::EM_X86_64
|
||||
|| this->e_machine==Elf64_Ehdr::EM_AARCH64
|
||||
//ELF2 NYI || this->e_machine==Elf64_Ehdr::EM_PPC64
|
||||
//ELF2 NYI || this->e_machine==Elf64_Ehdr::EM_AARCH64
|
||||
) { // main program with ELF2 de-compressor
|
||||
initLoader(fold, szfold);
|
||||
char sec[120]; memset(sec, 0, sizeof(sec)); // debug convenience
|
||||
@@ -1719,15 +1719,16 @@ PackLinuxElf64::buildLinuxLoader(
|
||||
if (xct_off
|
||||
&& (0
|
||||
|| this->e_machine==Elf64_Ehdr::EM_X86_64
|
||||
|| this->e_machine==Elf64_Ehdr::EM_AARCH64
|
||||
//ELF2 NYI || this->e_machine==Elf64_Ehdr::EM_PPC64
|
||||
|| this->e_machine==Elf64_Ehdr::EM_AARCH64)
|
||||
)
|
||||
) {
|
||||
addLoader("ELFMAINX,ELFMAINZ,FOLDEXEC,IDENTSTR");
|
||||
} // shlib
|
||||
else if (0
|
||||
|| this->e_machine==Elf64_Ehdr::EM_X86_64
|
||||
|| this->e_machine==Elf64_Ehdr::EM_AARCH64
|
||||
//ELF2 NYI || this->e_machine==Elf64_Ehdr::EM_PPC64
|
||||
//ELF2 NYI || this->e_machine==Elf64_Ehdr::EM_AARCH64
|
||||
) { // main program with ELF2 de-compressor
|
||||
addLoader("ELFMAINX,ELFMAINZ,FOLDEXEC,IDENTSTR");
|
||||
if (this->e_machine==Elf64_Ehdr::EM_PPC64
|
||||
|
||||
Reference in New Issue
Block a user