Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ARM-SVE: Add LD/ST info to SVE instructions #105512 #106328

Merged
merged 1 commit into from
Aug 14, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
91 changes: 91 additions & 0 deletions src/coreclr/jit/emitarm64.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -14817,6 +14817,10 @@ void emitter::getMemoryOperation(instrDesc* id, unsigned* pMemAccessKind, bool*
case IF_LS_3A:
case IF_LS_3F:
case IF_LS_3G:
case IF_SVE_ID_2A:
case IF_SVE_IE_2A:
case IF_SVE_JG_2A:
case IF_SVE_JH_2A:
if (isStackRegister(id->idReg2()))
{
isLocalAccess = true;
Expand All @@ -14827,11 +14831,98 @@ void emitter::getMemoryOperation(instrDesc* id, unsigned* pMemAccessKind, bool*
case IF_LS_3C:
case IF_LS_3D:
case IF_LS_3E:
case IF_SVE_HW_4A:
case IF_SVE_HW_4A_A:
case IF_SVE_HW_4A_B:
case IF_SVE_HW_4A_C:
case IF_SVE_HW_4B:
case IF_SVE_HW_4B_D:
case IF_SVE_IC_3A:
case IF_SVE_IC_3A_A:
case IF_SVE_IC_3A_B:
case IF_SVE_IC_3A_C:
case IF_SVE_IG_4A:
case IF_SVE_IG_4A_D:
case IF_SVE_IG_4A_E:
case IF_SVE_IG_4A_F:
case IF_SVE_IG_4A_G:
case IF_SVE_IH_3A:
case IF_SVE_IH_3A_A:
case IF_SVE_IH_3A_F:
case IF_SVE_II_4A:
case IF_SVE_II_4A_B:
case IF_SVE_II_4A_H:
case IF_SVE_IJ_3A:
case IF_SVE_IJ_3A_D:
case IF_SVE_IJ_3A_E:
case IF_SVE_IJ_3A_F:
case IF_SVE_IJ_3A_G:
case IF_SVE_IK_4A:
case IF_SVE_IK_4A_F:
case IF_SVE_IK_4A_G:
case IF_SVE_IK_4A_H:
case IF_SVE_IK_4A_I:
case IF_SVE_IL_3A:
case IF_SVE_IL_3A_A:
case IF_SVE_IL_3A_B:
case IF_SVE_IL_3A_C:
case IF_SVE_IM_3A:
case IF_SVE_IN_4A:
case IF_SVE_IO_3A:
case IF_SVE_IP_4A:
case IF_SVE_IQ_3A:
case IF_SVE_IR_4A:
case IF_SVE_IS_3A:
case IF_SVE_IT_4A:
case IF_SVE_IU_4A:
case IF_SVE_IU_4A_A:
case IF_SVE_IU_4A_C:
case IF_SVE_IU_4B:
case IF_SVE_IU_4B_B:
case IF_SVE_IU_4B_D:
case IF_SVE_JB_4A:
case IF_SVE_JC_4A:
case IF_SVE_JD_4A:
case IF_SVE_JD_4B:
case IF_SVE_JD_4C:
case IF_SVE_JD_4C_A:
case IF_SVE_JE_3A:
case IF_SVE_JF_4A:
case IF_SVE_JJ_4A:
case IF_SVE_JJ_4A_B:
case IF_SVE_JJ_4A_C:
case IF_SVE_JJ_4A_D:
case IF_SVE_JJ_4B:
case IF_SVE_JJ_4B_C:
case IF_SVE_JJ_4B_E:
case IF_SVE_JK_4A:
case IF_SVE_JK_4A_B:
case IF_SVE_JK_4B:
case IF_SVE_JM_3A:
case IF_SVE_JN_3A:
case IF_SVE_JN_3B:
case IF_SVE_JN_3C:
case IF_SVE_JN_3C_D:
case IF_SVE_JO_3A:
if (isStackRegister(id->idReg3()))
{
isLocalAccess = true;
}
break;

case IF_SVE_HX_3A_B:
case IF_SVE_HX_3A_E:
case IF_SVE_IF_4A:
case IF_SVE_IF_4A_A:
case IF_SVE_IV_3A:
case IF_SVE_IW_4A:
case IF_SVE_IX_4A:
case IF_SVE_IY_4A:
case IF_SVE_IZ_4A:
case IF_SVE_IZ_4A_A:
case IF_SVE_JA_4A:
case IF_SVE_JI_3A_A:
case IF_SVE_JL_3A:
case IF_LARGELDC:
isLocalAccess = false;
break;
Expand Down
Loading
Loading