| // Copyright 2020 The Go Authors. All rights reserved. | |
| // Use of this source code is governed by a BSD-style | |
| // license that can be found in the LICENSE file. | |
| package cpu | |
| func initS390Xbase() { | |
| // get the facilities list | |
| facilities := stfle() | |
| // mandatory | |
| S390X.HasZARCH = facilities.Has(zarch) | |
| S390X.HasSTFLE = facilities.Has(stflef) | |
| S390X.HasLDISP = facilities.Has(ldisp) | |
| S390X.HasEIMM = facilities.Has(eimm) | |
| // optional | |
| S390X.HasETF3EH = facilities.Has(etf3eh) | |
| S390X.HasDFP = facilities.Has(dfp) | |
| S390X.HasMSA = facilities.Has(msa) | |
| S390X.HasVX = facilities.Has(vx) | |
| if S390X.HasVX { | |
| S390X.HasVXE = facilities.Has(vxe) | |
| } | |
| } |