diff options
author | Michael Stapelberg <stapelberg@debian.org> | 2014-06-19 09:22:53 +0200 |
---|---|---|
committer | Michael Stapelberg <stapelberg@debian.org> | 2014-06-19 09:22:53 +0200 |
commit | 8a39ee361feb9bf46d728ff1ba4f07ca1d9610b1 (patch) | |
tree | 4449f2036cccf162e8417cc5841a35815b3e7ac5 /src/pkg/runtime/rt0_nacl_386.s | |
parent | c8bf49ef8a92e2337b69c14b9b88396efe498600 (diff) | |
download | golang-8a39ee361feb9bf46d728ff1ba4f07ca1d9610b1.tar.gz |
Imported Upstream version 1.3upstream/1.3
Diffstat (limited to 'src/pkg/runtime/rt0_nacl_386.s')
-rw-r--r-- | src/pkg/runtime/rt0_nacl_386.s | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/src/pkg/runtime/rt0_nacl_386.s b/src/pkg/runtime/rt0_nacl_386.s new file mode 100644 index 000000000..8b713548f --- /dev/null +++ b/src/pkg/runtime/rt0_nacl_386.s @@ -0,0 +1,22 @@ +// Copyright 2013 The Go Authors. All rights reserved. +// Use of this source code is governed by a BSD-style +// license that can be found in the LICENSE file. + +#include "../../cmd/ld/textflag.h" + +// NaCl entry has: +// 0(FP) - arg block == SP+8 +// 4(FP) - cleanup function pointer, always 0 +// 8(FP) - envc +// 12(FP) - argc +// 16(FP) - argv, then 0, then envv, then 0, then auxv +TEXT _rt0_386_nacl(SB),NOSPLIT,$8 + MOVL argc+12(FP), AX + LEAL argv+16(FP), BX + MOVL AX, 0(SP) + MOVL BX, 4(SP) + CALL main(SB) + INT $3 + +TEXT main(SB),NOSPLIT,$0 + JMP _rt0_go(SB) |