Skip to content

Commit

Permalink
Merge Avx10v1 and Avx10v1.V256. Rename Avx10.cs to Avx10v1.cs
Browse files Browse the repository at this point in the history
  • Loading branch information
khushal1996 committed May 9, 2024
1 parent 7da1616 commit e8973b2
Show file tree
Hide file tree
Showing 96 changed files with 4,189 additions and 4,403 deletions.
12 changes: 0 additions & 12 deletions src/coreclr/jit/codegenxarch.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -5647,8 +5647,6 @@ void CodeGen::genCodeForStoreInd(GenTreeStoreInd* tree)
case NI_AVX512F_VL_ConvertToVector128UInt32WithSaturation:
case NI_AVX10v1_ConvertToVector128UInt32:
case NI_AVX10v1_ConvertToVector128UInt32WithSaturation:
case NI_AVX10v1_V256_ConvertToVector128UInt32:
case NI_AVX10v1_V256_ConvertToVector128UInt32WithSaturation:
{
assert(!varTypeIsFloating(baseType));
FALLTHROUGH;
Expand Down Expand Up @@ -5696,16 +5694,6 @@ void CodeGen::genCodeForStoreInd(GenTreeStoreInd* tree)
case NI_AVX10v1_ConvertToVector128SByteWithSaturation:
case NI_AVX10v1_ConvertToVector128UInt16:
case NI_AVX10v1_ConvertToVector128UInt16WithSaturation:
case NI_AVX10v1_V256_ConvertToVector128Byte:
case NI_AVX10v1_V256_ConvertToVector128ByteWithSaturation:
case NI_AVX10v1_V256_ConvertToVector128Int16:
case NI_AVX10v1_V256_ConvertToVector128Int16WithSaturation:
case NI_AVX10v1_V256_ConvertToVector128Int32:
case NI_AVX10v1_V256_ConvertToVector128Int32WithSaturation:
case NI_AVX10v1_V256_ConvertToVector128SByte:
case NI_AVX10v1_V256_ConvertToVector128SByteWithSaturation:
case NI_AVX10v1_V256_ConvertToVector128UInt16:
case NI_AVX10v1_V256_ConvertToVector128UInt16WithSaturation:
{
// These intrinsics are "ins reg/mem, xmm"
ins = HWIntrinsicInfo::lookupIns(intrinsicId, baseType);
Expand Down
14 changes: 0 additions & 14 deletions src/coreclr/jit/gentree.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -19667,8 +19667,6 @@ bool GenTree::isContainableHWIntrinsic() const
case NI_AVX512F_VL_ConvertToVector128UInt32WithSaturation:
case NI_AVX10v1_ConvertToVector128UInt32:
case NI_AVX10v1_ConvertToVector128UInt32WithSaturation:
case NI_AVX10v1_V256_ConvertToVector128UInt32:
case NI_AVX10v1_V256_ConvertToVector128UInt32WithSaturation:
{
if (varTypeIsFloating(AsHWIntrinsic()->GetSimdBaseType()))
{
Expand Down Expand Up @@ -19736,16 +19734,6 @@ bool GenTree::isContainableHWIntrinsic() const
case NI_AVX10v1_ConvertToVector128SByteWithSaturation:
case NI_AVX10v1_ConvertToVector128UInt16:
case NI_AVX10v1_ConvertToVector128UInt16WithSaturation:
case NI_AVX10v1_V256_ConvertToVector128Byte:
case NI_AVX10v1_V256_ConvertToVector128ByteWithSaturation:
case NI_AVX10v1_V256_ConvertToVector128Int16:
case NI_AVX10v1_V256_ConvertToVector128Int16WithSaturation:
case NI_AVX10v1_V256_ConvertToVector128Int32:
case NI_AVX10v1_V256_ConvertToVector128Int32WithSaturation:
case NI_AVX10v1_V256_ConvertToVector128SByte:
case NI_AVX10v1_V256_ConvertToVector128SByteWithSaturation:
case NI_AVX10v1_V256_ConvertToVector128UInt16:
case NI_AVX10v1_V256_ConvertToVector128UInt16WithSaturation:
case NI_AVX10v1_V512_ExtractVector128:
case NI_AVX10v1_V512_ExtractVector256:
{
Expand Down Expand Up @@ -19837,7 +19825,6 @@ bool GenTree::isRMWHWIntrinsic(Compiler* comp)
case NI_AVX512F_FixupScalar:
case NI_AVX512F_VL_Fixup:
case NI_AVX10v1_Fixup:
case NI_AVX10v1_V256_Fixup:
{
// We are actually only RMW in the case where the lookup table
// has any value that could result in `op1` being picked. So
Expand Down Expand Up @@ -19889,7 +19876,6 @@ bool GenTree::isRMWHWIntrinsic(Compiler* comp)
case NI_AVX512F_TernaryLogic:
case NI_AVX512F_VL_TernaryLogic:
case NI_AVX10v1_TernaryLogic:
case NI_AVX10v1_V256_TernaryLogic:
{
// We may not be RMW depending on the control byte as there
// are many operations that do not use all three inputs.
Expand Down
14 changes: 1 addition & 13 deletions src/coreclr/jit/hwintrinsiccodegenxarch.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -1221,7 +1221,7 @@ void CodeGen::genHWIntrinsic_R_R_R_RM_I(GenTreeHWIntrinsic* node, instruction in

#if defined(DEBUG)
NamedIntrinsic intrinsicId = node->GetHWIntrinsicId();
assert((intrinsicId == NI_AVX512F_TernaryLogic) || (intrinsicId == NI_AVX512F_VL_TernaryLogic) || (intrinsicId == NI_AVX10v1_TernaryLogic) || (intrinsicId == NI_AVX10v1_V256_TernaryLogic));
assert((intrinsicId == NI_AVX512F_TernaryLogic) || (intrinsicId == NI_AVX512F_VL_TernaryLogic) || (intrinsicId == NI_AVX10v1_TernaryLogic));

uint8_t control = static_cast<uint8_t>(ival);
const TernaryLogicInfo& info = TernaryLogicInfo::lookup(control);
Expand Down Expand Up @@ -2746,8 +2746,6 @@ void CodeGen::genAvxFamilyIntrinsic(GenTreeHWIntrinsic* node, insOpts instOption
case NI_AVX512F_VL_ConvertToVector128UInt32WithSaturation:
case NI_AVX10v1_ConvertToVector128UInt32:
case NI_AVX10v1_ConvertToVector128UInt32WithSaturation:
case NI_AVX10v1_V256_ConvertToVector128UInt32:
case NI_AVX10v1_V256_ConvertToVector128UInt32WithSaturation:
{
if (varTypeIsFloating(baseType))
{
Expand Down Expand Up @@ -2800,16 +2798,6 @@ void CodeGen::genAvxFamilyIntrinsic(GenTreeHWIntrinsic* node, insOpts instOption
case NI_AVX10v1_ConvertToVector128SByteWithSaturation:
case NI_AVX10v1_ConvertToVector128UInt16:
case NI_AVX10v1_ConvertToVector128UInt16WithSaturation:
case NI_AVX10v1_V256_ConvertToVector128Byte:
case NI_AVX10v1_V256_ConvertToVector128ByteWithSaturation:
case NI_AVX10v1_V256_ConvertToVector128Int16:
case NI_AVX10v1_V256_ConvertToVector128Int16WithSaturation:
case NI_AVX10v1_V256_ConvertToVector128Int32:
case NI_AVX10v1_V256_ConvertToVector128Int32WithSaturation:
case NI_AVX10v1_V256_ConvertToVector128SByte:
case NI_AVX10v1_V256_ConvertToVector128SByteWithSaturation:
case NI_AVX10v1_V256_ConvertToVector128UInt16:
case NI_AVX10v1_V256_ConvertToVector128UInt16WithSaturation:
{
instruction ins = HWIntrinsicInfo::lookupIns(intrinsicId, baseType);

Expand Down
Loading

0 comments on commit e8973b2

Please sign in to comment.