1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67
|
package proc
import (
"fmt"
)
const (
_IMAGE_FILE_MACHINE_UNKNOWN = 0x0
_IMAGE_FILE_MACHINE_AM33 = 0x1d3
_IMAGE_FILE_MACHINE_AMD64 = 0x8664
_IMAGE_FILE_MACHINE_ARM = 0x1c0
_IMAGE_FILE_MACHINE_ARMNT = 0x1c4
_IMAGE_FILE_MACHINE_ARM64 = 0xaa64
_IMAGE_FILE_MACHINE_EBC = 0xebc
_IMAGE_FILE_MACHINE_I386 = 0x14c
_IMAGE_FILE_MACHINE_IA64 = 0x200
_IMAGE_FILE_MACHINE_M32R = 0x9041
_IMAGE_FILE_MACHINE_MIPS16 = 0x266
_IMAGE_FILE_MACHINE_MIPSFPU = 0x366
_IMAGE_FILE_MACHINE_MIPSFPU16 = 0x466
_IMAGE_FILE_MACHINE_POWERPC = 0x1f0
_IMAGE_FILE_MACHINE_POWERPCFP = 0x1f1
_IMAGE_FILE_MACHINE_R4000 = 0x166
_IMAGE_FILE_MACHINE_RISCV64 = 0x5064
_IMAGE_FILE_MACHINE_SH3 = 0x1a2
_IMAGE_FILE_MACHINE_SH3DSP = 0x1a3
_IMAGE_FILE_MACHINE_SH4 = 0x1a6
_IMAGE_FILE_MACHINE_SH5 = 0x1a8
_IMAGE_FILE_MACHINE_THUMB = 0x1c2
_IMAGE_FILE_MACHINE_WCEMIPSV2 = 0x169
)
type _PEMachine uint16
// PEMachineString map pe machine to name, See $GOROOT/src/debug/pe/pe.go for detail
var _PEMachineString = map[_PEMachine]string{
_IMAGE_FILE_MACHINE_UNKNOWN: "unknown",
_IMAGE_FILE_MACHINE_AM33: "am33",
_IMAGE_FILE_MACHINE_AMD64: "amd64",
_IMAGE_FILE_MACHINE_ARM: "arm",
_IMAGE_FILE_MACHINE_ARMNT: "armnt",
_IMAGE_FILE_MACHINE_ARM64: "arm64",
_IMAGE_FILE_MACHINE_EBC: "ebc",
_IMAGE_FILE_MACHINE_I386: "i386",
_IMAGE_FILE_MACHINE_IA64: "ia64",
_IMAGE_FILE_MACHINE_M32R: "m32r",
_IMAGE_FILE_MACHINE_MIPS16: "mips16",
_IMAGE_FILE_MACHINE_MIPSFPU: "mipsfpu",
_IMAGE_FILE_MACHINE_MIPSFPU16: "mipsfpu16",
_IMAGE_FILE_MACHINE_POWERPC: "powerpc",
_IMAGE_FILE_MACHINE_POWERPCFP: "powerpcfp",
_IMAGE_FILE_MACHINE_R4000: "r4000",
_IMAGE_FILE_MACHINE_SH3: "sh3",
_IMAGE_FILE_MACHINE_SH3DSP: "sh3dsp",
_IMAGE_FILE_MACHINE_SH4: "sh4",
_IMAGE_FILE_MACHINE_SH5: "sh5",
_IMAGE_FILE_MACHINE_THUMB: "thumb",
_IMAGE_FILE_MACHINE_WCEMIPSV2: "wcemipsv2",
}
func (m _PEMachine) String() string {
str, ok := _PEMachineString[m]
if ok {
return str
}
return fmt.Sprintf("unknown image file machine code %d\n", uint16(m))
}
|