mirror of
https://github.com/ziglang/zig.git
synced 2026-02-21 16:54:52 +00:00
start: Explicitly clear the link register on mips and mips64 just in case.
The kernel does this as required, but we cannot trust dynamic linkers to do it.
This commit is contained in:
parent
1b13d7477d
commit
47c0464e86
@ -329,8 +329,8 @@ fn _start() callconv(.Naked) noreturn {
|
||||
\\ jsr (%%pc, %%a0)
|
||||
,
|
||||
.mips, .mipsel =>
|
||||
// The lr is already zeroed on entry, as specified by the ABI.
|
||||
\\ addiu $fp, $zero, 0
|
||||
\\ move $fp, $0
|
||||
\\ move $ra, $0
|
||||
\\ move $a0, $sp
|
||||
\\ .set push
|
||||
\\ .set noat
|
||||
@ -340,8 +340,8 @@ fn _start() callconv(.Naked) noreturn {
|
||||
\\ j %[posixCallMainAndExit]
|
||||
,
|
||||
.mips64, .mips64el =>
|
||||
// The lr is already zeroed on entry, as specified by the ABI.
|
||||
\\ addiu $fp, $zero, 0
|
||||
\\ move $fp, $0
|
||||
\\ move $ra, $0
|
||||
\\ move $a0, $sp
|
||||
\\ .set push
|
||||
\\ .set noat
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user