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

Arm64/Sve: Removal of ConditionalSelect's operands when mask is AllFalse/AllTrue #104116

Closed
kunalspathak opened this issue Jun 27, 2024 · 2 comments · Fixed by #104175
Closed
Labels
area-CodeGen-coreclr CLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMI arm-sve Work related to arm64 SVE/SVE2 support
Milestone

Comments

@kunalspathak
Copy link
Member

Today, for ConditionalSelect, we will just eliminate trueValue , if we see the mask is AllZero.

else if (op1->IsVectorZero())
{
return retNode->AsHWIntrinsic()->Op(3);
}

This will fail if trueValue has a side-effect or a method call.

https://godbolt.org/z/qbbYenW9j

Thanks @TIHan for bringing it to attention.

@kunalspathak kunalspathak added the arm-sve Work related to arm64 SVE/SVE2 support label Jun 27, 2024
@dotnet-issue-labeler dotnet-issue-labeler bot added the area-CodeGen-coreclr CLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMI label Jun 27, 2024
@dotnet-policy-service dotnet-policy-service bot added the untriaged New issue has not been triaged by the area owner label Jun 27, 2024
@kunalspathak kunalspathak removed the untriaged New issue has not been triaged by the area owner label Jun 27, 2024
Copy link
Contributor

Tagging subscribers to this area: @JulieLeeMSFT, @jakobbotsch
See info in area-owners.md if you want to be subscribed.

@kunalspathak kunalspathak added this to the 9.0.0 milestone Jun 27, 2024
@kunalspathak
Copy link
Member Author

@dotnet/arm64-contrib

@kunalspathak kunalspathak changed the title Arm64/Sve: Removal of ConditionalSelect's trueValue node when mask is AllZero Arm64/Sve: Removal of ConditionalSelect's operands when mask is AllFalse/AllTrue Jun 27, 2024
@github-actions github-actions bot locked and limited conversation to collaborators Jul 31, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
area-CodeGen-coreclr CLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMI arm-sve Work related to arm64 SVE/SVE2 support
Projects
None yet
1 participant