]> Cypherpunks repositories - gostls13.git/commit
runtime: fix syscall.NewCallback to return all bits for uintptr values
authorAlex Brainman <alex.brainman@gmail.com>
Fri, 25 Jan 2019 07:56:22 +0000 (18:56 +1100)
committerEmmanuel Odeke <emm.odeke@gmail.com>
Tue, 26 Feb 2019 20:22:39 +0000 (20:22 +0000)
commit5cf4e442a5dc1f4a1d6f3fd04b1083bc192e648e
treeb3359d1f13c559facf644f2e3e1b0595b440b221
parentc97e57657643de69bf1dc58f3ffde75d31eda0c8
runtime: fix syscall.NewCallback to return all bits for uintptr values

syscall.NewCallback mistakenly used MOVL even for windows/amd64,
which only returned the lower 32 bits regardless of the architecture.
This was due to a copy and paste after porting from windows/386.
The code now uses MOVQ, which will return all the available bits.

Also adjust TestReturnAfterStackGrowInCallback to ensure we never
regress.

Fixes #29331

Change-Id: I4f5c8021c33f234c2bb7baa9ef7a6b4870172509
Reviewed-on: https://go-review.googlesource.com/c/159579
Run-TryBot: Emmanuel Odeke <emm.odeke@gmail.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Emmanuel Odeke <emm.odeke@gmail.com>
Reviewed-by: Keith Randall <khr@golang.org>
src/runtime/sys_windows_amd64.s
src/runtime/syscall_windows_test.go