cmd/go: allow buildmode c-archive for gccgo on ppc64

In buildmodeinit, the c-archive buildmode is flagged as invalid
on linux/ppc64 for gccgo when it should be valid. This happens
because the check against the gccgo flag is done after the checks
for valid GOOS/GOARCH pairs instead of before as is done for all
other buildmode cases in this switch. This corrects the problem and
allows several of the gccgo gotools testcases to pass on linux/ppc64.

Updates #29046

Change-Id: I36f9f72fd7a6cb8c69baa216c83d38a26f1f033b
Reviewed-by: Ian Lance Taylor <>
1 file changed