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)
1265Vector128<float> vTemp1 = Sse.Shuffle(row1, row2, 0b01_00_01_00); //_MM_SHUFFLE(1, 0, 1, 0) 1266Vector128<float> vTemp3 = Sse.Shuffle(row1, row2, 0b11_10_11_10); //_MM_SHUFFLE(3, 2, 3, 2) 1267Vector128<float> vTemp2 = Sse.Shuffle(row3, row4, 0b01_00_01_00); //_MM_SHUFFLE(1, 0, 1, 0) 1268Vector128<float> vTemp4 = Sse.Shuffle(row3, row4, 0b11_10_11_10); //_MM_SHUFFLE(3, 2, 3, 2) 1270row1 = Sse.Shuffle(vTemp1, vTemp2, 0b10_00_10_00); //_MM_SHUFFLE(2, 0, 2, 0) 1271row2 = Sse.Shuffle(vTemp1, vTemp2, 0b11_01_11_01); //_MM_SHUFFLE(3, 1, 3, 1) 1272row3 = Sse.Shuffle(vTemp3, vTemp4, 0b10_00_10_00); //_MM_SHUFFLE(2, 0, 2, 0) 1273row4 = Sse.Shuffle(vTemp3, vTemp4, 0b11_01_11_01); //_MM_SHUFFLE(3, 1, 3, 1) 1279Vector128<float> V02 = Sse.Shuffle(row3, row1, 0b10_00_10_00); //_MM_SHUFFLE(2, 0, 2, 0) 1280Vector128<float> V12 = Sse.Shuffle(row4, row2, 0b11_01_11_01); //_MM_SHUFFLE(3, 1, 3, 1) 1290V02 = Sse.Shuffle(row3, row1, 0b11_01_11_01); //_MM_SHUFFLE(3, 1, 3, 1) 1291V12 = Sse.Shuffle(row4, row2, 0b10_00_10_00); //_MM_SHUFFLE(2, 0, 2, 0) 1298V11 = Sse.Shuffle(D0, D2, 0b01_01_11_01); //_MM_SHUFFLE(1, 1, 3, 1) 1300V10 = Sse.Shuffle(V11, D0, 0b00_11_00_10); //_MM_SHUFFLE(0, 3, 0, 2) 1302V11 = Sse.Shuffle(V11, D0, 0b10_01_10_01); //_MM_SHUFFLE(2, 1, 2, 1) 1305Vector128<float> V13 = Sse.Shuffle(D1, D2, 0b11_11_11_01); //_MM_SHUFFLE(3, 3, 3, 1) 1307V12 = Sse.Shuffle(V13, D1, 0b00_11_00_10); //_MM_SHUFFLE(0, 3, 0, 2) 1309V13 = Sse.Shuffle(V13, D1, 0b10_01_10_01); //_MM_SHUFFLE(2, 1, 2, 1) 1317V11 = Sse.Shuffle(D0, D2, 0b00_00_01_00); //_MM_SHUFFLE(0, 0, 1, 0) 1319V10 = Sse.Shuffle(D0, V11, 0b10_01_00_11); //_MM_SHUFFLE(2, 1, 0, 3) 1321V11 = Sse.Shuffle(D0, V11, 0b00_10_01_10); //_MM_SHUFFLE(0, 2, 1, 2) 1324V13 = Sse.Shuffle(D1, D2, 0b10_10_01_00); //_MM_SHUFFLE(2, 2, 1, 0) 1326V12 = Sse.Shuffle(D1, V13, 0b10_01_00_11); //_MM_SHUFFLE(2, 1, 0, 3) 1328V13 = Sse.Shuffle(D1, V13, 0b_00_10_01_10); //_MM_SHUFFLE(0, 2, 1, 2) 1338V10 = Sse.Shuffle(D0, D2, 0b01_00_10_10); //_MM_SHUFFLE(1, 0, 2, 2) 1343V11 = Sse.Shuffle(D0, D2, 0b01_00_11_00); //_MM_SHUFFLE(1, 0, 3, 0) 1348V12 = Sse.Shuffle(D1, D2, 0b11_10_10_10); //_MM_SHUFFLE(3, 2, 2, 2) 1353V13 = Sse.Shuffle(D1, D2, 0b11_10_11_00); //_MM_SHUFFLE(3, 2, 3, 0) 1373C0 = Sse.Shuffle(C0, C1, 0b11_01_10_00); //_MM_SHUFFLE(3, 1, 2, 0) 1374C2 = Sse.Shuffle(C2, C3, 0b11_01_10_00); //_MM_SHUFFLE(3, 1, 2, 0) 1375C4 = Sse.Shuffle(C4, C5, 0b11_01_10_00); //_MM_SHUFFLE(3, 1, 2, 0) 1376C6 = 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);