53 references to Shuffle
Microsoft.ML.CpuMath (20)
AvxIntrinsics.cs (8)
321Vector128<float> h11 = Sse.Shuffle(h01, h01, 0x55); // B 322Vector128<float> h21 = Sse.Shuffle(h01, h01, 0xAA); // C 323Vector128<float> h31 = Sse.Shuffle(h01, h01, 0xFF); // D 324h01 = Sse.Shuffle(h01, h01, 0x00); // A 369h11 = Sse.Shuffle(h01, h01, 0x55); // B 370h21 = Sse.Shuffle(h01, h01, 0xAA); // C 371h31 = Sse.Shuffle(h01, h01, 0xFF); // D 372h01 = Sse.Shuffle(h01, h01, 0x00); // A
SseIntrinsics.cs (12)
81=> Sse.Shuffle(x, x, 0x39); 107return Sse.Add(partialSum, Sse.Shuffle(partialSum, partialSum, 0xB1)); 115Vector128<float> x1 = Sse.Shuffle(vector, vector, 0xB1); 122x1 = Sse.Shuffle(partialMax, partialMax, 0x02); 277Vector128<float> x11 = Sse.Shuffle(x01, x01, 0x55); // B 278Vector128<float> x21 = Sse.Shuffle(x01, x01, 0xAA); // C 279Vector128<float> x31 = Sse.Shuffle(x01, x01, 0xFF); // D 280x01 = Sse.Shuffle(x01, x01, 0x00); // A 315x11 = Sse.Shuffle(x01, x01, 0x55); // B 316x21 = Sse.Shuffle(x01, x01, 0xAA); // C 317x31 = Sse.Shuffle(x01, x01, 0xFF); // D 318x01 = Sse.Shuffle(x01, x01, 0x00); // A
System.Private.CoreLib (33)
src\libraries\System.Private.CoreLib\src\System\Numerics\Matrix4x4.Impl.cs (32)
1165Vector128<float> vTemp1 = Sse.Shuffle(row1, row2, 0b01_00_01_00); //_MM_SHUFFLE(1, 0, 1, 0) 1166Vector128<float> vTemp3 = Sse.Shuffle(row1, row2, 0b11_10_11_10); //_MM_SHUFFLE(3, 2, 3, 2) 1167Vector128<float> vTemp2 = Sse.Shuffle(row3, row4, 0b01_00_01_00); //_MM_SHUFFLE(1, 0, 1, 0) 1168Vector128<float> vTemp4 = Sse.Shuffle(row3, row4, 0b11_10_11_10); //_MM_SHUFFLE(3, 2, 3, 2) 1170row1 = Sse.Shuffle(vTemp1, vTemp2, 0b10_00_10_00); //_MM_SHUFFLE(2, 0, 2, 0) 1171row2 = Sse.Shuffle(vTemp1, vTemp2, 0b11_01_11_01); //_MM_SHUFFLE(3, 1, 3, 1) 1172row3 = Sse.Shuffle(vTemp3, vTemp4, 0b10_00_10_00); //_MM_SHUFFLE(2, 0, 2, 0) 1173row4 = Sse.Shuffle(vTemp3, vTemp4, 0b11_01_11_01); //_MM_SHUFFLE(3, 1, 3, 1) 1179Vector128<float> V02 = Sse.Shuffle(row3, row1, 0b10_00_10_00); //_MM_SHUFFLE(2, 0, 2, 0) 1180Vector128<float> V12 = Sse.Shuffle(row4, row2, 0b11_01_11_01); //_MM_SHUFFLE(3, 1, 3, 1) 1190V02 = Sse.Shuffle(row3, row1, 0b11_01_11_01); //_MM_SHUFFLE(3, 1, 3, 1) 1191V12 = Sse.Shuffle(row4, row2, 0b10_00_10_00); //_MM_SHUFFLE(2, 0, 2, 0) 1198V11 = Sse.Shuffle(D0, D2, 0b01_01_11_01); //_MM_SHUFFLE(1, 1, 3, 1) 1200V10 = Sse.Shuffle(V11, D0, 0b00_11_00_10); //_MM_SHUFFLE(0, 3, 0, 2) 1202V11 = Sse.Shuffle(V11, D0, 0b10_01_10_01); //_MM_SHUFFLE(2, 1, 2, 1) 1205Vector128<float> V13 = Sse.Shuffle(D1, D2, 0b11_11_11_01); //_MM_SHUFFLE(3, 3, 3, 1) 1207V12 = Sse.Shuffle(V13, D1, 0b00_11_00_10); //_MM_SHUFFLE(0, 3, 0, 2) 1209V13 = Sse.Shuffle(V13, D1, 0b10_01_10_01); //_MM_SHUFFLE(2, 1, 2, 1) 1217V11 = Sse.Shuffle(D0, D2, 0b00_00_01_00); //_MM_SHUFFLE(0, 0, 1, 0) 1219V10 = Sse.Shuffle(D0, V11, 0b10_01_00_11); //_MM_SHUFFLE(2, 1, 0, 3) 1221V11 = Sse.Shuffle(D0, V11, 0b00_10_01_10); //_MM_SHUFFLE(0, 2, 1, 2) 1224V13 = Sse.Shuffle(D1, D2, 0b10_10_01_00); //_MM_SHUFFLE(2, 2, 1, 0) 1226V12 = Sse.Shuffle(D1, V13, 0b10_01_00_11); //_MM_SHUFFLE(2, 1, 0, 3) 1228V13 = Sse.Shuffle(D1, V13, 0b_00_10_01_10); //_MM_SHUFFLE(0, 2, 1, 2) 1238V10 = Sse.Shuffle(D0, D2, 0b01_00_10_10); //_MM_SHUFFLE(1, 0, 2, 2) 1243V11 = Sse.Shuffle(D0, D2, 0b01_00_11_00); //_MM_SHUFFLE(1, 0, 3, 0) 1248V12 = Sse.Shuffle(D1, D2, 0b11_10_10_10); //_MM_SHUFFLE(3, 2, 2, 2) 1253V13 = Sse.Shuffle(D1, D2, 0b11_10_11_00); //_MM_SHUFFLE(3, 2, 3, 0) 1273C0 = Sse.Shuffle(C0, C1, 0b11_01_10_00); //_MM_SHUFFLE(3, 1, 2, 0) 1274C2 = Sse.Shuffle(C2, C3, 0b11_01_10_00); //_MM_SHUFFLE(3, 1, 2, 0) 1275C4 = Sse.Shuffle(C4, C5, 0b11_01_10_00); //_MM_SHUFFLE(3, 1, 2, 0) 1276C6 = Sse.Shuffle(C6, C7, 0b11_01_10_00); //_MM_SHUFFLE(3, 1, 2, 0)
src\libraries\System.Private.CoreLib\src\System\Runtime\Intrinsics\X86\Sse.cs (1)
538public static Vector128<float> Shuffle(Vector128<float> left, Vector128<float> right, [ConstantExpected] byte control) => Shuffle(left, right, control);