1 //===-- llvm/Support/MachO.h - The MachO file format ------------*- C++ -*-===//
3 // The LLVM Compiler Infrastructure
5 // This file is distributed under the University of Illinois Open Source
6 // License. See LICENSE.TXT for details.
8 //===----------------------------------------------------------------------===//
10 // This file defines manifest constants for the MachO object file format.
12 //===----------------------------------------------------------------------===//
14 #ifndef LLVM_SUPPORT_MACHO_H
15 #define LLVM_SUPPORT_MACHO_H
17 // NOTE: The enums in this file are intentially named to be different than those
18 // in the headers in /usr/include/mach (on darwin systems) to avoid conflicts
22 // Enums from <mach/machine.h>
24 // Capability bits used in the definition of cpu_type.
25 CPUArchMask = 0xff000000, // Mask for architecture bits
26 CPUArchABI64 = 0x01000000, // 64 bit ABI
28 // Constants for the cputype field.
30 CPUTypeX86_64 = CPUTypeI386 | CPUArchABI64,
34 CPUTypePowerPC64 = CPUTypePowerPC | CPUArchABI64,
37 // Constants for the cpusubtype field.
40 CPUSubType_I386_ALL = 3,
41 CPUSubType_X86_64_ALL = 3,
44 CPUSubType_ARM_ALL = 0,
45 CPUSubType_ARM_V4T = 5,
46 CPUSubType_ARM_V6 = 6,
49 CPUSubType_POWERPC_ALL = 0,
51 CPUSubType_SPARC_ALL = 0
53 } // end namespace MachO
54 } // end namespace llvm