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: Support containment of immediates for Vector<T> #31693

Closed
CarolEidt opened this issue Feb 3, 2020 · 4 comments
Closed

Arm64: Support containment of immediates for Vector<T> #31693

CarolEidt opened this issue Feb 3, 2020 · 4 comments
Labels
arch-arm64 area-CodeGen-coreclr CLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMI optimization tenet-performance Performance related issue
Milestone

Comments

@CarolEidt
Copy link
Contributor

CarolEidt commented Feb 3, 2020

An example from ConsoleMandel:
Source:

while (increment != Vector<int>.Zero);

Generated code:

            dup     v20.4s, wzr
            cmeq    v21.4s, v19.4s, v20.4s
            uminv   v21.16b, v21.16b
            mov     w0, v21.b[0]
            eor     w0, w0, #1
            and     w0, w0, #1

            cbnz    w0, G_M3984_IG05

This issue is about the fact that we shouldn't materialize zero into v20.4s. See also #31685 for the fact that the code generation for comparison is sub-optimal.

category:cq
theme:vector-codegen
skill-level:intermediate
cost:medium

@CarolEidt CarolEidt added arch-arm64 tenet-performance Performance related issue area-CodeGen-coreclr CLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMI labels Feb 3, 2020
@Dotnet-GitSync-Bot Dotnet-GitSync-Bot added the untriaged New issue has not been triaged by the area owner label Feb 3, 2020
@CarolEidt
Copy link
Contributor Author

@BruceForstall BruceForstall added optimization and removed untriaged New issue has not been triaged by the area owner labels Feb 6, 2020
@BruceForstall
Copy link
Member

cc @echesakovMSFT

@AndyAyersMS
Copy link
Member

@CarolEidt @kunalspathak marking this as future; let me know if you think otherwise.

@AndyAyersMS AndyAyersMS added this to the Future milestone May 6, 2020
@BruceForstall BruceForstall added the JitUntriaged CLR JIT issues needing additional triage label Oct 28, 2020
@BruceForstall BruceForstall removed the JitUntriaged CLR JIT issues needing additional triage label Oct 30, 2022
@TIHan
Copy link
Contributor

TIHan commented Mar 8, 2023

This has already been optimized via #65632

@TIHan TIHan closed this as completed Mar 8, 2023
@ghost ghost locked as resolved and limited conversation to collaborators Apr 7, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
arch-arm64 area-CodeGen-coreclr CLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMI optimization tenet-performance Performance related issue
Projects
None yet
Development

No branches or pull requests

5 participants