stash work-in-progress

modified:   linker.cpp
	modified:   p_mach.cpp
	modified:   p_mach.h
	modified:   packmast.cpp
	modified:   stub/Makefile
	modified:   stub/src/amd64-darwin.macho-main.c
	modified:   stub/src/arm.v5a-darwin.macho-entry.S
	modified:   stub/src/arm64-darwin.macho-entry.S
	modified:   stub/src/arm64-darwin.macho-fold.S
	modified:   stub/src/arm64-darwin.macho-main.c
This commit is contained in:
John Reiser
2017-12-19 17:32:15 -08:00
parent 576d9a4e7e
commit e8aa80f904
17 changed files with 1316 additions and 1420 deletions
+10 -7
View File
@@ -152,15 +152,10 @@ const int *PackMachBase<T>::getCompressionMethods(int method, int level) const
const int *PackMachARMEL::getCompressionMethods(int method, int level) const
{
// Un-aligned fetch does not work on 32-bit ARM, so use 8-bit methods
return Packer::getDefaultCompressionMethods_8(method, level);
}
const int *PackMachARM64EL::getCompressionMethods(int method, int level) const
{
return Packer::getDefaultCompressionMethods_8(method, level);
}
PackMachPPC32::PackMachPPC32(InputFile *f) : super(f, Mach_header::CPU_TYPE_POWERPC,
Mach_header::MH_EXECUTE, Mach_thread_command::PPC_THREAD_STATE,
sizeof(Mach_ppc_thread_state)>>2, sizeof(threado))
@@ -210,7 +205,7 @@ PackMachARMEL::PackMachARMEL(InputFile *f) : super(f, Mach_header::CPU_TYPE_ARM,
sizeof(Mach_ARM_thread_state)>>2, sizeof(threado))
{ }
PackMachARM64EL::PackMachARM64EL(InputFile *f) : super(f, Mach_header::CPU_TYPE_ARM,
PackMachARM64EL::PackMachARM64EL(InputFile *f) : super(f, Mach_header::CPU_TYPE_ARM64,
Mach_header::MH_EXECUTE, (unsigned)Mach_thread_command::ARM_THREAD_STATE,
sizeof(Mach_ARM64_thread_state)>>2, sizeof(threado))
{ }
@@ -1919,6 +1914,14 @@ bool PackMachBase<T>::canPack()
stub_arm_v5a_darwin_macho_fold,
0
},
{CPU_TYPE_ARM64, MH_EXECUTE,
sizeof(stub_arm64_darwin_macho_entry),
sizeof(stub_arm64_darwin_macho_fold),
0,
stub_arm64_darwin_macho_entry,
stub_arm64_darwin_macho_fold,
0
},
{CPU_TYPE_POWERPC, MH_EXECUTE,
sizeof(stub_powerpc_darwin_macho_entry),
sizeof(stub_powerpc_darwin_macho_fold),