Skip to content

Commit 56ccce4

Browse files
Use SDK values for even when they are not defined
1 parent 7670641 commit 56ccce4

File tree

1 file changed

+16
-17
lines changed
  • compiler-rt/lib/builtins/cpu_model/aarch64/fmv

1 file changed

+16
-17
lines changed

compiler-rt/lib/builtins/cpu_model/aarch64/fmv/windows.inc

Lines changed: 16 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -4,49 +4,49 @@
44
#include <stdint.h>
55

66
#ifndef PF_ARM_V82_DP_INSTRUCTIONS_AVAILABLE
7-
#define PF_ARM_V82_DP_INSTRUCTIONS_AVAILABLE -1
7+
#define PF_ARM_V82_DP_INSTRUCTIONS_AVAILABLE 43
88
#endif
99
#ifndef PF_ARM_V83_JSCVT_INSTRUCTIONS_AVAILABLE
10-
#define PF_ARM_V83_JSCVT_INSTRUCTIONS_AVAILABLE -1
10+
#define PF_ARM_V83_JSCVT_INSTRUCTIONS_AVAILABLE 44
1111
#endif
1212
#ifndef PF_ARM_V83_LRCPC_INSTRUCTIONS_AVAILABLE
13-
#define PF_ARM_V83_LRCPC_INSTRUCTIONS_AVAILABLE -1
13+
#define PF_ARM_V83_LRCPC_INSTRUCTIONS_AVAILABLE 45
1414
#endif
1515
#ifndef PF_ARM_SVE_INSTRUCTIONS_AVAILABLE
16-
#define PF_ARM_SVE_INSTRUCTIONS_AVAILABLE -1
16+
#define PF_ARM_SVE_INSTRUCTIONS_AVAILABLE 46
1717
#endif
1818
#ifndef PF_ARM_SVE2_INSTRUCTIONS_AVAILABLE
19-
#define PF_ARM_SVE2_INSTRUCTIONS_AVAILABLE -1
19+
#define PF_ARM_SVE2_INSTRUCTIONS_AVAILABLE 47
2020
#endif
2121
#ifndef PF_ARM_SVE_AES_INSTRUCTIONS_AVAILABLE
22-
#define PF_ARM_SVE_AES_INSTRUCTIONS_AVAILABLE -1
22+
#define PF_ARM_SVE_AES_INSTRUCTIONS_AVAILABLE 49
2323
#endif
2424
#ifndef PF_ARM_SVE_PMULL128_INSTRUCTIONS_AVAILABLE
25-
#define PF_ARM_SVE_PMULL128_INSTRUCTIONS_AVAILABLE -1
25+
#define PF_ARM_SVE_PMULL128_INSTRUCTIONS_AVAILABLE 50
2626
#endif
2727
#ifndef PF_ARM_SVE_BITPERM_INSTRUCTIONS_AVAILABLE
28-
#define PF_ARM_SVE_BITPERM_INSTRUCTIONS_AVAILABLE -1
28+
#define PF_ARM_SVE_BITPERM_INSTRUCTIONS_AVAILABLE 51
2929
#endif
3030
#ifndef PF_ARM_SVE_BF16_INSTRUCTIONS_AVAILABLE
31-
#define PF_ARM_SVE_BF16_INSTRUCTIONS_AVAILABLE -1
31+
#define PF_ARM_SVE_BF16_INSTRUCTIONS_AVAILABLE 52
3232
#endif
3333
#ifndef PF_ARM_SVE_EBF16_INSTRUCTIONS_AVAILABLE
34-
#define PF_ARM_SVE_EBF16_INSTRUCTIONS_AVAILABLE -1
34+
#define PF_ARM_SVE_EBF16_INSTRUCTIONS_AVAILABLE 53
3535
#endif
3636
#ifndef PF_ARM_SVE_SHA3_INSTRUCTIONS_AVAILABLE
37-
#define PF_ARM_SVE_SHA3_INSTRUCTIONS_AVAILABLE -1
37+
#define PF_ARM_SVE_SHA3_INSTRUCTIONS_AVAILABLE 55
3838
#endif
3939
#ifndef PF_ARM_SVE_SM4_INSTRUCTIONS_AVAILABLE
40-
#define PF_ARM_SVE_SM4_INSTRUCTIONS_AVAILABLE -1
40+
#define PF_ARM_SVE_SM4_INSTRUCTIONS_AVAILABLE 56
4141
#endif
4242
#ifndef PF_ARM_SVE_I8MM_INSTRUCTIONS_AVAILABLE
43-
#define PF_ARM_SVE_I8MM_INSTRUCTIONS_AVAILABLE -1
43+
#define PF_ARM_SVE_I8MM_INSTRUCTIONS_AVAILABLE 57
4444
#endif
4545
#ifndef PF_ARM_SVE_F32MM_INSTRUCTIONS_AVAILABLE
46-
#define PF_ARM_SVE_F32MM_INSTRUCTIONS_AVAILABLE -1
46+
#define PF_ARM_SVE_F32MM_INSTRUCTIONS_AVAILABLE 58
4747
#endif
4848
#ifndef PF_ARM_SVE_F64MM_INSTRUCTIONS_AVAILABLE
49-
#define PF_ARM_SVE_F64MM_INSTRUCTIONS_AVAILABLE -1
49+
#define PF_ARM_SVE_F64MM_INSTRUCTIONS_AVAILABLE 59
5050
#endif
5151

5252
void __init_cpu_features_resolver(unsigned long hwcap,
@@ -91,8 +91,7 @@ void CONSTRUCTOR_ATTRIBUTE __init_cpu_features(void) {
9191
};
9292

9393
for (size_t I = 0, E = sizeof(FeatMap) / sizeof(FeatMap[0]); I != E; ++I)
94-
if ((FeatMap[I].WinApiFeature != -1) &&
95-
IsProcessorFeaturePresent(FeatMap[I].WinApiFeature))
94+
if (IsProcessorFeaturePresent(FeatMap[I].WinApiFeature))
9695
setCPUFeature(FeatMap[I].CPUFeature);
9796

9897
__atomic_store(&__aarch64_cpu_features.features, &features, __ATOMIC_RELAXED);

0 commit comments

Comments
 (0)