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
10enum 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