Skip to content

Commit

Permalink
Reorder declaration of InstructionSet_EVEX to proper position. Run fo…
Browse files Browse the repository at this point in the history
…rmatting adn resolve errors introduced when merging with main
  • Loading branch information
khushal1996 committed Jun 6, 2024
1 parent b1509c4 commit e21bcff
Show file tree
Hide file tree
Showing 7 changed files with 220 additions and 215 deletions.
176 changes: 88 additions & 88 deletions src/coreclr/inc/corinfoinstructionset.h

Large diffs are not rendered by default.

10 changes: 5 additions & 5 deletions src/coreclr/inc/jiteeversionguid.h
Original file line number Diff line number Diff line change
Expand Up @@ -43,11 +43,11 @@ typedef const GUID *LPCGUID;
#define GUID_DEFINED
#endif // !GUID_DEFINED

constexpr GUID JITEEVersionIdentifier = { /* 58e03d68-4c56-43a3-ab80-d3ca21dc6526 */
0x58e03d68,
0x4c56,
0x43a3,
{0xab, 0x80, 0xd3, 0xca, 0x21, 0xdc, 0x65, 0x26}
constexpr GUID JITEEVersionIdentifier = { /* 6e0b439f-0d18-4836-a486-4962af0cc948 */
0x6e0b439f,
0x0d18,
0x4836,
{0xa4, 0x86, 0x49, 0x62, 0xaf, 0x0c, 0xc9, 0x48}
};

//////////////////////////////////////////////////////////////////////////////////////////////////////////
Expand Down
21 changes: 13 additions & 8 deletions src/coreclr/jit/importercalls.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -3984,14 +3984,19 @@ GenTree* Compiler::impIntrinsic(GenTree* newobjThis,
// Vector128.CreateScalarUnsafe(z)
// ).ToScalar();

GenTree* op3 = gtNewSimdCreateScalarUnsafeNode(TYP_SIMD16, impPopStack().val, callJitType, 16);
GenTree* op2 = gtNewSimdCreateScalarUnsafeNode(TYP_SIMD16, impPopStack().val, callJitType, 16);
GenTree* op1 = gtNewSimdCreateScalarUnsafeNode(TYP_SIMD16, impPopStack().val, callJitType, 16);
retNode = compOpportunisticallyDependsOn(InstructionSet_AVX10v1)
? gtNewSimdHWIntrinsicNode(TYP_SIMD16, op1, op2, op3, NI_AVX10v1_MultiplyAddScalar,
callJitType, 16)
: gtNewSimdHWIntrinsicNode(TYP_SIMD16, op1, op2, op3, NI_FMA_MultiplyAddScalar,
callJitType, 16);
GenTree* op3 = impImplicitR4orR8Cast(impPopStack().val, callType);
GenTree* op2 = impImplicitR4orR8Cast(impPopStack().val, callType);
GenTree* op1 = impImplicitR4orR8Cast(impPopStack().val, callType);

op3 = gtNewSimdCreateScalarUnsafeNode(TYP_SIMD16, op3, callJitType, 16);
op2 = gtNewSimdCreateScalarUnsafeNode(TYP_SIMD16, op2, callJitType, 16);
op1 = gtNewSimdCreateScalarUnsafeNode(TYP_SIMD16, op1, callJitType, 16);

retNode = compOpportunisticallyDependsOn(InstructionSet_AVX10v1)
? gtNewSimdHWIntrinsicNode(TYP_SIMD16, op1, op2, op3, NI_AVX10v1_MultiplyAddScalar,
callJitType, 16)
: gtNewSimdHWIntrinsicNode(TYP_SIMD16, op1, op2, op3, NI_FMA_MultiplyAddScalar,
callJitType, 16);

retNode = gtNewSimdToScalarNode(callType, retNode, callJitType, 16);
break;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -98,6 +98,8 @@ public static class ReadyToRunInstructionSetHelper
case InstructionSet.X64_MOVBE_X64: return ReadyToRunInstructionSet.Movbe;
case InstructionSet.X64_X86Serialize: return ReadyToRunInstructionSet.X86Serialize;
case InstructionSet.X64_X86Serialize_X64: return ReadyToRunInstructionSet.X86Serialize;
case InstructionSet.X64_EVEX: return ReadyToRunInstructionSet.EVEX;
case InstructionSet.X64_EVEX_X64: return ReadyToRunInstructionSet.EVEX;
case InstructionSet.X64_AVX512F: return ReadyToRunInstructionSet.Avx512F;
case InstructionSet.X64_AVX512F_X64: return ReadyToRunInstructionSet.Avx512F;
case InstructionSet.X64_AVX512F_VL: return ReadyToRunInstructionSet.Avx512F_VL;
Expand Down Expand Up @@ -125,8 +127,6 @@ public static class ReadyToRunInstructionSetHelper
case InstructionSet.X64_VectorT128: return ReadyToRunInstructionSet.VectorT128;
case InstructionSet.X64_VectorT256: return ReadyToRunInstructionSet.VectorT256;
case InstructionSet.X64_VectorT512: return ReadyToRunInstructionSet.VectorT512;
case InstructionSet.X64_EVEX: return ReadyToRunInstructionSet.EVEX;
case InstructionSet.X64_EVEX_X64: return ReadyToRunInstructionSet.EVEX;

default: throw new Exception("Unknown instruction set");
}
Expand Down Expand Up @@ -177,6 +177,8 @@ public static class ReadyToRunInstructionSetHelper
case InstructionSet.X86_MOVBE_X64: return null;
case InstructionSet.X86_X86Serialize: return ReadyToRunInstructionSet.X86Serialize;
case InstructionSet.X86_X86Serialize_X64: return null;
case InstructionSet.X86_EVEX: return ReadyToRunInstructionSet.EVEX;
case InstructionSet.X86_EVEX_X64: return null;
case InstructionSet.X86_AVX512F: return ReadyToRunInstructionSet.Avx512F;
case InstructionSet.X86_AVX512F_X64: return null;
case InstructionSet.X86_AVX512F_VL: return ReadyToRunInstructionSet.Avx512F_VL;
Expand Down Expand Up @@ -204,8 +206,6 @@ public static class ReadyToRunInstructionSetHelper
case InstructionSet.X86_VectorT128: return ReadyToRunInstructionSet.VectorT128;
case InstructionSet.X86_VectorT256: return ReadyToRunInstructionSet.VectorT256;
case InstructionSet.X86_VectorT512: return ReadyToRunInstructionSet.VectorT512;
case InstructionSet.X86_EVEX: return ReadyToRunInstructionSet.EVEX;
case InstructionSet.X86_EVEX_X64: return null;

default: throw new Exception("Unknown instruction set");
}
Expand Down
Loading

0 comments on commit e21bcff

Please sign in to comment.