Skip to content

Commit cf305c1

Browse files
committed
Renaming to DotProductRotateComplex
1 parent 6885628 commit cf305c1

File tree

11 files changed

+65
-65
lines changed

11 files changed

+65
-65
lines changed

src/coreclr/jit/hwintrinsic.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1275,7 +1275,7 @@ struct HWIntrinsicInfo
12751275
}
12761276

12771277
case NI_Sve_MultiplyAddRotateComplexBySelectedScalar:
1278-
case NI_Sve2_DotProductComplexBySelectedIndex:
1278+
case NI_Sve2_DotProductRotateComplexBySelectedIndex:
12791279
{
12801280
assert(sig->numArgs == 5);
12811281
*imm1Pos = 0;

src/coreclr/jit/hwintrinsicarm64.cpp

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -485,7 +485,7 @@ void HWIntrinsicInfo::lookupImmBounds(
485485
break;
486486

487487
case NI_Sve_MultiplyAddRotateComplex:
488-
case NI_Sve2_DotProductComplex:
488+
case NI_Sve2_DotProductRotateComplex:
489489
immLowerBound = 0;
490490
immUpperBound = 3;
491491
break;
@@ -511,7 +511,7 @@ void HWIntrinsicInfo::lookupImmBounds(
511511
}
512512
break;
513513

514-
case NI_Sve2_DotProductComplexBySelectedIndex:
514+
case NI_Sve2_DotProductRotateComplexBySelectedIndex:
515515
if (immNumber == 1)
516516
{
517517
// Bounds for rotation
@@ -3215,7 +3215,7 @@ GenTree* Compiler::impSpecialIntrinsic(NamedIntrinsic intrinsic,
32153215
}
32163216

32173217
case NI_Sve_MultiplyAddRotateComplexBySelectedScalar:
3218-
case NI_Sve2_DotProductComplexBySelectedIndex:
3218+
case NI_Sve2_DotProductRotateComplexBySelectedIndex:
32193219
{
32203220
assert(sig->numArgs == 5);
32213221
assert(!isScalar);

src/coreclr/jit/hwintrinsiccodegenarm64.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2737,7 +2737,7 @@ void CodeGen::genHWIntrinsic(GenTreeHWIntrinsic* node)
27372737
GetEmitter()->emitInsSve_R_R_R(ins, emitSize, targetReg, op3Reg, op1Reg, INS_OPTS_SCALABLE_D);
27382738
break;
27392739

2740-
case NI_Sve2_DotProductComplex:
2740+
case NI_Sve2_DotProductRotateComplex:
27412741
{
27422742
assert(isRMW);
27432743
assert(hasImmediateOperand);
@@ -2758,7 +2758,7 @@ void CodeGen::genHWIntrinsic(GenTreeHWIntrinsic* node)
27582758
break;
27592759
}
27602760

2761-
case NI_Sve2_DotProductComplexBySelectedIndex:
2761+
case NI_Sve2_DotProductRotateComplexBySelectedIndex:
27622762
{
27632763
assert(isRMW);
27642764
assert(hasImmediateOperand);

src/coreclr/jit/hwintrinsiclistarm64sve.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -334,8 +334,8 @@ HARDWARE_INTRINSIC(Sve2, BitwiseClearXor,
334334
HARDWARE_INTRINSIC(Sve2, BitwiseSelect, -1, 3, {INS_sve_bsl, INS_sve_bsl, INS_sve_bsl, INS_sve_bsl, INS_sve_bsl, INS_sve_bsl, INS_sve_bsl, INS_sve_bsl, INS_invalid, INS_invalid}, HW_Category_SIMD, HW_Flag_Scalable|HW_Flag_SpecialCodeGen|HW_Flag_HasRMWSemantics)
335335
HARDWARE_INTRINSIC(Sve2, BitwiseSelectLeftInverted, -1, 3, {INS_sve_bsl1n, INS_sve_bsl1n, INS_sve_bsl1n, INS_sve_bsl1n, INS_sve_bsl1n, INS_sve_bsl1n, INS_sve_bsl1n, INS_sve_bsl1n, INS_invalid, INS_invalid}, HW_Category_SIMD, HW_Flag_Scalable|HW_Flag_SpecialCodeGen|HW_Flag_HasRMWSemantics)
336336
HARDWARE_INTRINSIC(Sve2, BitwiseSelectRightInverted, -1, 3, {INS_sve_bsl2n, INS_sve_bsl2n, INS_sve_bsl2n, INS_sve_bsl2n, INS_sve_bsl2n, INS_sve_bsl2n, INS_sve_bsl2n, INS_sve_bsl2n, INS_invalid, INS_invalid}, HW_Category_SIMD, HW_Flag_Scalable|HW_Flag_SpecialCodeGen|HW_Flag_HasRMWSemantics)
337-
HARDWARE_INTRINSIC(Sve2, DotProductComplex, -1, 4, {INS_invalid, INS_invalid, INS_invalid, INS_invalid, INS_sve_cdot, INS_invalid, INS_sve_cdot, INS_invalid, INS_invalid, INS_invalid}, HW_Category_SIMD, HW_Flag_Scalable|HW_Flag_HasRMWSemantics|HW_Flag_SpecialCodeGen|HW_Flag_HasImmediateOperand)
338-
HARDWARE_INTRINSIC(Sve2, DotProductComplexBySelectedIndex, -1, 5, {INS_sve_cdot, INS_invalid, INS_sve_cdot, INS_invalid, INS_invalid, INS_invalid, INS_invalid, INS_invalid, INS_invalid, INS_invalid}, HW_Category_SIMD, HW_Flag_Scalable|HW_Flag_HasRMWSemantics|HW_Flag_SpecialCodeGen|HW_Flag_HasImmediateOperand|HW_Flag_LowVectorOperation|HW_Flag_SpecialImport|HW_Flag_BaseTypeFromSecondArg)
337+
HARDWARE_INTRINSIC(Sve2, DotProductRotateComplex, -1, 4, {INS_invalid, INS_invalid, INS_invalid, INS_invalid, INS_sve_cdot, INS_invalid, INS_sve_cdot, INS_invalid, INS_invalid, INS_invalid}, HW_Category_SIMD, HW_Flag_Scalable|HW_Flag_HasRMWSemantics|HW_Flag_SpecialCodeGen|HW_Flag_HasImmediateOperand)
338+
HARDWARE_INTRINSIC(Sve2, DotProductRotateComplexBySelectedIndex, -1, 5, {INS_sve_cdot, INS_invalid, INS_sve_cdot, INS_invalid, INS_invalid, INS_invalid, INS_invalid, INS_invalid, INS_invalid, INS_invalid}, HW_Category_SIMD, HW_Flag_Scalable|HW_Flag_HasRMWSemantics|HW_Flag_SpecialCodeGen|HW_Flag_HasImmediateOperand|HW_Flag_LowVectorOperation|HW_Flag_SpecialImport|HW_Flag_BaseTypeFromSecondArg)
339339
HARDWARE_INTRINSIC(Sve2, FusedAddHalving, -1, -1, {INS_sve_shadd, INS_sve_uhadd, INS_sve_shadd, INS_sve_uhadd, INS_sve_shadd, INS_sve_uhadd, INS_sve_shadd, INS_sve_uhadd, INS_invalid, INS_invalid}, HW_Category_SIMD, HW_Flag_Scalable|HW_Flag_EmbeddedMaskedOperation|HW_Flag_HasRMWSemantics|HW_Flag_LowMaskedOperation)
340340
HARDWARE_INTRINSIC(Sve2, FusedSubtractHalving, -1, -1, {INS_sve_shsub, INS_sve_uhsub, INS_sve_shsub, INS_sve_uhsub, INS_sve_shsub, INS_sve_uhsub, INS_sve_shsub, INS_sve_uhsub, INS_invalid, INS_invalid}, HW_Category_SIMD, HW_Flag_Scalable|HW_Flag_EmbeddedMaskedOperation|HW_Flag_HasRMWSemantics|HW_Flag_LowMaskedOperation)
341341
HARDWARE_INTRINSIC(Sve2, InterleavingXorEvenOdd, -1, 3, {INS_sve_eorbt, INS_sve_eorbt, INS_sve_eorbt, INS_sve_eorbt, INS_sve_eorbt, INS_sve_eorbt, INS_sve_eorbt, INS_sve_eorbt, INS_invalid, INS_invalid}, HW_Category_SIMD, HW_Flag_Scalable|HW_Flag_HasRMWSemantics)

src/coreclr/jit/lowerarmarch.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4091,7 +4091,7 @@ void Lowering::ContainCheckHWIntrinsic(GenTreeHWIntrinsic* node)
40914091
case NI_Sve_FusedMultiplyAddBySelectedScalar:
40924092
case NI_Sve_FusedMultiplySubtractBySelectedScalar:
40934093
case NI_Sve_MultiplyAddRotateComplex:
4094-
case NI_Sve2_DotProductComplex:
4094+
case NI_Sve2_DotProductRotateComplex:
40954095
assert(hasImmediateOperand);
40964096
assert(varTypeIsIntegral(intrin.op4));
40974097
if (intrin.op4->IsCnsIntOrI())
@@ -4149,7 +4149,7 @@ void Lowering::ContainCheckHWIntrinsic(GenTreeHWIntrinsic* node)
41494149
break;
41504150

41514151
case NI_Sve_MultiplyAddRotateComplexBySelectedScalar:
4152-
case NI_Sve2_DotProductComplexBySelectedIndex:
4152+
case NI_Sve2_DotProductRotateComplexBySelectedIndex:
41534153
assert(hasImmediateOperand);
41544154
assert(varTypeIsIntegral(intrin.op4));
41554155
assert(varTypeIsIntegral(intrin.op5));

src/coreclr/jit/lsraarm64.cpp

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1710,7 +1710,7 @@ void LinearScan::BuildHWIntrinsicImmediate(GenTreeHWIntrinsic* intrinsicTree, co
17101710
break;
17111711

17121712
case NI_Sve_MultiplyAddRotateComplexBySelectedScalar:
1713-
case NI_Sve2_DotProductComplexBySelectedIndex:
1713+
case NI_Sve2_DotProductRotateComplexBySelectedIndex:
17141714
// This API has two immediates, one of which is used to index pairs of floats in a vector.
17151715
// For a vector width of 128 bits, this means the index's range is [0, 1],
17161716
// which means we will skip the above jump table register check,
@@ -1735,7 +1735,7 @@ void LinearScan::BuildHWIntrinsicImmediate(GenTreeHWIntrinsic* intrinsicTree, co
17351735
break;
17361736

17371737
case NI_Sve_MultiplyAddRotateComplex:
1738-
case NI_Sve2_DotProductComplex:
1738+
case NI_Sve2_DotProductRotateComplex:
17391739
needBranchTargetReg = !intrin.op4->isContainedIntOrIImmed();
17401740
break;
17411741

@@ -2166,7 +2166,7 @@ SingleTypeRegSet LinearScan::getOperandCandidates(GenTreeHWIntrinsic* intrinsicT
21662166
case NI_Sve_FusedMultiplyAddBySelectedScalar:
21672167
case NI_Sve_FusedMultiplySubtractBySelectedScalar:
21682168
case NI_Sve_MultiplyAddRotateComplexBySelectedScalar:
2169-
case NI_Sve2_DotProductComplexBySelectedIndex:
2169+
case NI_Sve2_DotProductRotateComplexBySelectedIndex:
21702170
case NI_Sve2_MultiplyAddBySelectedScalar:
21712171
case NI_Sve2_MultiplyBySelectedScalarWideningEvenAndAdd:
21722172
case NI_Sve2_MultiplyBySelectedScalarWideningOddAndAdd:
@@ -2188,7 +2188,7 @@ SingleTypeRegSet LinearScan::getOperandCandidates(GenTreeHWIntrinsic* intrinsicT
21882188
if (isLowVectorOpNum)
21892189
{
21902190
unsigned baseElementSize = genTypeSize(intrin.baseType);
2191-
if (intrin.id == NI_Sve2_DotProductComplexBySelectedIndex)
2191+
if (intrin.id == NI_Sve2_DotProductRotateComplexBySelectedIndex)
21922192
{
21932193
baseElementSize = intrin.baseType == TYP_BYTE ? 4 : 8;
21942194
}

src/libraries/System.Private.CoreLib/src/System/Runtime/Intrinsics/Arm/Sve2.PlatformNotSupported.cs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1008,25 +1008,25 @@ internal Arm64() { }
10081008
/// svint32_t svcdot[_s32](svint32_t op1, svint8_t op2, svint8_t op3, uint64_t imm_rotation)
10091009
/// CDOT Ztied1.S, Zop2.B, Zop3.B, #imm_rotation
10101010
/// </summary>
1011-
public static Vector<int> DotProductComplex(Vector<int> op1, Vector<sbyte> op2, Vector<sbyte> op3, [ConstantExpected(Min = 0, Max = (byte)(3))] byte rotation) { throw new PlatformNotSupportedException(); }
1011+
public static Vector<int> DotProductRotateComplex(Vector<int> op1, Vector<sbyte> op2, Vector<sbyte> op3, [ConstantExpected(Min = 0, Max = (byte)(3))] byte rotation) { throw new PlatformNotSupportedException(); }
10121012

10131013
/// <summary>
10141014
/// svint64_t svcdot[_s64](svint64_t op1, svint16_t op2, svint16_t op3, uint64_t imm_rotation)
10151015
/// CDOT Ztied1.D, Zop2.H, Zop3.H, #imm_rotation
10161016
/// </summary>
1017-
public static Vector<long> DotProductComplex(Vector<long> op1, Vector<short> op2, Vector<short> op3, [ConstantExpected(Min = 0, Max = (byte)(3))] byte rotation) { throw new PlatformNotSupportedException(); }
1017+
public static Vector<long> DotProductRotateComplex(Vector<long> op1, Vector<short> op2, Vector<short> op3, [ConstantExpected(Min = 0, Max = (byte)(3))] byte rotation) { throw new PlatformNotSupportedException(); }
10181018

10191019
/// <summary>
10201020
/// svint32_t svcdot_lane[_s32](svint32_t op1, svint8_t op2, svint8_t op3, uint64_t imm_index, uint64_t imm_rotation)
10211021
/// CDOT Ztied1.S, Zop2.B, Zop3.B[imm_index], #imm_rotation
10221022
/// </summary>
1023-
public static Vector<int> DotProductComplexBySelectedIndex(Vector<int> op1, Vector<sbyte> op2, Vector<sbyte> op3, byte imm_index, [ConstantExpected] byte rotation) { throw new PlatformNotSupportedException(); }
1023+
public static Vector<int> DotProductRotateComplexBySelectedIndex(Vector<int> op1, Vector<sbyte> op2, Vector<sbyte> op3, [ConstantExpected(Min = 0, Max = (byte)(3))] byte imm_index, [ConstantExpected] byte rotation) { throw new PlatformNotSupportedException(); }
10241024

10251025
/// <summary>
10261026
/// svint64_t svcdot_lane[_s64](svint64_t op1, svint16_t op2, svint16_t op3, uint64_t imm_index, uint64_t imm_rotation)
10271027
/// CDOT Ztied1.D, Zop2.H, Zop3.H[imm_index], #imm_rotation
10281028
/// </summary>
1029-
public static Vector<long> DotProductComplexBySelectedIndex(Vector<long> op1, Vector<short> op2, Vector<short> op3, byte imm_index, [ConstantExpected] byte rotation) { throw new PlatformNotSupportedException(); }
1029+
public static Vector<long> DotProductRotateComplexBySelectedIndex(Vector<long> op1, Vector<short> op2, Vector<short> op3, [ConstantExpected(Min = 0, Max = (byte)(1))] byte imm_index, [ConstantExpected] byte rotation) { throw new PlatformNotSupportedException(); }
10301030

10311031

10321032
// Halving add

src/libraries/System.Private.CoreLib/src/System/Runtime/Intrinsics/Arm/Sve2.cs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1008,25 +1008,25 @@ internal Arm64() { }
10081008
/// svint32_t svcdot[_s32](svint32_t op1, svint8_t op2, svint8_t op3, uint64_t imm_rotation)
10091009
/// CDOT Ztied1.S, Zop2.B, Zop3.B, #imm_rotation
10101010
/// </summary>
1011-
public static Vector<int> DotProductComplex(Vector<int> op1, Vector<sbyte> op2, Vector<sbyte> op3, [ConstantExpected(Min = 0, Max = (byte)(3))] byte rotation) => DotProductComplex(op1, op2, op3, rotation);
1011+
public static Vector<int> DotProductRotateComplex(Vector<int> op1, Vector<sbyte> op2, Vector<sbyte> op3, [ConstantExpected(Min = 0, Max = (byte)(3))] byte rotation) => DotProductRotateComplex(op1, op2, op3, rotation);
10121012

10131013
/// <summary>
10141014
/// svint64_t svcdot[_s64](svint64_t op1, svint16_t op2, svint16_t op3, uint64_t imm_rotation)
10151015
/// CDOT Ztied1.D, Zop2.H, Zop3.H, #imm_rotation
10161016
/// </summary>
1017-
public static Vector<long> DotProductComplex(Vector<long> op1, Vector<short> op2, Vector<short> op3, [ConstantExpected(Min = 0, Max = (byte)(3))] byte rotation) => DotProductComplex(op1, op2, op3, rotation);
1017+
public static Vector<long> DotProductRotateComplex(Vector<long> op1, Vector<short> op2, Vector<short> op3, [ConstantExpected(Min = 0, Max = (byte)(3))] byte rotation) => DotProductRotateComplex(op1, op2, op3, rotation);
10181018

10191019
/// <summary>
10201020
/// svint32_t svcdot_lane[_s32](svint32_t op1, svint8_t op2, svint8_t op3, uint64_t imm_index, uint64_t imm_rotation)
10211021
/// CDOT Ztied1.S, Zop2.B, Zop3.B[imm_index], #imm_rotation
10221022
/// </summary>
1023-
public static Vector<int> DotProductComplexBySelectedIndex(Vector<int> op1, Vector<sbyte> op2, Vector<sbyte> op3, [ConstantExpected(Min = 0, Max = (byte)(3))] byte imm_index, [ConstantExpected(Min = 0, Max = (byte)(3))] byte rotation) => DotProductComplexBySelectedIndex(op1, op2, op3, imm_index, rotation);
1023+
public static Vector<int> DotProductRotateComplexBySelectedIndex(Vector<int> op1, Vector<sbyte> op2, Vector<sbyte> op3, [ConstantExpected(Min = 0, Max = (byte)(3))] byte imm_index, [ConstantExpected(Min = 0, Max = (byte)(3))] byte rotation) => DotProductRotateComplexBySelectedIndex(op1, op2, op3, imm_index, rotation);
10241024

10251025
/// <summary>
10261026
/// svint64_t svcdot_lane[_s64](svint64_t op1, svint16_t op2, svint16_t op3, uint64_t imm_index, uint64_t imm_rotation)
10271027
/// CDOT Ztied1.D, Zop2.H, Zop3.H[imm_index], #imm_rotation
10281028
/// </summary>
1029-
public static Vector<long> DotProductComplexBySelectedIndex(Vector<long> op1, Vector<short> op2, Vector<short> op3, [ConstantExpected(Min = 0, Max = (byte)(1))] byte imm_index, [ConstantExpected(Min = 0, Max = (byte)(3))] byte rotation) => DotProductComplexBySelectedIndex(op1, op2, op3, imm_index, rotation);
1029+
public static Vector<long> DotProductRotateComplexBySelectedIndex(Vector<long> op1, Vector<short> op2, Vector<short> op3, [ConstantExpected(Min = 0, Max = (byte)(1))] byte imm_index, [ConstantExpected(Min = 0, Max = (byte)(3))] byte rotation) => DotProductRotateComplexBySelectedIndex(op1, op2, op3, imm_index, rotation);
10301030

10311031

10321032
// Halving add

src/libraries/System.Runtime.Intrinsics/ref/System.Runtime.Intrinsics.cs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6253,10 +6253,10 @@ internal Arm64() { }
62536253
public static System.Numerics.Vector<ushort> BitwiseSelectRightInverted(System.Numerics.Vector<ushort> select, System.Numerics.Vector<ushort> left, System.Numerics.Vector<ushort> right) { throw null; }
62546254
public static System.Numerics.Vector<uint> BitwiseSelectRightInverted(System.Numerics.Vector<uint> select, System.Numerics.Vector<uint> left, System.Numerics.Vector<uint> right) { throw null; }
62556255
public static System.Numerics.Vector<ulong> BitwiseSelectRightInverted(System.Numerics.Vector<ulong> select, System.Numerics.Vector<ulong> left, System.Numerics.Vector<ulong> right) { throw null; }
6256-
public static System.Numerics.Vector<int> DotProductComplex(System.Numerics.Vector<int> op1, System.Numerics.Vector<sbyte> op2, System.Numerics.Vector<sbyte> op3, [ConstantExpected(Min = 0, Max = (byte)(3))] byte rotation) { throw null; }
6257-
public static System.Numerics.Vector<long> DotProductComplex(System.Numerics.Vector<long> op1, System.Numerics.Vector<short> op2, System.Numerics.Vector<short> op3, [ConstantExpected(Min = 0, Max = (byte)(3))] byte rotation) { throw null; }
6258-
public static System.Numerics.Vector<int> DotProductComplexBySelectedIndex(System.Numerics.Vector<int> op1, System.Numerics.Vector<sbyte> op2, System.Numerics.Vector<sbyte> op3, byte imm_index, [ConstantExpected(Min = 0, Max = (byte)(3))] byte rotation) { throw null; }
6259-
public static System.Numerics.Vector<long> DotProductComplexBySelectedIndex(System.Numerics.Vector<long> op1, System.Numerics.Vector<short> op2, System.Numerics.Vector<short> op3, byte imm_index, [ConstantExpected(Min = 0, Max = (byte)(3))] byte rotation) { throw null; }
6256+
public static System.Numerics.Vector<int> DotProductRotateComplex(System.Numerics.Vector<int> op1, System.Numerics.Vector<sbyte> op2, System.Numerics.Vector<sbyte> op3, [ConstantExpected(Min = 0, Max = (byte)(3))] byte rotation) { throw null; }
6257+
public static System.Numerics.Vector<long> DotProductRotateComplex(System.Numerics.Vector<long> op1, System.Numerics.Vector<short> op2, System.Numerics.Vector<short> op3, [ConstantExpected(Min = 0, Max = (byte)(3))] byte rotation) { throw null; }
6258+
public static System.Numerics.Vector<int> DotProductRotateComplexBySelectedIndex(System.Numerics.Vector<int> op1, System.Numerics.Vector<sbyte> op2, System.Numerics.Vector<sbyte> op3, [ConstantExpected(Min = 0, Max = (byte)(3))] byte imm_index, [ConstantExpected(Min = 0, Max = (byte)(3))] byte rotation) { throw null; }
6259+
public static System.Numerics.Vector<long> DotProductRotateComplexBySelectedIndex(System.Numerics.Vector<long> op1, System.Numerics.Vector<short> op2, System.Numerics.Vector<short> op3, [ConstantExpected(Min = 0, Max = (byte)(1))] byte imm_index, [ConstantExpected(Min = 0, Max = (byte)(3))] byte rotation) { throw null; }
62606260
public static System.Numerics.Vector<byte> FusedAddHalving(System.Numerics.Vector<byte> left, System.Numerics.Vector<byte> right) { throw null; }
62616261
public static System.Numerics.Vector<short> FusedAddHalving(System.Numerics.Vector<short> left, System.Numerics.Vector<short> right) { throw null; }
62626262
public static System.Numerics.Vector<int> FusedAddHalving(System.Numerics.Vector<int> left, System.Numerics.Vector<int> right) { throw null; }

0 commit comments

Comments
 (0)