mirror of
https://github.com/rwinkhart/sys.git
synced 2026-08-27 20:36:31 -04:00
windows: port to ARM64
This also fixes up some spaces->tabs issues and moves build tags from the file contents to the file name. Updates golang/go#36439. Change-Id: Iafa03e26575603a802832e587bb18ebd16fd176b Reviewed-on: https://go-review.googlesource.com/c/sys/+/289449 Trust: Jason A. Donenfeld <Jason@zx2c4.com> Trust: Alex Brainman <alex.brainman@gmail.com> Run-TryBot: Jason A. Donenfeld <Jason@zx2c4.com> TryBot-Result: Go Bot <gobot@golang.org> Reviewed-by: Alex Brainman <alex.brainman@gmail.com> Reviewed-by: Russ Cox <rsc@golang.org>
This commit is contained in:
committed by
Russ Cox
parent
9555bcde0c
commit
beda7e5e15
@@ -2,8 +2,6 @@
|
|||||||
// Use of this source code is governed by a BSD-style
|
// Use of this source code is governed by a BSD-style
|
||||||
// license that can be found in the LICENSE file.
|
// license that can be found in the LICENSE file.
|
||||||
|
|
||||||
// +build windows
|
|
||||||
|
|
||||||
// func servicemain(argc uint32, argv **uint16)
|
// func servicemain(argc uint32, argv **uint16)
|
||||||
TEXT ·servicemain(SB),7,$0
|
TEXT ·servicemain(SB),7,$0
|
||||||
MOVL argc+0(FP), AX
|
MOVL argc+0(FP), AX
|
||||||
@@ -2,8 +2,6 @@
|
|||||||
// Use of this source code is governed by a BSD-style
|
// Use of this source code is governed by a BSD-style
|
||||||
// license that can be found in the LICENSE file.
|
// license that can be found in the LICENSE file.
|
||||||
|
|
||||||
// +build windows
|
|
||||||
|
|
||||||
// func servicemain(argc uint32, argv **uint16)
|
// func servicemain(argc uint32, argv **uint16)
|
||||||
TEXT ·servicemain(SB),7,$0
|
TEXT ·servicemain(SB),7,$0
|
||||||
MOVQ SP, AX
|
MOVQ SP, AX
|
||||||
@@ -2,8 +2,6 @@
|
|||||||
// Use of this source code is governed by a BSD-style
|
// Use of this source code is governed by a BSD-style
|
||||||
// license that can be found in the LICENSE file.
|
// license that can be found in the LICENSE file.
|
||||||
|
|
||||||
// +build windows
|
|
||||||
|
|
||||||
#include "textflag.h"
|
#include "textflag.h"
|
||||||
|
|
||||||
// func servicemain(argc uint32, argv **uint16)
|
// func servicemain(argc uint32, argv **uint16)
|
||||||
@@ -0,0 +1,31 @@
|
|||||||
|
// Copyright 2018 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 "textflag.h"
|
||||||
|
|
||||||
|
// func servicemain(argc uint32, argv **uint16)
|
||||||
|
TEXT ·servicemain(SB),NOSPLIT|NOFRAME,$0
|
||||||
|
MOVD R0, ·sArgc(SB)
|
||||||
|
MOVD R1, ·sArgv(SB)
|
||||||
|
|
||||||
|
MOVD ·sName(SB), R0
|
||||||
|
MOVD ·ctlHandlerExProc(SB), R1
|
||||||
|
MOVD $0, R2
|
||||||
|
MOVD ·cRegisterServiceCtrlHandlerExW(SB), R3
|
||||||
|
BL (R3)
|
||||||
|
CMP $0, R0
|
||||||
|
BEQ exit
|
||||||
|
MOVD R0, ·ssHandle(SB)
|
||||||
|
|
||||||
|
MOVD ·goWaitsH(SB), R0
|
||||||
|
MOVD ·cSetEvent(SB), R1
|
||||||
|
BL (R1)
|
||||||
|
|
||||||
|
MOVD ·cWaitsH(SB), R0
|
||||||
|
MOVD $-1, R1
|
||||||
|
MOVD ·cWaitForSingleObject(SB), R2
|
||||||
|
BL (R2)
|
||||||
|
|
||||||
|
exit:
|
||||||
|
RET
|
||||||
@@ -0,0 +1,34 @@
|
|||||||
|
// Copyright 2011 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.
|
||||||
|
|
||||||
|
package windows
|
||||||
|
|
||||||
|
type WSAData struct {
|
||||||
|
Version uint16
|
||||||
|
HighVersion uint16
|
||||||
|
MaxSockets uint16
|
||||||
|
MaxUdpDg uint16
|
||||||
|
VendorInfo *byte
|
||||||
|
Description [WSADESCRIPTION_LEN + 1]byte
|
||||||
|
SystemStatus [WSASYS_STATUS_LEN + 1]byte
|
||||||
|
}
|
||||||
|
|
||||||
|
type Servent struct {
|
||||||
|
Name *byte
|
||||||
|
Aliases **byte
|
||||||
|
Proto *byte
|
||||||
|
Port uint16
|
||||||
|
}
|
||||||
|
|
||||||
|
type JOBOBJECT_BASIC_LIMIT_INFORMATION struct {
|
||||||
|
PerProcessUserTimeLimit int64
|
||||||
|
PerJobUserTimeLimit int64
|
||||||
|
LimitFlags uint32
|
||||||
|
MinimumWorkingSetSize uintptr
|
||||||
|
MaximumWorkingSetSize uintptr
|
||||||
|
ActiveProcessLimit uint32
|
||||||
|
Affinity uintptr
|
||||||
|
PriorityClass uint32
|
||||||
|
SchedulingClass uint32
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user