cpu_gccgo_x86.mx raw

   1  // Copyright 2018 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  //go:build (386 || amd64 || amd64p32) && gccgo
   6  
   7  package cpu
   8  
   9  //extern gccgoGetCpuidCount
  10  func gccgoGetCpuidCount(eaxArg, ecxArg uint32, eax, ebx, ecx, edx *uint32)
  11  
  12  func cpuid(eaxArg, ecxArg uint32) (eax, ebx, ecx, edx uint32) {
  13  	var a, b, c, d uint32
  14  	gccgoGetCpuidCount(eaxArg, ecxArg, &a, &b, &c, &d)
  15  	return a, b, c, d
  16  }
  17  
  18  //extern gccgoXgetbv
  19  func gccgoXgetbv(eax, edx *uint32)
  20  
  21  func xgetbv() (eax, edx uint32) {
  22  	var a, d uint32
  23  	gccgoXgetbv(&a, &d)
  24  	return a, d
  25  }
  26