golang.org/x/sys@v0.20.1-0.20240517151509-673e0f94c16d/cpu/cpu_zos_s390x.go (about)

     1  // Copyright 2020 The Go Authors. All rights reserved.
     2  // Use of this source code is governed by a BSD-style
     3  // license that can be found in the LICENSE file.
     4  
     5  package cpu
     6  
     7  func initS390Xbase() {
     8  	// get the facilities list
     9  	facilities := stfle()
    10  
    11  	// mandatory
    12  	S390X.HasZARCH = facilities.Has(zarch)
    13  	S390X.HasSTFLE = facilities.Has(stflef)
    14  	S390X.HasLDISP = facilities.Has(ldisp)
    15  	S390X.HasEIMM = facilities.Has(eimm)
    16  
    17  	// optional
    18  	S390X.HasETF3EH = facilities.Has(etf3eh)
    19  	S390X.HasDFP = facilities.Has(dfp)
    20  	S390X.HasMSA = facilities.Has(msa)
    21  	S390X.HasVX = facilities.Has(vx)
    22  	if S390X.HasVX {
    23  		S390X.HasVXE = facilities.Has(vxe)
    24  	}
    25  }