fn entry() callconv(.naked) void
1390 1391 1392 1393 1394 1395 1396 1397 1398 1399 1400 1401 1402 1403 1404 1405 1406 1407 1408 1409 1410 1411 1412
fn entry() callconv(.naked) void { switch (builtin.cpu.arch) { .aarch64 => asm volatile ( \\ mov x0, sp \\ b %[call] : : [call] "X" (&call), ), .riscv64 => asm volatile ( \\ mv a0, sp \\ tail %[call]@plt : : [call] "X" (&call), ), .x86_64 => asm volatile ( \\ leaq 8(%%rsp), %%rdi \\ jmp %[call:P] : : [call] "X" (&call), ), else => |arch| @compileError("unimplemented architecture: " ++ @tagName(arch)), } }