diff options
author | Matthew Dempsky <mdempsky@google.com> | 2015-10-21 12:48:53 -0700 |
---|---|---|
committer | Matthew Dempsky <mdempsky@google.com> | 2015-10-22 00:04:52 +0000 |
commit | 58e3ae2fae7dcb22a67ba802c250ba0abf894b1d (patch) | |
tree | 457f97a4fc07daf28cf4ede90ffb75c8abd5e10b /src/runtime/sys_solaris_amd64.s | |
parent | 029c760c7be0d11563ac69fbc0ca5fd98a5cbc2b (diff) | |
download | go-58e3ae2fae7dcb22a67ba802c250ba0abf894b1d.tar.gz go-58e3ae2fae7dcb22a67ba802c250ba0abf894b1d.zip |
runtime: split plan9 and solaris's m fields into new embedded mOS type
Reduces the size of m by ~8% on linux/amd64 (1040 bytes -> 960 bytes).
There are also windows-specific fields, but they're currently
referenced in OS-independent source files (but only when
GOOS=="windows").
Change-Id: I13e1471ff585ccced1271f74209f8ed6df14c202
Reviewed-on: https://go-review.googlesource.com/16173
Run-TryBot: Matthew Dempsky <mdempsky@google.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Ian Lance Taylor <iant@golang.org>
Diffstat (limited to 'src/runtime/sys_solaris_amd64.s')
-rw-r--r-- | src/runtime/sys_solaris_amd64.s | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/src/runtime/sys_solaris_amd64.s b/src/runtime/sys_solaris_amd64.s index e4315645fe..978c9ffeb4 100644 --- a/src/runtime/sys_solaris_amd64.s +++ b/src/runtime/sys_solaris_amd64.s @@ -26,7 +26,7 @@ TEXT runtime·miniterrno(SB),NOSPLIT,$0 get_tls(CX) MOVQ g(CX), BX MOVQ g_m(BX), BX - MOVQ AX, m_perrno(BX) + MOVQ AX, (m_mOS+mOS_perrno)(BX) RET // int64 runtime·nanotime1(void); @@ -81,7 +81,7 @@ TEXT runtime·asmsysvicall6(SB),NOSPLIT,$0 get_tls(CX) MOVQ g(CX), BX MOVQ g_m(BX), BX - MOVQ m_perrno(BX), DX + MOVQ (m_mOS+mOS_perrno)(BX), DX CMPQ DX, $0 JEQ skiperrno1 MOVL $0, 0(DX) @@ -109,7 +109,7 @@ skipargs: get_tls(CX) MOVQ g(CX), BX MOVQ g_m(BX), BX - MOVQ m_perrno(BX), AX + MOVQ (m_mOS+mOS_perrno)(BX), AX CMPQ AX, $0 JEQ skiperrno2 MOVL 0(AX), AX @@ -196,7 +196,7 @@ allgood: MOVQ R10, 176(SP) // save m->scratch - LEAQ m_scratch(BP), R11 + LEAQ (m_mOS+mOS_scratch)(BP), R11 MOVQ 0(R11), R10 MOVQ R10, 112(SP) MOVQ 8(R11), R10 @@ -211,7 +211,7 @@ allgood: MOVQ R10, 152(SP) // save errno, it might be EINTR; stuff we do here might reset it. - MOVQ m_perrno(BP), R10 + MOVQ (m_mOS+mOS_perrno)(BP), R10 MOVL 0(R10), R10 MOVQ R10, 160(SP) @@ -244,7 +244,7 @@ allgood: MOVQ R10, libcall_r2(R11) // restore scratch - LEAQ m_scratch(BP), R11 + LEAQ (m_mOS+mOS_scratch)(BP), R11 MOVQ 112(SP), R10 MOVQ R10, 0(R11) MOVQ 120(SP), R10 @@ -259,7 +259,7 @@ allgood: MOVQ R10, 40(R11) // restore errno - MOVQ m_perrno(BP), R11 + MOVQ (m_mOS+mOS_perrno)(BP), R11 MOVQ 160(SP), R10 MOVL R10, 0(R11) |