]> git.saurik.com Git - apple/xnu.git/blobdiff - osfmk/mach/machine.h
xnu-7195.101.1.tar.gz
[apple/xnu.git] / osfmk / mach / machine.h
index 654bfc30dbde79c96db74f23525b3d75d223ca0c..8c124041c9838dcb003b10c77a7e489d19ff1093 100644 (file)
@@ -162,6 +162,9 @@ __END_DECLS
 #define CPU_TYPE_POWERPC                ((cpu_type_t) 18)
 #define CPU_TYPE_POWERPC64              (CPU_TYPE_POWERPC | CPU_ARCH_ABI64)
 /* skip                                ((cpu_type_t) 19)       */
+/* skip                                ((cpu_type_t) 20 */
+/* skip                                ((cpu_type_t) 21 */
+/* skip                                ((cpu_type_t) 22 */
 
 /*
  *     Machine subtypes (these are defined here, instead of in a machine
@@ -174,7 +177,14 @@ __END_DECLS
  */
 #define CPU_SUBTYPE_MASK        0xff000000      /* mask for feature flags */
 #define CPU_SUBTYPE_LIB64       0x80000000      /* 64 bit libraries */
+#define CPU_SUBTYPE_PTRAUTH_ABI 0x80000000      /* pointer authentication with versioned ABI */
 
+/*
+ *      When selecting a slice, ANY will pick the slice with the best
+ *      grading for the selected cpu_type_t, unlike the "ALL" subtypes,
+ *      which are the slices that can run on any hardware for that cpu type.
+ */
+#define CPU_SUBTYPE_ANY         ((cpu_subtype_t) -1)
 
 /*
  *     Object files that are hand-crafted to run on any
@@ -375,6 +385,9 @@ __END_DECLS
 /* CPU subtype feature flags for ptrauth on arm64e platforms */
 #define CPU_SUBTYPE_ARM64_PTR_AUTH_MASK 0x0f000000
 #define CPU_SUBTYPE_ARM64_PTR_AUTH_VERSION(x) (((x) & CPU_SUBTYPE_ARM64_PTR_AUTH_MASK) >> 24)
+#ifdef PRIVATE
+#define CPU_SUBTYPE_ARM64_PTR_AUTH_CURRENT_VERSION 0
+#endif /* PRIVATE */
 
 /*
  *  ARM64_32 subtypes
@@ -409,6 +422,7 @@ __END_DECLS
 #define CPUFAMILY_INTEL_BROADWELL       0x582ed09c
 #define CPUFAMILY_INTEL_SKYLAKE         0x37fc219f
 #define CPUFAMILY_INTEL_KABYLAKE        0x0f817246
+#define CPUFAMILY_INTEL_ICELAKE         0x38435547
 #define CPUFAMILY_ARM_9                 0xe73283ae
 #define CPUFAMILY_ARM_11                0x8ff620d8
 #define CPUFAMILY_ARM_XSCALE            0x53b005f5
@@ -423,6 +437,19 @@ __END_DECLS
 #define CPUFAMILY_ARM_HURRICANE         0x67ceee93
 #define CPUFAMILY_ARM_MONSOON_MISTRAL   0xe81e7ef6
 #define CPUFAMILY_ARM_VORTEX_TEMPEST    0x07d34b9f
+#define CPUFAMILY_ARM_LIGHTNING_THUNDER 0x462504d2
+#ifndef RC_HIDE_XNU_FIRESTORM
+#define CPUFAMILY_ARM_FIRESTORM_ICESTORM 0x1b588bb3
+#endif /* !RC_HIDE_XNU_FIRESTORM */
+
+#define CPUSUBFAMILY_UNKNOWN            0
+#define CPUSUBFAMILY_ARM_HP             1
+#define CPUSUBFAMILY_ARM_HG             2
+#define CPUSUBFAMILY_ARM_M              3
+#ifndef RC_HIDE_XNU_FIRESTORM
+#define CPUSUBFAMILY_ARM_HS             4
+#define CPUSUBFAMILY_ARM_HC_HD          5
+#endif /* !RC_HIDE_XNU_FIRESTORM */
 
 /* The following synonyms are deprecated: */
 #define CPUFAMILY_INTEL_6_23    CPUFAMILY_INTEL_PENRYN