Skip to content

Arm64: Improve support for HW_Flag_ReturnsPerElementMask#128326

Open
snickolls-arm wants to merge 1 commit into
dotnet:mainfrom
snickolls-arm:fix-conditionalselect-predicates
Open

Arm64: Improve support for HW_Flag_ReturnsPerElementMask#128326
snickolls-arm wants to merge 1 commit into
dotnet:mainfrom
snickolls-arm:fix-conditionalselect-predicates

Conversation

@snickolls-arm
Copy link
Copy Markdown
Contributor

When wrapping an intrinsic node that has an embedded mask with a ConditionalSelect, ensure that the constant node in op3 has a mask type when the intrinsic has the HW_Flag_ReturnsPerElementMask flag.

Build out further support for ConditionalSelect_Predicates, and use this to wrap nodes with HW_Flag_ReturnsPerElementMask. Add GenTree::IsSelectZero and update various areas in HW intrinsic codegen to ensure this intrinsic assembles correctly.

Use a tree visitor for assigning TYP_MASK to intrinsics that have HW_Flag_ReturnsPerElementMask. The current version of impHWIntrinsic does not process child nodes of the tree it returns for mask types, only the root node.

When wrapping an intrinsic node that has an embedded mask with a
ConditionalSelect, ensure that the constant node in op3 has a mask type
when the intrinsic has the HW_Flag_ReturnsPerElementMask flag.

Build out further support for ConditionalSelect_Predicates, and use this
to wrap nodes with HW_Flag_ReturnsPerElementMask. Add GenTree::IsSelectZero
and update various areas in HW intrinsic codegen to ensure this intrinsic
assembles correctly.

Use a tree visitor for assigning `TYP_MASK` to intrinsics that have
`HW_Flag_ReturnsPerElementMask`. The current version of `impHWIntrinsic` does
not process child nodes of the tree it returns for mask types, only the root
node.
@github-actions github-actions Bot added the area-CodeGen-coreclr CLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMI label May 18, 2026
@dotnet-policy-service dotnet-policy-service Bot added the community-contribution Indicates that the PR has been added by a community member label May 18, 2026
@dotnet-policy-service
Copy link
Copy Markdown
Contributor

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

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area-CodeGen-coreclr CLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMI community-contribution Indicates that the PR has been added by a community member

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant