-
Notifications
You must be signed in to change notification settings - Fork 11.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[clang][osx][arm64] Missing Apple Clang preprocessor definitions #73313
Comments
@llvm/issue-subscribers-backend-aarch64 Author: Julien Jerphanion (jjerphan)
### Problem
Similarly to GCC's toolchain, Apple Clang's has extra predefinitions which aren't all defined by Clang. For instance the following are defined by Apple Clang's preprocessor, but is not defined anywhere by Clang:
<details>
</details> <details>
#define __aarch64__ 1
#define __AARCH64_CMODEL_SMALL__ 1
#define __AARCH64EL__ 1
#define __AARCH64_SIMD__ 1
#define __APPLE__ 1
#define __apple_build_version__ 14030022
#define __APPLE_CC__ 6000
#define __arm64 1
#define __arm64__ 1
#define __ARM64_ARCH_8__ 1
#define __ARM_64BIT_STATE 1
#define __ARM_ACLE 200
#define __ARM_ALIGN_MAX_STACK_PWR 4
#define __ARM_ARCH 8
#define __ARM_ARCH_8_3__ 1
#define __ARM_ARCH_8_4__ 1
#define __ARM_ARCH_8_5__ 1
#define __ARM_ARCH_ISA_A64 1
#define __ARM_ARCH_PROFILE 'A'
#define __ARM_FEATURE_AES 1
#define __ARM_FEATURE_ATOMICS 1
#define __ARM_FEATURE_CLZ 1
#define __ARM_FEATURE_COMPLEX 1
#define __ARM_FEATURE_CRC32 1
#define __ARM_FEATURE_CRYPTO 1
#define __ARM_FEATURE_DIRECTED_ROUNDING 1
#define __ARM_FEATURE_DIV 1
#define __ARM_FEATURE_DOTPROD 1
#define __ARM_FEATURE_FMA 1
#define __ARM_FEATURE_FP16_FML 1
#define __ARM_FEATURE_FP16_SCALAR_ARITHMETIC 1
#define __ARM_FEATURE_FP16_VECTOR_ARITHMETIC 1
#define __ARM_FEATURE_FRINT 1
#define __ARM_FEATURE_IDIV 1
#define __ARM_FEATURE_JCVT 1
#define __ARM_FEATURE_LDREX 0xF
#define __ARM_FEATURE_NUMERIC_MAXMIN 1
#define __ARM_FEATURE_QRDMX 1
#define __ARM_FEATURE_SHA2 1
#define __ARM_FEATURE_SHA3 1
#define __ARM_FEATURE_SHA512 1
#define __ARM_FEATURE_SM3 1
#define __ARM_FEATURE_SM4 1
#define __ARM_FEATURE_UNALIGNED 1
#define __ARM_FP 0xE
#define __ARM_FP16_ARGS 1
#define __ARM_FP16_FORMAT_IEEE 1
#define __ARM_NEON 1
#define __ARM_NEON__ 1
#define __ARM_NEON_FP 0xE
#define __ARM_PCS_AAPCS64 1
#define __ARM_SIZEOF_MINIMAL_ENUM 4
#define __ARM_SIZEOF_WCHAR_T 4
#define __MACH__ 1
#define __VERSION__ "Apple LLVM 14.0.3 (clang-1403.0.22.14.1)" </details> Proposed solutionDefine recently introduced predefinitions, such as done for
|
@llvm/issue-subscribers-clang-driver Author: Julien Jerphanion (jjerphan)
### Problem
Similarly to GCC's toolchain, Apple Clang's has extra predefinitions which aren't all defined by Clang. For instance the following are defined by Apple Clang's preprocessor, but is not defined anywhere by Clang:
<details>
</details> <details>
#define __aarch64__ 1
#define __AARCH64_CMODEL_SMALL__ 1
#define __AARCH64EL__ 1
#define __AARCH64_SIMD__ 1
#define __APPLE__ 1
#define __apple_build_version__ 14030022
#define __APPLE_CC__ 6000
#define __arm64 1
#define __arm64__ 1
#define __ARM64_ARCH_8__ 1
#define __ARM_64BIT_STATE 1
#define __ARM_ACLE 200
#define __ARM_ALIGN_MAX_STACK_PWR 4
#define __ARM_ARCH 8
#define __ARM_ARCH_8_3__ 1
#define __ARM_ARCH_8_4__ 1
#define __ARM_ARCH_8_5__ 1
#define __ARM_ARCH_ISA_A64 1
#define __ARM_ARCH_PROFILE 'A'
#define __ARM_FEATURE_AES 1
#define __ARM_FEATURE_ATOMICS 1
#define __ARM_FEATURE_CLZ 1
#define __ARM_FEATURE_COMPLEX 1
#define __ARM_FEATURE_CRC32 1
#define __ARM_FEATURE_CRYPTO 1
#define __ARM_FEATURE_DIRECTED_ROUNDING 1
#define __ARM_FEATURE_DIV 1
#define __ARM_FEATURE_DOTPROD 1
#define __ARM_FEATURE_FMA 1
#define __ARM_FEATURE_FP16_FML 1
#define __ARM_FEATURE_FP16_SCALAR_ARITHMETIC 1
#define __ARM_FEATURE_FP16_VECTOR_ARITHMETIC 1
#define __ARM_FEATURE_FRINT 1
#define __ARM_FEATURE_IDIV 1
#define __ARM_FEATURE_JCVT 1
#define __ARM_FEATURE_LDREX 0xF
#define __ARM_FEATURE_NUMERIC_MAXMIN 1
#define __ARM_FEATURE_QRDMX 1
#define __ARM_FEATURE_SHA2 1
#define __ARM_FEATURE_SHA3 1
#define __ARM_FEATURE_SHA512 1
#define __ARM_FEATURE_SM3 1
#define __ARM_FEATURE_SM4 1
#define __ARM_FEATURE_UNALIGNED 1
#define __ARM_FP 0xE
#define __ARM_FP16_ARGS 1
#define __ARM_FP16_FORMAT_IEEE 1
#define __ARM_NEON 1
#define __ARM_NEON__ 1
#define __ARM_NEON_FP 0xE
#define __ARM_PCS_AAPCS64 1
#define __ARM_SIZEOF_MINIMAL_ENUM 4
#define __ARM_SIZEOF_WCHAR_T 4
#define __MACH__ 1
#define __VERSION__ "Apple LLVM 14.0.3 (clang-1403.0.22.14.1)" </details> Proposed solutionDefine recently introduced predefinitions, such as done for
|
Problem
Similarly to GCC's toolchain, Apple Clang's has extra pre-processor definitions which aren't all defined by Clang.
For instance the following are defined by Apple Clang's preprocessor, but is not defined anywhere by Clang:
__ARM_ARCH_8_3__
__ARM_ARCH_8_4__
__ARM_ARCH_8_5__
All Apple Clang pre-processor definitions
Proxy list for Apple Clang specific pre-processor definitions
Proposed solution
Define recently introduced predefinitions, such as done for
__ENVIRONMENT_OS_VERSION_MIN_REQUIRED__
with c8e2dd8.The text was updated successfully, but these errors were encountered: