aboutsummaryrefslogtreecommitdiff
path: root/src/runtime/sys_windows_amd64.s
diff options
context:
space:
mode:
authorRichard Wilkes <wilkes@me.com>2020-02-24 23:46:00 +0000
committerAlex Brainman <alex.brainman@gmail.com>2020-02-25 08:36:15 +0000
commit450d0b2f30e820f402a638799de0b886c1da8dbe (patch)
treef1365fc41a571eda5cb78b149f7818193edbd665 /src/runtime/sys_windows_amd64.s
parent0d6b317ee6f232191eadee7ec8c1d4fe98458752 (diff)
downloadgo-450d0b2f30e820f402a638799de0b886c1da8dbe.tar.xz
runtime: allow float syscall return values on windows amd64
RELNOTE=yes Fixes #37273 Change-Id: Iedb7eab185dfeccb1b26902ef36411d2c53ea3e0 GitHub-Last-Rev: bbe30ba45d4a1bd53757b5824ad28024d5e2b179 GitHub-Pull-Request: golang/go#37380 Reviewed-on: https://go-review.googlesource.com/c/go/+/220578 Run-TryBot: Alex Brainman <alex.brainman@gmail.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Alex Brainman <alex.brainman@gmail.com>
Diffstat (limited to 'src/runtime/sys_windows_amd64.s')
-rw-r--r--src/runtime/sys_windows_amd64.s4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/runtime/sys_windows_amd64.s b/src/runtime/sys_windows_amd64.s
index d2552e87fa..6c8eecd4e7 100644
--- a/src/runtime/sys_windows_amd64.s
+++ b/src/runtime/sys_windows_amd64.s
@@ -62,6 +62,10 @@ loadregs:
// Return result.
POPQ CX
MOVQ AX, libcall_r1(CX)
+ // Floating point return values are returned in XMM0. Setting r2 to this
+ // value in case this call returned a floating point value. For details,
+ // see https://docs.microsoft.com/en-us/cpp/build/x64-calling-convention
+ MOVQ X0, libcall_r2(CX)
// GetLastError().
MOVQ 0x30(GS), DI