On Fri, Feb 15, 2019 at 08:59:29PM +0100, Matthias Klose wrote:
> On 15.02.19 15:52, Ian Lance Taylor wrote:
> > This patch by Robin Dapp adds S/390 support to the internal/cpu
> > package. This partially addresses PR 89123. I bootstrapped it on
> > x86_64-pc-linux-gnu, which means little. Committed to mainline.
>
> fails in the -m31 multilib variant with
Indeed. Given that there is just
libgo/go/internal/cpu/cpu_s390x.go
libgo/go/internal/cpu/cpu_s390x_test.go
(note, no s390), I think the easiest fix is:
--- libgo/go/internal/cpu/cpu_gccgo.c.jj 2019-02-16 07:57:27.882179972
+0100
+++ libgo/go/internal/cpu/cpu_gccgo.c 2019-02-16 08:36:37.241900882 +0100
@@ -71,7 +71,7 @@ struct xgetbv_ret xgetbv(void) {
#endif /* defined(__i386__) || defined(__x86_64__) */
-#ifdef __s390__
+#ifdef __s390x__
struct facilityList {
uint64_t bits[4];
@@ -184,4 +184,4 @@ struct queryResult klmdQuery() {
return ret;
}
-#endif /* defined(__s390__) */
+#endif /* defined(__s390x__) */
If cpu_s390.go is ever added, this can be changed again and there can be say
#ifdef __s390x__
#define LHI "lghi"
#else
#define LHI "lhi"
#endif
and replace "lghi ... in the inline asm with LHI "...
Jakub