authorgravatar for alex@alexrp.comAlex Rønne Petersen <alex@alexrp.com> 2026-05-23 11:00:25+02:00
committergravatar for alex@alexrp.comAlex Rønne Petersen <alex@alexrp.com> 2026-05-23 11:02:56+02:00
logffb7d76e1145832a535d3c8f20b7d1f3297a6091
tree1d4e1447472e93d8a1455c4871d1fd64ba05376d
parent07262bddd67e8c3bbf87cc2d335c07aae40e52bf
signaturebadge-check Signed by SSH key SHA256:7B/LJ7bpR1eX8aCXSr4mtd5M45VMPKcx9zY8e95b5QM

std.start: add m88k support


1 files changed, 11 insertions(+), 0 deletions(-)

lib/std/start.zig+11
...@@ -169,6 +169,7 @@ fn _start() callconv(.naked) noreturn {...@@ -169,6 +169,7 @@ fn _start() callconv(.naked) noreturn {
169 .kvx => ".cfi_undefined r14",169 .kvx => ".cfi_undefined r14",
170 .loongarch32, .loongarch64 => ".cfi_undefined 1",170 .loongarch32, .loongarch64 => ".cfi_undefined 1",
171 .m68k => ".cfi_undefined %%pc",171 .m68k => ".cfi_undefined %%pc",
172 .m88k => ".cfi_undefined %%r1",
172 .microblaze, .microblazeel => ".cfi_undefined r15",173 .microblaze, .microblazeel => ".cfi_undefined r15",
173 .mips, .mipsel, .mips64, .mips64el => ".cfi_undefined $ra",174 .mips, .mipsel, .mips64, .mips64el => ".cfi_undefined $ra",
174 .or1k => ".cfi_undefined r9",175 .or1k => ".cfi_undefined r9",
...@@ -331,6 +332,16 @@ fn _start() callconv(.naked) noreturn {...@@ -331,6 +332,16 @@ fn _start() callconv(.naked) noreturn {
331 \\ lea %[posixCallMainAndExit] - . - 8, %%a0332 \\ lea %[posixCallMainAndExit] - . - 8, %%a0
332 \\ jsr (%%pc, %%a0)333 \\ jsr (%%pc, %%a0)
333 ,334 ,
335 .m88k =>
336 // r1 = LR, r30 = FP, r31 = SP
337 \\ or %%r0, %%r0, %%r0
338 \\ or %%r0, %%r0, %%r0
339 \\ or %%30, %%r0, %%r0
340 \\ or %%r1, %%r0, %%r0
341 \\ or %%r2, %%r31, %%r0
342 \\ clr %%r31, %%r31, 4<0>
343 \\ br.n %[posixCallMainAndExit]
344 ,
334 .microblaze, .microblazeel =>345 .microblaze, .microblazeel =>
335 // r1 = SP, r15 = LR, r19 = FP, r20 = GP346 // r1 = SP, r15 = LR, r19 = FP, r20 = GP
336 \\ ori r15, r0, r0347 \\ ori r15, r0, r0