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