Skip to content

Commit eacf11a

Browse files
committed
Update hwintrinsicxarch.cpp
1 parent 70e68b2 commit eacf11a

File tree

1 file changed

+7
-7
lines changed

1 file changed

+7
-7
lines changed

src/coreclr/jit/hwintrinsicxarch.cpp

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -3656,8 +3656,14 @@ GenTree* Compiler::impSpecialIntrinsic(NamedIntrinsic intrinsic,
36563656
bool canBecomeValidForShuffle = false;
36573657
bool validForShuffle = IsValidForShuffle(indices, simdSize, simdBaseType, &canBecomeValidForShuffle);
36583658

3659+
// If it isn't valid for shuffle (and can't become valid later), then give up now.
3660+
if (!canBecomeValidForShuffle)
3661+
{
3662+
return nullptr;
3663+
}
3664+
36593665
// If the indices might become constant later, then we don't emit for now, delay until later.
3660-
if (canBecomeValidForShuffle && (!validForShuffle || !indices->IsCnsVec()))
3666+
if (!validForShuffle || !indices->IsCnsVec())
36613667
{
36623668
assert(sig->numArgs == 2);
36633669

@@ -3675,12 +3681,6 @@ GenTree* Compiler::impSpecialIntrinsic(NamedIntrinsic intrinsic,
36753681
}
36763682
}
36773683

3678-
// If it isn't valid for shuffle (and can't become valid later, due to above block), then give up now.
3679-
if (!validForShuffle)
3680-
{
3681-
return nullptr;
3682-
}
3683-
36843684
if (sig->numArgs == 2)
36853685
{
36863686
op2 = impSIMDPopStack();

0 commit comments

Comments
 (0)