1 | // Licensed to the .NET Foundation under one or more agreements. |
2 | // The .NET Foundation licenses this file to you under the MIT license. |
3 | // See the LICENSE file in the project root for more information. |
4 | |
5 | #ifndef _NAMEDINTRINSICLIST_H_ |
6 | #define _NAMEDINTRINSICLIST_H_ |
7 | |
8 | // Named jit intrinsics |
9 | |
10 | enum NamedIntrinsic : unsigned short |
11 | { |
12 | NI_Illegal = 0, |
13 | NI_System_Enum_HasFlag, |
14 | NI_System_Math_FusedMultiplyAdd, |
15 | NI_System_Math_Round, |
16 | NI_System_MathF_FusedMultiplyAdd, |
17 | NI_System_MathF_Round, |
18 | NI_System_Collections_Generic_EqualityComparer_get_Default, |
19 | NI_System_Buffers_Binary_BinaryPrimitives_ReverseEndianness, |
20 | |
21 | #ifdef FEATURE_HW_INTRINSICS |
22 | NI_HW_INTRINSIC_START, |
23 | #if defined(_TARGET_XARCH_) |
24 | #define HARDWARE_INTRINSIC(id, name, isa, ival, size, numarg, t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, category, flag) \ |
25 | NI_##id, |
26 | #include "hwintrinsiclistxarch.h" |
27 | #elif defined(_TARGET_ARM64_) |
28 | NI_ARM64_IsSupported_False, |
29 | NI_ARM64_IsSupported_True, |
30 | NI_ARM64_PlatformNotSupported, |
31 | #define HARDWARE_INTRINSIC(id, isa, name, form, ins0, ins1, ins2, flags) id, |
32 | #include "hwintrinsiclistArm64.h" |
33 | #endif // !defined(_TARGET_XARCH_) && !defined(_TARGET_ARM64_) |
34 | NI_HW_INTRINSIC_END, |
35 | #endif // FEATURE_HW_INTRINSICS |
36 | }; |
37 | |
38 | #endif // _NAMEDINTRINSICLIST_H_ |
39 | |