cmd/6g: relax constraint on variables that need zeroing.
cmd/6g: relax constraint on variables that need zeroing.

On amd64p32 pointers are 32-bit-aligned and cannot be assumed to
have an offset multiple of widthreg. Instead check that they are
withptr-aligned.

Also change the threshold for region merging to 2*widthreg
instead of 2*widthptr because performance on amd64 and amd64p32
is expected to be the same.

Fixes issue 7712.

LGTM=khr
R=rsc, dave, khr, brad, bradfitz
CC=golang-codereviews
https://codereview.appspot.com/84690044

wesolows/golang-old,wesolows/golang-old,wesolows/golang-old,wesolows/golang,wesolows/golang,wesolows/golang,firebitsbr/golang-old,wesolows/golang,wesolows/golang,wesolows/golang-old,firebitsbr/golang-old,wesolows/golang-old,firebitsbr/golang-old,firebitsbr/golang-old,wesolows/golang,firebitsbr/golang-old,firebitsbr/golang-old,firebitsbr/golang-old,wesolows/golang-old,wesolows/golang,wesolows/golang-old,firebitsbr/golang-old