test: fix nosplit.go, fixedbugs/issue11656.go and skip two tests for mips64{,le}

Skip fixedbugs/issue10607.go because external linking is not supported
yet.

Skip nilptr3.go because of issue #9058 (same as ppc64).

Change-Id: Ib3dfbd9a03ee4052871cf57c74b3cc5e745e1f80
Reviewed-on: https://go-review.googlesource.com/14461
Reviewed-by: Minux Ma <minux@golang.org>
Reviewed-by: Ian Lance Taylor <iant@golang.org>
Run-TryBot: Minux Ma <minux@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
diff --git a/test/fixedbugs/issue10607.go b/test/fixedbugs/issue10607.go
index bf527d0..a1a65a7 100644
--- a/test/fixedbugs/issue10607.go
+++ b/test/fixedbugs/issue10607.go
@@ -1,4 +1,4 @@
-// +build linux,!ppc64,!ppc64le
+// +build linux,!ppc64,!ppc64le,!mips64,!mips64le
 // run
 
 // Copyright 2015 The Go Authors. All rights reserved.
diff --git a/test/fixedbugs/issue11656.go b/test/fixedbugs/issue11656.go
index bbedb43..565e796 100644
--- a/test/fixedbugs/issue11656.go
+++ b/test/fixedbugs/issue11656.go
@@ -61,6 +61,10 @@
 		binary.BigEndian.PutUint32(ill, 0x7fe00008) // trap
 	case "ppc64le":
 		binary.LittleEndian.PutUint32(ill, 0x7fe00008) // trap
+	case "mips64":
+		binary.BigEndian.PutUint32(ill, 0x00000034) // trap
+	case "mips64le":
+		binary.LittleEndian.PutUint32(ill, 0x00000034) // trap
 	default:
 		// Just leave it as 0 and hope for the best.
 	}
diff --git a/test/nilptr3.go b/test/nilptr3.go
index 607c6fb..6c8aab3 100644
--- a/test/nilptr3.go
+++ b/test/nilptr3.go
@@ -1,7 +1,8 @@
 // errorcheck -0 -d=nil
 // Fails on ppc64x because of incomplete optimization.
 // See issues 9058.
-// +build !ppc64,!ppc64le
+// Same reason for mips64x.
+// +build !ppc64,!ppc64le,!mips64,!mips64le
 
 // Copyright 2013 The Go Authors.  All rights reserved.
 // Use of this source code is governed by a BSD-style
diff --git a/test/nosplit.go b/test/nosplit.go
index e5c2a9f..bc14854 100644
--- a/test/nosplit.go
+++ b/test/nosplit.go
@@ -247,6 +247,9 @@
 		var buf bytes.Buffer
 		ptrSize := 4
 		switch goarch {
+		case "mips64", "mips64le":
+			ptrSize = 8
+			fmt.Fprintf(&buf, "#define CALL JAL\n#define REGISTER (R0)\n")
 		case "ppc64", "ppc64le":
 			ptrSize = 8
 			fmt.Fprintf(&buf, "#define CALL BL\n#define REGISTER (CTR)\n")