diff options
author | Devon H. O'Dell <devon.odell@gmail.com> | 2009-11-18 09:11:39 -0800 |
---|---|---|
committer | Devon H. O'Dell <devon.odell@gmail.com> | 2009-11-18 09:11:39 -0800 |
commit | 5ab78dd22eab6cf9431bd49f96998adce0d91b6b (patch) | |
tree | 9d34b165549fa15fe1281afb2a6053c79aeea9af /src | |
parent | 0d15a5437697094f9165b63b933192b36193a2df (diff) | |
download | golang-5ab78dd22eab6cf9431bd49f96998adce0d91b6b.tar.gz |
Add an intptr type to runtime; needed in FreeBSD
In thread.c, we need to cast to whatever the native
size of intptr is on the system, but we only have
uintptr available. They're the same size, but can't
do signed casts without this one :).
R=rsc
CC=golang-dev
http://codereview.appspot.com/156073
Committer: Russ Cox <rsc@golang.org>
Diffstat (limited to 'src')
-rw-r--r-- | src/pkg/runtime/freebsd/thread.c | 2 | ||||
-rw-r--r-- | src/pkg/runtime/runtime.h | 2 |
2 files changed, 3 insertions, 1 deletions
diff --git a/src/pkg/runtime/freebsd/thread.c b/src/pkg/runtime/freebsd/thread.c index a4e1e13e5..5f4402236 100644 --- a/src/pkg/runtime/freebsd/thread.c +++ b/src/pkg/runtime/freebsd/thread.c @@ -141,7 +141,7 @@ newosproc(M *m, G *g, void *stk, void (*fn)(void)) param.arg = m; param.stack_base = stk; param.stack_size = g->stackbase - g->stackguard + 256; - param.child_tid = (int32*)&m->procid; + param.child_tid = (intptr*)&m->procid; param.parent_tid = nil; param.tls_base = (int8*)&m->tls[0]; param.tls_size = sizeof m->tls; diff --git a/src/pkg/runtime/runtime.h b/src/pkg/runtime/runtime.h index 83b47b7a3..df1c45ae1 100644 --- a/src/pkg/runtime/runtime.h +++ b/src/pkg/runtime/runtime.h @@ -18,8 +18,10 @@ typedef double float64; #ifdef _64BIT typedef uint64 uintptr; +typedef int64 intptr; #else typedef uint32 uintptr; +typedef int32 intptr; #endif /* |