diff options
author | Russ Cox <rsc@golang.org> | 2014-09-14 21:25:44 -0400 |
---|---|---|
committer | Russ Cox <rsc@golang.org> | 2014-09-14 21:25:44 -0400 |
commit | 591378011b272416e0a90d25aae8900e6d70d7cc (patch) | |
tree | 0bf7df2d1e783b17373fdf95f2fa2294f68586db /src/syscall | |
parent | 59a3de87634517a57dfd2648b49a22534c8c6083 (diff) | |
download | go-591378011b272416e0a90d25aae8900e6d70d7cc.tar.gz |
runtime: convert syscall_windows.c to Go
This is necessary because syscall.Syscall blocks, and the
garbage collector needs to be able to scan that frame while
it is blocked, and C frames have no garbage collection
information.
Windows builders are broken now due to this problem:
http://build.golang.org/log/152ca9a4be6783d3a8bf6e2f5b9fc265089728b6
LGTM=alex.brainman
R=alex.brainman
CC=golang-codereviews
https://codereview.appspot.com/144830043
Diffstat (limited to 'src/syscall')
-rw-r--r-- | src/syscall/asm_windows.s | 13 | ||||
-rw-r--r-- | src/syscall/dll_windows.go | 2 |
2 files changed, 1 insertions, 14 deletions
diff --git a/src/syscall/asm_windows.s b/src/syscall/asm_windows.s deleted file mode 100644 index abb6641a2..000000000 --- a/src/syscall/asm_windows.s +++ /dev/null @@ -1,13 +0,0 @@ -// Copyright 2009 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. - -// -// System calls for Windows are implemented in ../runtime/syscall_windows.goc -// - -#include "textflag.h" - -// func compileCallback(fn interface{}, cleanstack bool) uintptr -TEXT ·compileCallback(SB),NOSPLIT,$0 - JMP runtime·compileCallback(SB) diff --git a/src/syscall/dll_windows.go b/src/syscall/dll_windows.go index c2394682d..18663b486 100644 --- a/src/syscall/dll_windows.go +++ b/src/syscall/dll_windows.go @@ -19,7 +19,7 @@ type DLLError struct { func (e *DLLError) Error() string { return e.Msg } -// Implemented in ../runtime/syscall_windows.goc. +// Implemented in ../runtime/syscall_windows.go. func Syscall(trap, nargs, a1, a2, a3 uintptr) (r1, r2 uintptr, err Errno) func Syscall6(trap, nargs, a1, a2, a3, a4, a5, a6 uintptr) (r1, r2 uintptr, err Errno) func Syscall9(trap, nargs, a1, a2, a3, a4, a5, a6, a7, a8, a9 uintptr) (r1, r2 uintptr, err Errno) |