summaryrefslogtreecommitdiff
path: root/src/cmd/dist
diff options
context:
space:
mode:
authorAram H?v?rneanu <aram@mgk.ro>2014-01-17 17:58:10 +1300
committerAram H?v?rneanu <aram@mgk.ro>2014-01-17 17:58:10 +1300
commit3f4dc43bb9de668a5eec1d86450eb689dde5b2e6 (patch)
tree177ea827c226d4851ec22837bdc1136b03e4bff8 /src/cmd/dist
parent0bb619d2ffe25c4995c339f1d5aa346e13d7878d (diff)
downloadgo-3f4dc43bb9de668a5eec1d86450eb689dde5b2e6.tar.gz
runtime: add support for GOOS=solaris
R=alex.brainman, dave, jsing, gobot, rsc CC=golang-codereviews https://codereview.appspot.com/35990043 Committer: Joel Sing <jsing@google.com>
Diffstat (limited to 'src/cmd/dist')
-rw-r--r--src/cmd/dist/buildruntime.c11
1 files changed, 8 insertions, 3 deletions
diff --git a/src/cmd/dist/buildruntime.c b/src/cmd/dist/buildruntime.c
index e6e309d92..1babddaad 100644
--- a/src/cmd/dist/buildruntime.c
+++ b/src/cmd/dist/buildruntime.c
@@ -178,7 +178,7 @@ static struct {
"#define g(r) 0(GS)\n"
"#define m(r) 4(GS)\n"
},
-
+
{"amd64", "windows",
"#define get_tls(r) MOVQ 0x28(GS), r\n"
"#define g(r) 0(r)\n"
@@ -190,6 +190,11 @@ static struct {
"#define m(r) 8(GS)\n"
"#define procid(r) 16(GS)\n"
},
+ {"amd64", "solaris",
+ "#define get_tls(r) MOVQ 0(FS), r\n"
+ "#define g(r) -16(r)(FS*1)\n"
+ "#define m(r) -8(r)(FS*1)\n"
+ },
// The TLS accessors here are defined here to use initial exec model.
// If the linker is not outputting a shared library, it will reduce
// the TLS accessors to the local exec model, effectively removing
@@ -284,8 +289,8 @@ ok:
aggr = "p";
else if(streq(fields.p[1], "Gobuf"))
aggr = "gobuf";
- else if(streq(fields.p[1], "WinCall"))
- aggr = "wincall";
+ else if(streq(fields.p[1], "LibCall"))
+ aggr = "libcall";
else if(streq(fields.p[1], "WinCallbackContext"))
aggr = "cbctxt";
else if(streq(fields.p[1], "SEH"))