Skip to content

.unaligned prefix ignored on initblk and cpblk #5236

@cmckinsey

Description

@cmckinsey

Strictly speaking the JIT needs to make sure to generate references that are aligned with respect to the byte size specified by any unaligned prefix on initblk and cpblk. Today's implemented ignores them.

For some architectures, generating unaligned references may cause execution faults at runtime. For others, they can be less efficient than aligned references. At the moment all the targets RyuJIT supports do not require this for correctness, but might benefit on the performance side, especially for large block operations.

The MC++ compiler does generate these block operations today with unaligned prefixes to capture the original access size when vectorizing array initialization loops to block set operations (initblk).

category:correctness
theme:msil
skill-level:intermediate
cost:small

Metadata

Metadata

Assignees

No one assigned

    Labels

    area-CodeGen-coreclrCLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMIenhancementProduct code improvement that does NOT require public API changes/additionshelp wanted[up-for-grabs] Good issue for external contributorsoptimizationtenet-performancePerformance related issue

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions