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
cmd/go: quote command line arguments in debug output

Debug output from go test -x may contain empty arguments.
This CL quotes arguments if needed. E.g. the output of
go test -x is now
  .../6g -o ./_go_.6 -p testmain -complete -D "" -I . -I $WORK ./_testmain.go
which is easier to grasp.

R=golang-dev, bradfitz, minux.ma, r
CC=golang-dev
https://codereview.appspot.com/8633043

Committer: Rob Pike <r@golang.org>
cmd/go: quote command line arguments in debug output

Debug output from go test -x may contain empty arguments.
This CL quotes arguments if needed. E.g. the output of
go test -x is now
  .../6g -o ./_go_.6 -p testmain -complete -D "" -I . -I $WORK ./_testmain.go
which is easier to grasp.

R=golang-dev, bradfitz, minux.ma, r
CC=golang-dev
https://codereview.appspot.com/8633043

Committer: Rob Pike <r@golang.org>
test: raise the allocation threshold for chan/select2.go failure

Updates issue 5282

R=golang-dev, r
CC=golang-dev
https://codereview.appspot.com/8718045
test: make goprint.go wait longer for go its routine to execute

Update issue 5281

R=golang-dev, r, bradfitz, cshapiro
CC=golang-dev
https://codereview.appspot.com/8631047
testing/iotest: rephrase DataErrReader's description

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

Committer: Rob Pike <r@golang.org>
go/scanner: reject BOMs that are not at the beginning

For compliance with gc. See also issue 5265.
Not Go1.1 critical, but harmless.

R=r
CC=golang-dev
https://codereview.appspot.com/8736043
cmd/gc: disable inlining of method values

They caused internal compiler errors and they're expensive enough that inlining them doesn't make sense.

Fixes issue 5259.

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