| ... | ... | @@ -202,6 +202,7 @@ fn _start() callconv(.naked) noreturn { |
| 202 | 202 | .loongarch32, .loongarch64 => ".cfi_undefined 1", |
| 203 | 203 | .m68k => ".cfi_undefined %%pc", |
| 204 | 204 | .mips, .mipsel, .mips64, .mips64el => ".cfi_undefined $ra", |
| 205 | .or1k => ".cfi_undefined r9", |
| 205 | 206 | .powerpc, .powerpcle, .powerpc64, .powerpc64le => ".cfi_undefined lr", |
| 206 | 207 | .riscv32, .riscv32be, .riscv64, .riscv64be => if (builtin.zig_backend == .stage2_riscv64) |
| 207 | 208 | "" |
| ... | ... | @@ -305,6 +306,14 @@ fn _start() callconv(.naked) noreturn { |
| 305 | 306 | \\ bstrins.d $sp, $zero, 3, 0 |
| 306 | 307 | \\ b %[posixCallMainAndExit] |
| 307 | 308 | , |
| 309 | .or1k => |
| 310 | // r1 = SP, r2 = FP, r9 = LR |
| 311 | \\ l.ori r2, r0, 0 |
| 312 | \\ l.ori r9, r0, 0 |
| 313 | \\ l.ori r3, r1, 0 |
| 314 | \\ l.andi r1, r1, -4 |
| 315 | \\ l.jal %[posixCallMainAndExit] |
| 316 | , |
| 308 | 317 | .riscv32, .riscv32be, .riscv64, .riscv64be => |
| 309 | 318 | \\ li fp, 0 |
| 310 | 319 | \\ li ra, 0 |