1*2c2f96dcSApple OSS Distributions #include <spawn.h> 2*2c2f96dcSApple OSS Distributions /* 3*2c2f96dcSApple OSS Distributions * Returns the subcpu type for the architecture for which the 4*2c2f96dcSApple OSS Distributions * binary was compiled. 5*2c2f96dcSApple OSS Distributions */ 6*2c2f96dcSApple OSS Distributions int main(void)7*2c2f96dcSApple OSS Distributionsmain(void) 8*2c2f96dcSApple OSS Distributions { 9*2c2f96dcSApple OSS Distributions #if defined(__x86_64__) 10*2c2f96dcSApple OSS Distributions return CPU_SUBTYPE_X86_64_ALL; 11*2c2f96dcSApple OSS Distributions #elif __arm64e__ 12*2c2f96dcSApple OSS Distributions return CPU_SUBTYPE_ARM64E; 13*2c2f96dcSApple OSS Distributions #elif defined(__arm64__) && defined(__LP64__) 14*2c2f96dcSApple OSS Distributions return CPU_SUBTYPE_ARM64_ALL; 15*2c2f96dcSApple OSS Distributions #elif defined(__arm64__) 16*2c2f96dcSApple OSS Distributions return CPU_SUBTYPE_ARM64_32_ALL; 17*2c2f96dcSApple OSS Distributions #else 18*2c2f96dcSApple OSS Distributions #error unknown architecture 19*2c2f96dcSApple OSS Distributions #endif 20*2c2f96dcSApple OSS Distributions } 21