t.Skip("No exec facility on iOS.")
}
case "ppc64":
- t.Skip("External linking not implemented on ppc64 (issue #8912).")
+ if runtime.GOOS == "linux" {
+ t.Skip("External linking not implemented on aix/ppc64 (issue #8912).")
+ }
+ if runtime.GOOS == "aix" {
+ t.Skip("Using shared object isn't yet available on aix/ppc64 (issue #30565)")
+ }
case "mips64le", "mips64":
t.Skip("External linking not implemented on mips64.")
}
t.Skip("No exec facility on iOS.")
}
case "ppc64":
- t.Skip("External linking not implemented on ppc64 (issue #8912).")
+ if runtime.GOOS == "linux" {
+ t.Skip("External linking not implemented on aix/ppc64 (issue #8912).")
+ }
+ if runtime.GOOS == "aix" {
+ t.Skip("Using shared object isn't yet available on aix/ppc64 (issue #30565)")
+ }
case "mips64le", "mips64":
t.Skip("External linking not implemented on mips64.")
}
func (t *tester) extLink() bool {
pair := gohostos + "-" + goarch
switch pair {
- case "android-arm",
+ case "aix-ppc64",
+ "android-arm",
"darwin-386", "darwin-amd64", "darwin-arm", "darwin-arm64",
"dragonfly-amd64",
"freebsd-386", "freebsd-amd64", "freebsd-arm",
if goarch == "arm64" || goarch == "mips64" || goarch == "mips64le" || goarch == "mips" || goarch == "mipsle" {
return false
}
+ if goos == "aix" {
+ // linkmode=internal isn't supported.
+ return false
+ }
return true
}
}
t.addCmd(dt, "misc/cgo/test", t.goTest(), "-ldflags", "-linkmode=external")
t.addCmd(dt, "misc/cgo/test", t.goTest(), "-ldflags", "-linkmode=external -s")
- case "android-arm",
+ case "aix-ppc64",
+ "android-arm",
"dragonfly-amd64",
"freebsd-386", "freebsd-amd64", "freebsd-arm",
"linux-386", "linux-amd64", "linux-arm", "linux-ppc64le", "linux-s390x",
t.addCmd(dt, "misc/cgo/testtls", t.goTest(), "-ldflags", "-linkmode=external")
switch pair {
- case "netbsd-386", "netbsd-amd64":
+ case "aix-ppc64", "netbsd-386", "netbsd-amd64":
// no static linking
case "freebsd-arm":
// -fPIC compiled tls code will use __tls_get_addr instead