cpu_zos_s390x.go 643 B

12345678910111213141516171819202122232425
  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. package cpu
  5. func initS390Xbase() {
  6. // get the facilities list
  7. facilities := stfle()
  8. // mandatory
  9. S390X.HasZARCH = facilities.Has(zarch)
  10. S390X.HasSTFLE = facilities.Has(stflef)
  11. S390X.HasLDISP = facilities.Has(ldisp)
  12. S390X.HasEIMM = facilities.Has(eimm)
  13. // optional
  14. S390X.HasETF3EH = facilities.Has(etf3eh)
  15. S390X.HasDFP = facilities.Has(dfp)
  16. S390X.HasMSA = facilities.Has(msa)
  17. S390X.HasVX = facilities.Has(vx)
  18. if S390X.HasVX {
  19. S390X.HasVXE = facilities.Has(vxe)
  20. }
  21. }