diff options
author | Michael Hudson-Doyle <michael.hudson@canonical.com> | 2015-03-04 16:28:45 +1300 |
---|---|---|
committer | Ian Lance Taylor <iant@golang.org> | 2015-03-05 01:23:29 +0000 |
commit | 658a338f78ef5dce4c81527c34fb52be95357ef7 (patch) | |
tree | 76c9bd732f7933488f6ed0a775b0ecb252469f6a /src/runtime/sys_dragonfly_amd64.s | |
parent | 5e49bfec92e04ca9eda715c8d61690ba5b47b9bf (diff) | |
download | go-658a338f78ef5dce4c81527c34fb52be95357ef7.tar.gz go-658a338f78ef5dce4c81527c34fb52be95357ef7.zip |
cmd/internal/ld, runtime: halve tlsoffset on ELF/intel
For OSes that use elf on intel, 2*Ptrsize bytes are reserved for TLS.
But only one pointer (g) has been stored in the TLS for a while now.
So we can set it to just Ptrsize, which happily matches what happens
when externally linking.
Fixes #9913
Change-Id: Ic816369d3a55a8cdcc23be349b1a1791d53f5f81
Reviewed-on: https://go-review.googlesource.com/6584
Run-TryBot: Minux Ma <minux@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Ian Lance Taylor <iant@golang.org>
Diffstat (limited to 'src/runtime/sys_dragonfly_amd64.s')
-rw-r--r-- | src/runtime/sys_dragonfly_amd64.s | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/runtime/sys_dragonfly_amd64.s b/src/runtime/sys_dragonfly_amd64.s index 9b4e057b62..1227196cb7 100644 --- a/src/runtime/sys_dragonfly_amd64.s +++ b/src/runtime/sys_dragonfly_amd64.s @@ -272,7 +272,7 @@ TEXT runtimeĀ·usleep(SB),NOSPLIT,$16 // set tls base to DI TEXT runtimeĀ·settls(SB),NOSPLIT,$16 - ADDQ $16, DI // adjust for ELF: wants to use -16(FS) and -8(FS) for g and m + ADDQ $8, DI // adjust for ELF: wants to use -8(FS) for g MOVQ DI, 0(SP) MOVQ $16, 8(SP) MOVQ $0, DI // arg 1 - which |