[clang] [Preprocessor][test] Test ARM64EC definitions (PR #78916)

2024-01-23 Thread Eli Friedman via cfe-commits

https://github.com/efriedma-quic closed 
https://github.com/llvm/llvm-project/pull/78916
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [Preprocessor][test] Test ARM64EC definitions (PR #78916)

2024-01-23 Thread Billy Laws via cfe-commits

https://github.com/bylaws edited https://github.com/llvm/llvm-project/pull/78916
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [Preprocessor][test] Test ARM64EC definitions (PR #78916)

2024-01-23 Thread Billy Laws via cfe-commits

bylaws wrote:

@efriedma-quic should be fixed

https://github.com/llvm/llvm-project/pull/78916
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [Preprocessor][test] Test ARM64EC definitions (PR #78916)

2024-01-23 Thread Billy Laws via cfe-commits

https://github.com/bylaws updated 
https://github.com/llvm/llvm-project/pull/78916

>From 76e6e6fb01868a73c0c35c1a8a04ac34af2ea088 Mon Sep 17 00:00:00 2001
From: Billy Laws 
Date: Sun, 21 Jan 2024 22:55:44 +
Subject: [PATCH] [Preprocessor][test] Test ARM64EC definitions

---
 clang/test/Preprocessor/init-aarch64.c | 370 +
 1 file changed, 370 insertions(+)

diff --git a/clang/test/Preprocessor/init-aarch64.c 
b/clang/test/Preprocessor/init-aarch64.c
index 94c091a69e8444e..f1f1bbbf66945c2 100644
--- a/clang/test/Preprocessor/init-aarch64.c
+++ b/clang/test/Preprocessor/init-aarch64.c
@@ -728,6 +728,376 @@
 // AARCH64-MSVC: #define __WINT_WIDTH__ 16
 // AARCH64-MSVC: #define __aarch64__ 1
 
+// RUN: %clang_cc1 -E -dM -ffreestanding -triple=arm64ec-windows-msvc < 
/dev/null | FileCheck -match-full-lines -check-prefix ARM64EC-MSVC %s
+
+// ARM64EC-MSVC: #define _INTEGRAL_MAX_BITS 64
+// ARM64EC-MSVC: #define _M_AMD64 100
+// ARM64EC-MSVC: #define _M_ARM64EC 1
+// ARM64EC-MSVC: #define _M_X64 100
+// ARM64EC-MSVC: #define _WIN32 1
+// ARM64EC-MSVC: #define _WIN64 1
+// ARM64EC-MSVC: #define __AARCH64EL__ 1
+// ARM64EC-MSVC: #define __AARCH64_CMODEL_SMALL__ 1
+// ARM64EC-MSVC: #define __ARM_64BIT_STATE 1
+// ARM64EC-MSVC: #define __ARM_ACLE 200
+// ARM64EC-MSVC: #define __ARM_ALIGN_MAX_STACK_PWR 4
+// ARM64EC-MSVC: #define __ARM_ARCH 8
+// ARM64EC-MSVC: #define __ARM_ARCH_ISA_A64 1
+// ARM64EC-MSVC: #define __ARM_ARCH_PROFILE 'A'
+// ARM64EC-MSVC: #define __ARM_FEATURE_CLZ 1
+// ARM64EC-MSVC: #define __ARM_FEATURE_DIRECTED_ROUNDING 1
+// ARM64EC-MSVC: #define __ARM_FEATURE_DIV 1
+// ARM64EC-MSVC: #define __ARM_FEATURE_FMA 1
+// ARM64EC-MSVC: #define __ARM_FEATURE_IDIV 1
+// ARM64EC-MSVC: #define __ARM_FEATURE_LDREX 0xF
+// ARM64EC-MSVC: #define __ARM_FEATURE_NUMERIC_MAXMIN 1
+// ARM64EC-MSVC: #define __ARM_FEATURE_UNALIGNED 1
+// ARM64EC-MSVC: #define __ARM_FP 0xE
+// ARM64EC-MSVC: #define __ARM_FP16_ARGS 1
+// ARM64EC-MSVC: #define __ARM_FP16_FORMAT_IEEE 1
+// ARM64EC-MSVC: #define __ARM_PCS_AAPCS64 1
+// ARM64EC-MSVC: #define __ARM_SIZEOF_MINIMAL_ENUM 4
+// ARM64EC-MSVC: #define __ARM_SIZEOF_WCHAR_T 4
+// ARM64EC-MSVC: #define __ATOMIC_ACQUIRE 2
+// ARM64EC-MSVC: #define __ATOMIC_ACQ_REL 4
+// ARM64EC-MSVC: #define __ATOMIC_CONSUME 1
+// ARM64EC-MSVC: #define __ATOMIC_RELAXED 0
+// ARM64EC-MSVC: #define __ATOMIC_RELEASE 3
+// ARM64EC-MSVC: #define __ATOMIC_SEQ_CST 5
+// ARM64EC-MSVC: #define __BIGGEST_ALIGNMENT__ 16
+// ARM64EC-MSVC: #define __BITINT_MAXWIDTH__ 128
+// ARM64EC-MSVC: #define __BOOL_WIDTH__ 8
+// ARM64EC-MSVC: #define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
+// ARM64EC-MSVC: #define __CHAR16_TYPE__ unsigned short
+// ARM64EC-MSVC: #define __CHAR32_TYPE__ unsigned int
+// ARM64EC-MSVC: #define __CHAR_BIT__ 8
+// ARM64EC-MSVC: #define __CLANG_ATOMIC_BOOL_LOCK_FREE 2
+// ARM64EC-MSVC: #define __CLANG_ATOMIC_CHAR16_T_LOCK_FREE 2
+// ARM64EC-MSVC: #define __CLANG_ATOMIC_CHAR32_T_LOCK_FREE 2
+// ARM64EC-MSVC: #define __CLANG_ATOMIC_CHAR_LOCK_FREE 2
+// ARM64EC-MSVC: #define __CLANG_ATOMIC_INT_LOCK_FREE 2
+// ARM64EC-MSVC: #define __CLANG_ATOMIC_LLONG_LOCK_FREE 2
+// ARM64EC-MSVC: #define __CLANG_ATOMIC_LONG_LOCK_FREE 2
+// ARM64EC-MSVC: #define __CLANG_ATOMIC_POINTER_LOCK_FREE 2
+// ARM64EC-MSVC: #define __CLANG_ATOMIC_SHORT_LOCK_FREE 2
+// ARM64EC-MSVC: #define __CLANG_ATOMIC_WCHAR_T_LOCK_FREE 2
+// ARM64EC-MSVC: #define __CONSTANT_CFSTRINGS__ 1
+// ARM64EC-MSVC: #define __DBL_DECIMAL_DIG__ 17
+// ARM64EC-MSVC: #define __DBL_DENORM_MIN__ 4.9406564584124654e-324
+// ARM64EC-MSVC: #define __DBL_DIG__ 15
+// ARM64EC-MSVC: #define __DBL_EPSILON__ 2.2204460492503131e-16
+// ARM64EC-MSVC: #define __DBL_HAS_DENORM__ 1
+// ARM64EC-MSVC: #define __DBL_HAS_INFINITY__ 1
+// ARM64EC-MSVC: #define __DBL_HAS_QUIET_NAN__ 1
+// ARM64EC-MSVC: #define __DBL_MANT_DIG__ 53
+// ARM64EC-MSVC: #define __DBL_MAX_10_EXP__ 308
+// ARM64EC-MSVC: #define __DBL_MAX_EXP__ 1024
+// ARM64EC-MSVC: #define __DBL_MAX__ 1.7976931348623157e+308
+// ARM64EC-MSVC: #define __DBL_MIN_10_EXP__ (-307)
+// ARM64EC-MSVC: #define __DBL_MIN_EXP__ (-1021)
+// ARM64EC-MSVC: #define __DBL_MIN__ 2.2250738585072014e-308
+// ARM64EC-MSVC: #define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
+// ARM64EC-MSVC: #define __FINITE_MATH_ONLY__ 0
+// ARM64EC-MSVC: #define __FLT16_DECIMAL_DIG__ 5
+// ARM64EC-MSVC: #define __FLT16_DENORM_MIN__ 5.9604644775390625e-8F16
+// ARM64EC-MSVC: #define __FLT16_DIG__ 3
+// ARM64EC-MSVC: #define __FLT16_EPSILON__ 9.765625e-4F16
+// ARM64EC-MSVC: #define __FLT16_HAS_DENORM__ 1
+// ARM64EC-MSVC: #define __FLT16_HAS_INFINITY__ 1
+// ARM64EC-MSVC: #define __FLT16_HAS_QUIET_NAN__ 1
+// ARM64EC-MSVC: #define __FLT16_MANT_DIG__ 11
+// ARM64EC-MSVC: #define __FLT16_MAX_10_EXP__ 4
+// ARM64EC-MSVC: #define __FLT16_MAX_EXP__ 16
+// ARM64EC-MSVC: #define __FLT16_MAX__ 6.5504e+4F16
+// ARM64EC-MSVC: #define __FLT16_MIN_10_EXP__ (-4)
+// ARM64EC-MSVC: #define __FLT16_MIN_EXP__ (-13)
+// ARM64EC-MSVC: #define 

[clang] [Preprocessor][test] Test ARM64EC definitions (PR #78916)

2024-01-21 Thread via cfe-commits

llvmbot wrote:




@llvm/pr-subscribers-clang

Author: Billy Laws (bylaws)


Changes

Depends on #78913

---
Full diff: https://github.com/llvm/llvm-project/pull/78916.diff


1 Files Affected:

- (modified) clang/test/Preprocessor/init-aarch64.c (+370) 


``diff
diff --git a/clang/test/Preprocessor/init-aarch64.c 
b/clang/test/Preprocessor/init-aarch64.c
index 94c091a69e8444..5244e2c3bbb3e6 100644
--- a/clang/test/Preprocessor/init-aarch64.c
+++ b/clang/test/Preprocessor/init-aarch64.c
@@ -728,6 +728,376 @@
 // AARCH64-MSVC: #define __WINT_WIDTH__ 16
 // AARCH64-MSVC: #define __aarch64__ 1
 
+// RUN: %clang_cc1 -E -dM -ffreestanding -triple=arm64ec-windows-msvc < 
/dev/null | FileCheck -match-full-lines -check-prefix ARM64EC-MSVC %s
+
+// ARM64EC-MSVC: #define _INTEGRAL_MAX_BITS 64
+// ARM64EC-MSVC: #define _M_AMD64 100
+// ARM64EC-MSVC: #define _M_ARM64EC 1
+// ARM64EC-MSVC: #define _M_X64 100
+// ARM64EC-MSVC: #define _WIN32 1
+// ARM64EC-MSVC: #define _WIN64 1
+// ARM64EC-MSVC: #define __AARCH64EL__ 1
+// ARM64EC-MSVC: #define __AARCH64_CMODEL_SMALL__ 1
+// ARM64EC-MSVC: #define __ARM_64BIT_STATE 1
+// ARM64EC-MSVC: #define __ARM_ACLE 200
+// ARM64EC-MSVC: #define __ARM_ALIGN_MAX_STACK_PWR 4
+// ARM64EC-MSVC: #define __ARM_ARCH 8
+// ARM64EC-MSVC: #define __ARM_ARCH_ISA_A64 1
+// ARM64EC-MSVC: #define __ARM_ARCH_PROFILE 'A'
+// ARM64EC-MSVC: #define __ARM_FEATURE_CLZ 1
+// ARM64EC-MSVC: #define __ARM_FEATURE_DIRECTED_ROUNDING 1
+// ARM64EC-MSVC: #define __ARM_FEATURE_DIV 1
+// ARM64EC-MSVC: #define __ARM_FEATURE_FMA 1
+// ARM64EC-MSVC: #define __ARM_FEATURE_IDIV 1
+// ARM64EC-MSVC: #define __ARM_FEATURE_LDREX 0xF
+// ARM64EC-MSVC: #define __ARM_FEATURE_NUMERIC_MAXMIN 1
+// ARM64EC-MSVC: #define __ARM_FEATURE_UNALIGNED 1
+// ARM64EC-MSVC: #define __ARM_FP 0xE
+// ARM64EC-MSVC: #define __ARM_FP16_ARGS 1
+// ARM64EC-MSVC: #define __ARM_FP16_FORMAT_IEEE 1
+// ARM64EC-MSVC: #define __ARM_PCS_AAPCS64 1
+// ARM64EC-MSVC: #define __ARM_SIZEOF_MINIMAL_ENUM 4
+// ARM64EC-MSVC: #define __ARM_SIZEOF_WCHAR_T 4
+// ARM64EC-MSVC: #define __ATOMIC_ACQUIRE 2
+// ARM64EC-MSVC: #define __ATOMIC_ACQ_REL 4
+// ARM64EC-MSVC: #define __ATOMIC_CONSUME 1
+// ARM64EC-MSVC: #define __ATOMIC_RELAXED 0
+// ARM64EC-MSVC: #define __ATOMIC_RELEASE 3
+// ARM64EC-MSVC: #define __ATOMIC_SEQ_CST 5
+// ARM64EC-MSVC: #define __BIGGEST_ALIGNMENT__ 16
+// ARM64EC-MSVC: #define __BITINT_MAXWIDTH__ 128
+// ARM64EC-MSVC: #define __BOOL_WIDTH__ 8
+// ARM64EC-MSVC: #define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
+// ARM64EC-MSVC: #define __CHAR16_TYPE__ unsigned short
+// ARM64EC-MSVC: #define __CHAR32_TYPE__ unsigned int
+// ARM64EC-MSVC: #define __CHAR_BIT__ 8
+// ARM64EC-MSVC: #define __CLANG_ATOMIC_BOOL_LOCK_FREE 2
+// ARM64EC-MSVC: #define __CLANG_ATOMIC_CHAR16_T_LOCK_FREE 2
+// ARM64EC-MSVC: #define __CLANG_ATOMIC_CHAR32_T_LOCK_FREE 2
+// ARM64EC-MSVC: #define __CLANG_ATOMIC_CHAR_LOCK_FREE 2
+// ARM64EC-MSVC: #define __CLANG_ATOMIC_INT_LOCK_FREE 2
+// ARM64EC-MSVC: #define __CLANG_ATOMIC_LLONG_LOCK_FREE 2
+// ARM64EC-MSVC: #define __CLANG_ATOMIC_LONG_LOCK_FREE 2
+// ARM64EC-MSVC: #define __CLANG_ATOMIC_POINTER_LOCK_FREE 2
+// ARM64EC-MSVC: #define __CLANG_ATOMIC_SHORT_LOCK_FREE 2
+// ARM64EC-MSVC: #define __CLANG_ATOMIC_WCHAR_T_LOCK_FREE 2
+// ARM64EC-MSVC: #define __CONSTANT_CFSTRINGS__ 1
+// ARM64EC-MSVC: #define __DBL_DECIMAL_DIG__ 17
+// ARM64EC-MSVC: #define __DBL_DENORM_MIN__ 4.9406564584124654e-324
+// ARM64EC-MSVC: #define __DBL_DIG__ 15
+// ARM64EC-MSVC: #define __DBL_EPSILON__ 2.2204460492503131e-16
+// ARM64EC-MSVC: #define __DBL_HAS_DENORM__ 1
+// ARM64EC-MSVC: #define __DBL_HAS_INFINITY__ 1
+// ARM64EC-MSVC: #define __DBL_HAS_QUIET_NAN__ 1
+// ARM64EC-MSVC: #define __DBL_MANT_DIG__ 53
+// ARM64EC-MSVC: #define __DBL_MAX_10_EXP__ 308
+// ARM64EC-MSVC: #define __DBL_MAX_EXP__ 1024
+// ARM64EC-MSVC: #define __DBL_MAX__ 1.7976931348623157e+308
+// ARM64EC-MSVC: #define __DBL_MIN_10_EXP__ (-307)
+// ARM64EC-MSVC: #define __DBL_MIN_EXP__ (-1021)
+// ARM64EC-MSVC: #define __DBL_MIN__ 2.2250738585072014e-308
+// ARM64EC-MSVC: #define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
+// ARM64EC-MSVC: #define __FINITE_MATH_ONLY__ 0
+// ARM64EC-MSVC: #define __FLT16_DECIMAL_DIG__ 5
+// ARM64EC-MSVC: #define __FLT16_DENORM_MIN__ 5.9604644775390625e-8F16
+// ARM64EC-MSVC: #define __FLT16_DIG__ 3
+// ARM64EC-MSVC: #define __FLT16_EPSILON__ 9.765625e-4F16
+// ARM64EC-MSVC: #define __FLT16_HAS_DENORM__ 1
+// ARM64EC-MSVC: #define __FLT16_HAS_INFINITY__ 1
+// ARM64EC-MSVC: #define __FLT16_HAS_QUIET_NAN__ 1
+// ARM64EC-MSVC: #define __FLT16_MANT_DIG__ 11
+// ARM64EC-MSVC: #define __FLT16_MAX_10_EXP__ 4
+// ARM64EC-MSVC: #define __FLT16_MAX_EXP__ 16
+// ARM64EC-MSVC: #define __FLT16_MAX__ 6.5504e+4F16
+// ARM64EC-MSVC: #define __FLT16_MIN_10_EXP__ (-4)
+// ARM64EC-MSVC: #define __FLT16_MIN_EXP__ (-13)
+// ARM64EC-MSVC: #define __FLT16_MIN__ 6.103515625e-5F16
+// ARM64EC-MSVC: #define __FLT_DECIMAL_DIG__ 9
+// ARM64EC-MSVC: #define __FLT_DENORM_MIN__ 

[clang] [Preprocessor][test] Test ARM64EC definitions (PR #78916)

2024-01-21 Thread Billy Laws via cfe-commits

https://github.com/bylaws created 
https://github.com/llvm/llvm-project/pull/78916

Depends on #78913

>From 1d7b70df850e61d6b28664b9e25272b960a869eb Mon Sep 17 00:00:00 2001
From: Billy Laws 
Date: Sun, 21 Jan 2024 22:55:44 +
Subject: [PATCH] [Preprocessor][test] Test ARM64EC definitions

---
 clang/test/Preprocessor/init-aarch64.c | 370 +
 1 file changed, 370 insertions(+)

diff --git a/clang/test/Preprocessor/init-aarch64.c 
b/clang/test/Preprocessor/init-aarch64.c
index 94c091a69e8444e..5244e2c3bbb3e6e 100644
--- a/clang/test/Preprocessor/init-aarch64.c
+++ b/clang/test/Preprocessor/init-aarch64.c
@@ -728,6 +728,376 @@
 // AARCH64-MSVC: #define __WINT_WIDTH__ 16
 // AARCH64-MSVC: #define __aarch64__ 1
 
+// RUN: %clang_cc1 -E -dM -ffreestanding -triple=arm64ec-windows-msvc < 
/dev/null | FileCheck -match-full-lines -check-prefix ARM64EC-MSVC %s
+
+// ARM64EC-MSVC: #define _INTEGRAL_MAX_BITS 64
+// ARM64EC-MSVC: #define _M_AMD64 100
+// ARM64EC-MSVC: #define _M_ARM64EC 1
+// ARM64EC-MSVC: #define _M_X64 100
+// ARM64EC-MSVC: #define _WIN32 1
+// ARM64EC-MSVC: #define _WIN64 1
+// ARM64EC-MSVC: #define __AARCH64EL__ 1
+// ARM64EC-MSVC: #define __AARCH64_CMODEL_SMALL__ 1
+// ARM64EC-MSVC: #define __ARM_64BIT_STATE 1
+// ARM64EC-MSVC: #define __ARM_ACLE 200
+// ARM64EC-MSVC: #define __ARM_ALIGN_MAX_STACK_PWR 4
+// ARM64EC-MSVC: #define __ARM_ARCH 8
+// ARM64EC-MSVC: #define __ARM_ARCH_ISA_A64 1
+// ARM64EC-MSVC: #define __ARM_ARCH_PROFILE 'A'
+// ARM64EC-MSVC: #define __ARM_FEATURE_CLZ 1
+// ARM64EC-MSVC: #define __ARM_FEATURE_DIRECTED_ROUNDING 1
+// ARM64EC-MSVC: #define __ARM_FEATURE_DIV 1
+// ARM64EC-MSVC: #define __ARM_FEATURE_FMA 1
+// ARM64EC-MSVC: #define __ARM_FEATURE_IDIV 1
+// ARM64EC-MSVC: #define __ARM_FEATURE_LDREX 0xF
+// ARM64EC-MSVC: #define __ARM_FEATURE_NUMERIC_MAXMIN 1
+// ARM64EC-MSVC: #define __ARM_FEATURE_UNALIGNED 1
+// ARM64EC-MSVC: #define __ARM_FP 0xE
+// ARM64EC-MSVC: #define __ARM_FP16_ARGS 1
+// ARM64EC-MSVC: #define __ARM_FP16_FORMAT_IEEE 1
+// ARM64EC-MSVC: #define __ARM_PCS_AAPCS64 1
+// ARM64EC-MSVC: #define __ARM_SIZEOF_MINIMAL_ENUM 4
+// ARM64EC-MSVC: #define __ARM_SIZEOF_WCHAR_T 4
+// ARM64EC-MSVC: #define __ATOMIC_ACQUIRE 2
+// ARM64EC-MSVC: #define __ATOMIC_ACQ_REL 4
+// ARM64EC-MSVC: #define __ATOMIC_CONSUME 1
+// ARM64EC-MSVC: #define __ATOMIC_RELAXED 0
+// ARM64EC-MSVC: #define __ATOMIC_RELEASE 3
+// ARM64EC-MSVC: #define __ATOMIC_SEQ_CST 5
+// ARM64EC-MSVC: #define __BIGGEST_ALIGNMENT__ 16
+// ARM64EC-MSVC: #define __BITINT_MAXWIDTH__ 128
+// ARM64EC-MSVC: #define __BOOL_WIDTH__ 8
+// ARM64EC-MSVC: #define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
+// ARM64EC-MSVC: #define __CHAR16_TYPE__ unsigned short
+// ARM64EC-MSVC: #define __CHAR32_TYPE__ unsigned int
+// ARM64EC-MSVC: #define __CHAR_BIT__ 8
+// ARM64EC-MSVC: #define __CLANG_ATOMIC_BOOL_LOCK_FREE 2
+// ARM64EC-MSVC: #define __CLANG_ATOMIC_CHAR16_T_LOCK_FREE 2
+// ARM64EC-MSVC: #define __CLANG_ATOMIC_CHAR32_T_LOCK_FREE 2
+// ARM64EC-MSVC: #define __CLANG_ATOMIC_CHAR_LOCK_FREE 2
+// ARM64EC-MSVC: #define __CLANG_ATOMIC_INT_LOCK_FREE 2
+// ARM64EC-MSVC: #define __CLANG_ATOMIC_LLONG_LOCK_FREE 2
+// ARM64EC-MSVC: #define __CLANG_ATOMIC_LONG_LOCK_FREE 2
+// ARM64EC-MSVC: #define __CLANG_ATOMIC_POINTER_LOCK_FREE 2
+// ARM64EC-MSVC: #define __CLANG_ATOMIC_SHORT_LOCK_FREE 2
+// ARM64EC-MSVC: #define __CLANG_ATOMIC_WCHAR_T_LOCK_FREE 2
+// ARM64EC-MSVC: #define __CONSTANT_CFSTRINGS__ 1
+// ARM64EC-MSVC: #define __DBL_DECIMAL_DIG__ 17
+// ARM64EC-MSVC: #define __DBL_DENORM_MIN__ 4.9406564584124654e-324
+// ARM64EC-MSVC: #define __DBL_DIG__ 15
+// ARM64EC-MSVC: #define __DBL_EPSILON__ 2.2204460492503131e-16
+// ARM64EC-MSVC: #define __DBL_HAS_DENORM__ 1
+// ARM64EC-MSVC: #define __DBL_HAS_INFINITY__ 1
+// ARM64EC-MSVC: #define __DBL_HAS_QUIET_NAN__ 1
+// ARM64EC-MSVC: #define __DBL_MANT_DIG__ 53
+// ARM64EC-MSVC: #define __DBL_MAX_10_EXP__ 308
+// ARM64EC-MSVC: #define __DBL_MAX_EXP__ 1024
+// ARM64EC-MSVC: #define __DBL_MAX__ 1.7976931348623157e+308
+// ARM64EC-MSVC: #define __DBL_MIN_10_EXP__ (-307)
+// ARM64EC-MSVC: #define __DBL_MIN_EXP__ (-1021)
+// ARM64EC-MSVC: #define __DBL_MIN__ 2.2250738585072014e-308
+// ARM64EC-MSVC: #define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
+// ARM64EC-MSVC: #define __FINITE_MATH_ONLY__ 0
+// ARM64EC-MSVC: #define __FLT16_DECIMAL_DIG__ 5
+// ARM64EC-MSVC: #define __FLT16_DENORM_MIN__ 5.9604644775390625e-8F16
+// ARM64EC-MSVC: #define __FLT16_DIG__ 3
+// ARM64EC-MSVC: #define __FLT16_EPSILON__ 9.765625e-4F16
+// ARM64EC-MSVC: #define __FLT16_HAS_DENORM__ 1
+// ARM64EC-MSVC: #define __FLT16_HAS_INFINITY__ 1
+// ARM64EC-MSVC: #define __FLT16_HAS_QUIET_NAN__ 1
+// ARM64EC-MSVC: #define __FLT16_MANT_DIG__ 11
+// ARM64EC-MSVC: #define __FLT16_MAX_10_EXP__ 4
+// ARM64EC-MSVC: #define __FLT16_MAX_EXP__ 16
+// ARM64EC-MSVC: #define __FLT16_MAX__ 6.5504e+4F16
+// ARM64EC-MSVC: #define __FLT16_MIN_10_EXP__ (-4)
+// ARM64EC-MSVC: #define __FLT16_MIN_EXP__ (-13)
+//