aboutsummaryrefslogtreecommitdiff
path: root/std/special/bootstrap.zig
diff options
context:
space:
mode:
authorShawn Landden <shawn@git.icu>2018-08-29 17:37:58 -0700
committerShawn Landden <shawn@git.icu>2018-09-08 03:52:28 +0000
commit342cff28f5033887ac9c2e8b02da9067e8ad2f3d (patch)
tree1f15d22c030505bfc3002b42684c8df783581b9c /std/special/bootstrap.zig
parent4a8c992ef1e550d969ef1b26a460327fa188451c (diff)
downloadzig-342cff28f5033887ac9c2e8b02da9067e8ad2f3d.tar.gz
zig-342cff28f5033887ac9c2e8b02da9067e8ad2f3d.zip
initial arm64 support
Diffstat (limited to 'std/special/bootstrap.zig')
-rw-r--r--std/special/bootstrap.zig5
1 files changed, 5 insertions, 0 deletions
diff --git a/std/special/bootstrap.zig b/std/special/bootstrap.zig
index 47b57c6c23..6619b2dc2f 100644
--- a/std/special/bootstrap.zig
+++ b/std/special/bootstrap.zig
@@ -30,6 +30,11 @@ nakedcc fn _start() noreturn {
: [argc] "=r" (-> [*]usize)
);
},
+ builtin.Arch.aarch64v8 => {
+ argc_ptr = asm ("mov %[argc], sp"
+ : [argc] "=r" (-> [*]usize)
+ );
+ },
else => @compileError("unsupported arch"),
}
// If LLVM inlines stack variables into _start, they will overwrite