ARM64LE begins implementation
added src/stub/arm64-darwin.macho-entry.h added src/stub/arm64-darwin.macho-fold.h added src/stub/src/arch/arm/v8a/lzma_d.S added src/stub/src/arch/arm/v8a/macros.S added src/stub/src/arch/arm/v8a/nrv2b_d8.S added src/stub/src/arch/arm/v8a/nrv2d_d8.S added src/stub/src/arch/arm/v8a/nrv2e_d32.S added src/stub/src/arch/arm/v8a/nrv2e_d8.S added src/stub/src/arm64-darwin.macho-entry.S added src/stub/src/arm64-darwin.macho-fold.S added src/stub/src/arm64-darwin.macho-main.c added src/stub/src/arm64-linux.elf-entry.S added src/stub/src/arm64-linux.elf-fold.S added src/stub/tmp/arm64-darwin.macho-entry.bin.dump changed src/p_mach.cpp changed src/p_mach.h changed src/stub/Makefile
This commit is contained in:
@@ -59,6 +59,8 @@ STUBS += amd64-linux.shlib-init.h
|
||||
STUBS += amd64-win64.pep.h
|
||||
STUBS += arm-darwin.macho-entry.h
|
||||
STUBS += arm-darwin.macho-fold.h
|
||||
STUBS += arm64-darwin.macho-entry.h
|
||||
STUBS += arm64-darwin.macho-fold.h
|
||||
STUBS += arm-linux.elf-entry.h
|
||||
STUBS += arm-linux.elf-fold.h
|
||||
STUBS += arm-linux.kernel.vmlinux-head.h
|
||||
@@ -421,6 +423,47 @@ tmp/arm-darwin.macho-main.o : $(srcdir)/src/$$T.c
|
||||
$(call tc,f-objstrip,$@)
|
||||
|
||||
|
||||
# /***********************************************************************
|
||||
# // arm64-darwin.macho
|
||||
# ************************************************************************/
|
||||
|
||||
# info: we use the tc settings from arm64-linux.elf, but override v4 with v5
|
||||
arm64-darwin.macho%.h : tc_list = arm64-linux.elf default
|
||||
arm64-darwin.macho%.h : tc_bfdname = elf64-littleaarch64
|
||||
tc.arm64-darwin.macho-entry.gcc = /usr/bin/aarch64-linux-gnu-gcc -nostdinc -MMD -MT $@
|
||||
tc.arm64-darwin.macho-fold.gcc = /usr/bin/aarch64-linux-gnu-gcc -nostdinc -MMD -MT $@
|
||||
tc.arm64-darwin.macho-main.gcc = /usr/bin/aarch64-linux-gnu-gcc -nostdinc -MMD -MT $@
|
||||
|
||||
tc.arm64-darwin.macho-fold.ld = /usr/bin/aarch64-linux-gnu-ld
|
||||
|
||||
tc.arm64-darwin.macho-entry.objcopy = /usr/bin/aarch64-linux-gnu-objcopy -F elf64-littleaarch64
|
||||
tc.arm64-darwin.macho-fold.objcopy = /usr/bin/aarch64-linux-gnu-objcopy -F elf64-littleaarch64
|
||||
tc.arm64-darwin.macho-main.objcopy = /usr/bin/aarch64-linux-gnu-objcopy -F elf64-littleaarch64
|
||||
|
||||
tc.arm64-darwin.macho-entry.objdump = /usr/bin/aarch64-linux-gnu-objdump
|
||||
tc.arm64-darwin.macho-fold.objdump = /usr/bin/aarch64-linux-gnu-objdump
|
||||
tc.arm64-darwin.macho-main.objdump = /usr/bin/aarch64-linux-gnu-objdump
|
||||
|
||||
arm64-darwin.macho-entry.h : $(srcdir)/src/$$T.S
|
||||
$(call tc,gcc) -c $< -o tmp/$T.bin
|
||||
$(call tc,f-embed_objinfo,tmp/$T.bin)
|
||||
$(call tc,bin2h) tmp/$T.bin $@
|
||||
|
||||
arm64-darwin.macho-fold.h : tmp/$$T.o tmp/arm64-darwin.macho-main.o
|
||||
$(call tc,ld) --no-warn-mismatch --strip-all -Map tmp/$T.map $(filter %.o,$^) -o tmp/$T.tmp
|
||||
$(call tc,objcopy) -O binary tmp/$T.tmp tmp/$T.bin
|
||||
chmod a-x tmp/$T.bin
|
||||
$(call tc,bin2h) tmp/$T.bin $@
|
||||
|
||||
tmp/arm64-darwin.macho-fold.o : $(srcdir)/src/$$T.S
|
||||
$(call tc,gcc) -c $< -o $@
|
||||
$(call tc,f-objstrip,$@)
|
||||
|
||||
tmp/arm64-darwin.macho-main.o : $(srcdir)/src/$$T.c
|
||||
$(call tc,gcc) -c -Os $< -o $@
|
||||
$(call tc,f-objstrip,$@)
|
||||
|
||||
|
||||
# /***********************************************************************
|
||||
# // arm-linux.elf
|
||||
# ************************************************************************/
|
||||
|
||||
Reference in New Issue
Block a user