]> Cypherpunks repositories - gostls13.git/commitdiff
runtime: fix sigset type for ppc64 big-endian GNU/Linux
authorIan Lance Taylor <iant@golang.org>
Thu, 6 Oct 2016 22:14:58 +0000 (15:14 -0700)
committerIan Lance Taylor <iant@golang.org>
Thu, 6 Oct 2016 22:24:40 +0000 (22:24 +0000)
On 64-bit big-endian GNU/Linux machines we need to treat sigset as a
single uint64, not as a pair of uint32 values. This fix was already made
for s390x, but not for ppc64 (which is big-endian--the little endian
version is known as ppc64le). So copy os_linux_390.x to
os_linux_be64.go, and use build constraints as needed.

Fixes #17361

Change-Id: Ia0eb18221a8f5056bf17675fcfeb010407a13fb0
Reviewed-on: https://go-review.googlesource.com/30602
Run-TryBot: Ian Lance Taylor <iant@golang.org>
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
src/runtime/os_linux_be64.go [moved from src/runtime/os_linux_s390x.go with 89% similarity]
src/runtime/os_linux_generic.go

similarity index 89%
rename from src/runtime/os_linux_s390x.go
rename to src/runtime/os_linux_be64.go
index bdda2a3a6e981574dca36388ad68946ac79bef2a..e66dcac2ad4396cfae179e7c4b862f5283320dab 100644 (file)
@@ -2,6 +2,10 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
+// The standard GNU/Linux sigset type on big-endian 64-bit machines.
+
+// +build ppc64 s390x
+
 package runtime
 
 const (
index 94e5ed996f302b78eec0ef079cfdcdae8cc6a780..43d0093c3199c58fa05745860835110fc71b98e3 100644 (file)
@@ -5,6 +5,7 @@
 // +build !mips64
 // +build !mips64le
 // +build !s390x
+// +build !ppc64
 // +build linux
 
 package runtime