Skip to content

JIT should suppress zero-extending same-register moves in more scenarios #12402

Open
@GrabYourPitchforks

Description

@GrabYourPitchforks

Related to dotnet/coreclr#22454. An optimization was previously introduced in coreclr which eliminates unnecessary mov instructions when zero-extending registers. However, that optimization only looks back one instruction to determine if the elimination is worthwhile.

Per dotnet/coreclr#23665, we have evidence that there's benefit to be realized from looking back more than one instruction when performing this optimization. We should be more aggressive about eliminating these mov instructions.

category:cq
theme:basic-cq
skill-level:intermediate
cost:medium

Metadata

Metadata

Assignees

No one assigned

    Labels

    JitUntriagedCLR JIT issues needing additional triagearea-CodeGen-coreclrCLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMIoptimization

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions