misc/dist/darwin: add execute bit to preinstall
Fixes issue 5258.

R=golang-dev, iant, minux.ma
CC=golang-dev
https://codereview.appspot.com/8682043
runtime: use UMTX_OP_WAIT_UINT on FreeBSD

UMTX_OP_WAIT expects that the address points to a uintptr, but
the code in lock_futex.c uses a uint32.  UMTX_OP_WAIT_UINT is
just like UMTX_OP_WAIT, but the address points to a uint32.
This almost certainly makes no difference on a little-endian
system, but since the kernel supports it we should do the
right thing.  And, who knows, maybe it matters.

R=golang-dev, bradfitz, r, ality
CC=golang-dev
https://codereview.appspot.com/8699043
runtime: add a hook to disable precise GC

This will let us ask people to rebuild the Go system without
precise GC, and then rebuild and retest their program, to see
if precise GC is causing whatever problem they are having.

R=golang-dev, r
CC=golang-dev
https://codereview.appspot.com/8700043
cmd/ld: if we fail from an unexpected PE flags value, print it

R=golang-dev, minux.ma, r
CC=golang-dev
https://codereview.appspot.com/8709043
cmd/ld: always do external link for -linkmode=external

There are tests in run.bash for -linkmode=external.

Fixes issue 5238.

R=golang-dev, bradfitz, remyoudompheng, r
CC=golang-dev
https://codereview.appspot.com/8716044