1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
|
// Licensed to the .NET Foundation under one or more agreements.
// The .NET Foundation licenses this file to you under the MIT license.
// See the LICENSE file in the project root for more information.
using System;
using System.Collections.Generic;
namespace JIT.HardwareIntrinsics.X86
{
public static partial class Program
{
static Program()
{
TestList = new Dictionary<string, Action>() {
["Add.Double"] = AddDouble,
["Add.Single"] = AddSingle,
["AddSubtract.Double"] = AddSubtractDouble,
["AddSubtract.Single"] = AddSubtractSingle,
["And.Double"] = AndDouble,
["And.Single"] = AndSingle,
["AndNot.Double"] = AndNotDouble,
["AndNot.Single"] = AndNotSingle,
["BlendVariable.Double"] = BlendVariableDouble,
["BlendVariable.Single"] = BlendVariableSingle,
["Ceiling.Double"] = CeilingDouble,
["Ceiling.Single"] = CeilingSingle,
["Divide.Double"] = DivideDouble,
["Divide.Single"] = DivideSingle,
["DuplicateEvenIndexed.Double"] = DuplicateEvenIndexedDouble,
["DuplicateEvenIndexed.Single"] = DuplicateEvenIndexedSingle,
["DuplicateOddIndexed.Single"] = DuplicateOddIndexedSingle,
["Extract.Byte.1"] = ExtractByte1,
["Extract.Byte.20"] = ExtractByte20,
["Extract.Byte.52"] = ExtractByte52,
["Extract.UInt16.1"] = ExtractUInt161,
["Extract.UInt16.11"] = ExtractUInt1611,
["Extract.UInt16.27"] = ExtractUInt1627,
["Extract.Int32.1"] = ExtractInt321,
["Extract.UInt32.1"] = ExtractUInt321,
["Extract.Int32.6"] = ExtractInt326,
["Extract.UInt32.6"] = ExtractUInt326,
["Extract.Int32.22"] = ExtractInt3222,
["Extract.UInt32.22"] = ExtractUInt3222,
["Extract.Int64.1"] = ExtractInt641,
["Extract.UInt64.1"] = ExtractUInt641,
["Extract.Int64.3"] = ExtractInt643,
["Extract.UInt64.3"] = ExtractUInt643,
["Extract.Int64.19"] = ExtractInt6419,
["Extract.UInt64.19"] = ExtractUInt6419,
["ExtractVector128.Byte.1.Store"] = ExtractVector128Byte1Store,
["ExtractVector128.SByte.1.Store"] = ExtractVector128SByte1Store,
["ExtractVector128.Int16.1.Store"] = ExtractVector128Int161Store,
["ExtractVector128.UInt16.1.Store"] = ExtractVector128UInt161Store,
["ExtractVector128.Int32.1.Store"] = ExtractVector128Int321Store,
["ExtractVector128.UInt32.1.Store"] = ExtractVector128UInt321Store,
["ExtractVector128.Int64.1.Store"] = ExtractVector128Int641Store,
["ExtractVector128.UInt64.1.Store"] = ExtractVector128UInt641Store,
["ExtractVector128.Single.1.Store"] = ExtractVector128Single1Store,
["ExtractVector128.Double.1.Store"] = ExtractVector128Double1Store,
["Insert.Byte.1"] = InsertByte1,
["Insert.Byte.20"] = InsertByte20,
["Insert.SByte.1"] = InsertSByte1,
["Insert.SByte.20"] = InsertSByte20,
["Insert.Byte.52"] = InsertByte52,
["Insert.SByte.52"] = InsertSByte52,
["Insert.Int16.1"] = InsertInt161,
["Insert.Int16.11"] = InsertInt1611,
["Insert.UInt16.1"] = InsertUInt161,
["Insert.UInt16.11"] = InsertUInt1611,
["Insert.Int16.27"] = InsertInt1627,
["Insert.UInt16.27"] = InsertUInt1627,
["Insert.Int32.1"] = InsertInt321,
["Insert.Int32.6"] = InsertInt326,
["Insert.UInt32.1"] = InsertUInt321,
["Insert.UInt32.6"] = InsertUInt326,
["Insert.Int32.22"] = InsertInt3222,
["Insert.UInt32.22"] = InsertUInt3222,
["Insert.Int64.1"] = InsertInt641,
["Insert.Int64.3"] = InsertInt643,
["Insert.UInt64.1"] = InsertUInt641,
["Insert.UInt64.3"] = InsertUInt643,
["Insert.Int64.19"] = InsertInt6419,
["Insert.UInt64.19"] = InsertUInt6419,
["InsertVector128.Byte.1.Load"] = InsertVector128Byte1Load,
["InsertVector128.SByte.1.Load"] = InsertVector128SByte1Load,
["InsertVector128.Int16.1.Load"] = InsertVector128Int161Load,
["InsertVector128.UInt16.1.Load"] = InsertVector128UInt161Load,
["InsertVector128.Int32.1.Load"] = InsertVector128Int321Load,
["InsertVector128.UInt32.1.Load"] = InsertVector128UInt321Load,
["InsertVector128.Int64.1.Load"] = InsertVector128Int641Load,
["InsertVector128.UInt64.1.Load"] = InsertVector128UInt641Load,
["InsertVector128.Single.1.Load"] = InsertVector128Single1Load,
["InsertVector128.Double.1.Load"] = InsertVector128Double1Load,
["Floor.Double"] = FloorDouble,
["Floor.Single"] = FloorSingle,
["GetLowerHalf.Byte"] = GetLowerHalfByte,
["GetLowerHalf.Double"] = GetLowerHalfDouble,
["GetLowerHalf.Int16"] = GetLowerHalfInt16,
["GetLowerHalf.Int32"] = GetLowerHalfInt32,
["GetLowerHalf.Int64"] = GetLowerHalfInt64,
["GetLowerHalf.SByte"] = GetLowerHalfSByte,
["GetLowerHalf.Single"] = GetLowerHalfSingle,
["GetLowerHalf.UInt16"] = GetLowerHalfUInt16,
["GetLowerHalf.UInt32"] = GetLowerHalfUInt32,
["GetLowerHalf.UInt64"] = GetLowerHalfUInt64,
["MaskLoad.Double"] = MaskLoadDouble,
["MaskLoad.Single"] = MaskLoadSingle,
["MaskStore.Double"] = MaskStoreDouble,
["MaskStore.Single"] = MaskStoreSingle,
["Max.Double"] = MaxDouble,
["Max.Single"] = MaxSingle,
["Min.Double"] = MinDouble,
["Min.Single"] = MinSingle,
["Multiply.Double"] = MultiplyDouble,
["Multiply.Single"] = MultiplySingle,
["Or.Double"] = OrDouble,
["Or.Single"] = OrSingle,
["Permute.Single.1"] = PermuteSingle1,
["Permute.Double.1"] = PermuteDouble1,
["Permute.Single.2"] = PermuteSingle2,
["Permute.Double.2"] = PermuteDouble2,
["RoundCurrentDirection.Double"] = RoundCurrentDirectionDouble,
["RoundCurrentDirection.Single"] = RoundCurrentDirectionSingle,
["RoundToNearestInteger.Double"] = RoundToNearestIntegerDouble,
["RoundToNearestInteger.Single"] = RoundToNearestIntegerSingle,
["RoundToNegativeInfinity.Double"] = RoundToNegativeInfinityDouble,
["RoundToNegativeInfinity.Single"] = RoundToNegativeInfinitySingle,
["RoundToPositiveInfinity.Double"] = RoundToPositiveInfinityDouble,
["RoundToPositiveInfinity.Single"] = RoundToPositiveInfinitySingle,
["RoundToZero.Double"] = RoundToZeroDouble,
["RoundToZero.Single"] = RoundToZeroSingle,
["Shuffle.Single.1"] = ShuffleSingle1,
["Shuffle.Double.1"] = ShuffleDouble1,
["Subtract.Double"] = SubtractDouble,
["Subtract.Single"] = SubtractSingle,
["Xor.Single"] = XorSingle,
["Xor.Double"] = XorDouble,
};
}
}
}
|