github.com/iDigitalFlame/xmt@v0.5.4/device/arch/arch.go (about)

     1  // Copyright (C) 2020 - 2023 iDigitalFlame
     2  //
     3  // This program is free software: you can redistribute it and/or modify
     4  // it under the terms of the GNU General Public License as published by
     5  // the Free Software Foundation, either version 3 of the License, or
     6  // any later version.
     7  //
     8  // This program is distributed in the hope that it will be useful,
     9  // but WITHOUT ANY WARRANTY; without even the implied warranty of
    10  // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    11  // GNU General Public License for more details.
    12  //
    13  // You should have received a copy of the GNU General Public License
    14  // along with this program.  If not, see <https://www.gnu.org/licenses/>.
    15  //
    16  
    17  // Package arch contains platform architecture constants and a specific type
    18  // that correlates to the current system architecture.
    19  package arch
    20  
    21  const (
    22  	// X64 represents the 64-bit chipset family.
    23  	X64 Architecture = 0x0
    24  	// X86 represents the 32-bit chipset family.
    25  	X86 Architecture = 0x1
    26  	// ARM represents the ARM chipset family.
    27  	ARM Architecture = 0x2
    28  	// PowerPC represents the PowerPC chipset family.
    29  	PowerPC Architecture = 0x3
    30  	// Mips represents the MIPS chipset family.
    31  	Mips Architecture = 0x4
    32  	// Risc represents the RiscV chipset family.
    33  	Risc Architecture = 0x5
    34  	// ARM64 represents the ARM64 chipset family.
    35  	ARM64 Architecture = 0x6
    36  	// WASM represents the WASM/JavaScript software family.
    37  	WASM Architecture = 0x7
    38  	// Loong64 represents the LoongArch64 chipset family.
    39  	Loong64 Architecture = 0x8
    40  	// X86OnX64 represents the 64-bit chipset family, but the executable
    41  	// is compiled for X86.
    42  	X86OnX64 Architecture = 0x9
    43  	// ARMOnARM64 represents the ARM64 chipset family, but the executable
    44  	// is compiled for ARM.
    45  	ARMOnARM64 Architecture = 0xA
    46  	// Unknown represents an unknown chipset family.
    47  	Unknown Architecture = 0xF
    48  )
    49  
    50  // Architecture is a number representation of the chipset architecture.
    51  type Architecture uint8