diff options
author | cinap_lenrek <cinap_lenrek@felloff.net> | 2019-05-03 21:00:17 +0200 |
---|---|---|
committer | cinap_lenrek <cinap_lenrek@felloff.net> | 2019-05-03 21:00:17 +0200 |
commit | 14b69dcde0dfbb72df721424571d07cdf3dcbf05 (patch) | |
tree | 26fac46e8a0b6462d7e9e5f388468bee09eb3ce6 /sys/src/libmach/executable.c | |
parent | 9920ecc04b87cab3968f7f0c286b264bd31e132f (diff) |
libmach: initial arm64 support
Diffstat (limited to 'sys/src/libmach/executable.c')
-rw-r--r-- | sys/src/libmach/executable.c | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/sys/src/libmach/executable.c b/sys/src/libmach/executable.c index 794dc7ef3..46b1a07d7 100644 --- a/sys/src/libmach/executable.c +++ b/sys/src/libmach/executable.c @@ -66,6 +66,7 @@ extern Mach m68020; extern Mach mi386; extern Mach mamd64; extern Mach marm; +extern Mach marm64; extern Mach mpower; extern Mach mpower64; @@ -233,6 +234,15 @@ ExecTable exectab[] = sizeof(Exec), leswal, armdotout }, + { R_MAGIC, /* Arm64 7.out and boot image */ + "arm64 plan 9 executable", + "arm64 plan 9 dlm", + FARM64, + 1, + &marm64, + sizeof(Exec)+8, + nil, + commonllp64 }, { 0 }, }; @@ -375,6 +385,12 @@ commonboot(Fhdr *fp) fp->name = "ARM plan 9 boot image"; fp->dataddr = _round(fp->txtaddr+fp->txtsz, mach->pgsize); return; + case FARM64: + fp->type = FARM64B; + fp->txtaddr = fp->entry; + fp->name = "arm64 plan 9 boot image"; + fp->dataddr = _round(fp->txtaddr+fp->txtsz, mach->pgsize); + return; case FPOWER: fp->type = FPOWERB; fp->txtaddr = (u32int)fp->entry; |