runtime: minor test cleanup

R=golang-dev, khr, rsc
CC=golang-dev
https://codereview.appspot.com/11280043
CONTRIBUTORS: add David Presotto (Google CLA)

R=golang-dev, r
CC=golang-dev
https://codereview.appspot.com/11299043
net: add SetKeepAlivePeriod

Sets both the duration from the last data packet to the first
keep alive packet and the duration between keep alive packets to be
the passed duration.

I've tested the function on both Darwin (10.8.4) and 4.2 Linux.
I've compiled (make.bash) for all the OS's and tested (all.bash)
on Darwin and Linux.

R=golang-dev, dave, rsc, dvyukov, presotto+facebook, nick
CC=golang-dev, veyron-team
https://codereview.appspot.com/11130044

Committer: Russ Cox <rsc@golang.org>
cmd/gc: tweak interface satisfaction error message

"M requires pointer receiver" can be misinterpreted to
mean that method M should have a pointer receiver but
does not. In fact the message means "M has a pointer
receiver" (and you don't have a pointer).

Fixes issue 5891.

R=ken2
CC=golang-dev
https://codereview.appspot.com/11313043
runtime: switch to os stack in windows osyield and usleep

Fixes issue 5831

R=golang-dev, rsc
CC=golang-dev
https://codereview.appspot.com/11266043
cmd/gc: fix race detector instrumentation of type switches.

A type switch on a value with map index expressions,
could get a spurious instrumentation from a OTYPESW node.
These nodes do not need instrumentation because after
walk the type switch has been turned into a sequence
of ifs.

Fixes issue 5890.

R=golang-dev, dvyukov
CC=golang-dev
https://codereview.appspot.com/11308043
cmd/gc: complex types don't contain pointers

R=golang-dev, r
CC=golang-dev
https://codereview.appspot.com/11334043

Committer: Rob Pike <r@golang.org>
cmd/gc: fix incorrect error when using f(g()) form on ... args

Fixes issue 5358.

R=golang-dev, rsc
CC=golang-dev
https://codereview.appspot.com/11282044
cmd/gc: do not race instrument syscall.forkAndExecInChild
Race instrumentation can allocate, switch stacks, preempt, etc.
All that is not allowed in between fork and exec.
Fixes issue 4840.

R=golang-dev, daniel.morsing, dave
CC=golang-dev
https://codereview.appspot.com/11324044
cmd/ld, runtime: new in-memory symbol table format

Design at http://golang.org/s/go12symtab.

This enables some cleanup of the garbage collector metadata
that will be done in future CLs.

This CL does not move the old symtab and pclntab back into
an unmapped section of the file. That's a bit tricky and will be
done separately.

Fixes issue 4020.

R=golang-dev, dave, cshapiro, iant, r
CC=golang-dev, nigeltao
https://codereview.appspot.com/11085043
net: fix setsockopt for openbsd

s/TCP_KEEPALIVE/SO_KEEPALIVE/ to unbreak build on OpenBSD.

R=golang-dev, iant
CC=golang-dev
https://codereview.appspot.com/11345044

Committer: Ian Lance Taylor <iant@golang.org>
runtime: minor cleanup of hashmap code

R=golang-dev, iant
CC=golang-dev
https://codereview.appspot.com/11357043
test: invert incorrect condition.

R=gri
CC=golang-dev
https://codereview.appspot.com/11359043
cmd/5l, cmd/6l, cmd/8l: accept PCDATA instruction in input

The portable code in cmd/ld already knows how to process it,
we just have to ignore it during code generation.

R=ken2
CC=golang-dev
https://codereview.appspot.com/11363043
cmd/5a, cmd/6a, cmd/8a: parse PCDATA

In cmd/5a, also add support for argument size in TEXT instruction.

R=ken2
CC=golang-dev
https://codereview.appspot.com/11357044
syscall: record argument size for all assembly functions

While we're here, fix Syscall9 on NetBSD and OpenBSD:
it was storing the results into the wrong memory locations.
I guess no one uses that function's results on those systems.

Part of cleaning up stack traces and argument frame information.

R=golang-dev, dvyukov
CC=golang-dev
https://codereview.appspot.com/11355044
runtime: record argument size in assembly functions

I have not done the system call stubs in sys_*.s.
I hope to avoid that, because those do not block, so those
frames will not appear in stack traces during garbage
collection.

R=golang-dev, dvyukov, khr
CC=golang-dev
https://codereview.appspot.com/11360043
cmd/5c, cmd/6c, cmd/8c: record arg size for every call

R=ken2
CC=golang-dev
https://codereview.appspot.com/11364043
cmd/5g, cmd/6g, cmd/8g: insert arg size annotations on runtime calls

If calling a function in package runtime, emit argument size
information around the call in case the call is to a variadic C function.

R=ken2
CC=golang-dev
https://codereview.appspot.com/11371043
CONTRIBUTORS: add Drew Hintz (Google CLA)

R=golang-dev, rsc
CC=golang-dev
https://codereview.appspot.com/11386043