Skip to content

arm64: Add SVE ptrue reuse pass after lowering#128844

Open
jonathandavies-arm wants to merge 1 commit into
dotnet:mainfrom
jonathandavies-arm:upstream/sve/ptrue-reuse
Open

arm64: Add SVE ptrue reuse pass after lowering#128844
jonathandavies-arm wants to merge 1 commit into
dotnet:mainfrom
jonathandavies-arm:upstream/sve/ptrue-reuse

Conversation

@jonathandavies-arm
Copy link
Copy Markdown
Contributor

  • Reuses equivalent ptrue producing nodes within a block via a mask temp

- Reuses equivalent ptrue-producing nodes within a block via a mask temp
@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 Jun 1, 2026
@dotnet-policy-service dotnet-policy-service Bot added the community-contribution Indicates that the PR has been added by a community member label Jun 1, 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.

m_pLowering->Run();

#if defined(TARGET_ARM64) && defined(FEATURE_MASKED_HW_INTRINSICS)
DoPhase(this, PHASE_ARM64_CONSTANT_MASK_REUSE, &Compiler::fgOptimizeConstantMaskReuse);
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit, if we do this it should likely be just PHASE_CONSTANT_REUSE, we have several cases of "low cost constants" that get unnecessarily rematerialized across all architectures, including cases like zero and allbitsset

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.

2 participants