Skip to content

JIT: Assertion prop should generate fewer array-bound complement assertions #7551

@JosephTremoulet

Description

@JosephTremoulet

When we find an array-bound-related JTrue, we always create assertions for both the branch-taken edge and the fall-through edge. One of those assertions indicates that an index or constant is out-of-bounds, which is at best useless (because we don't try to prove subsequent accesses are out-of-bounds or eliminate subsequent also-out-of-bounds comparisons) and at worst harmful (because of bad interaction with range merging). See #9773 (comment).
category:cq
theme:assertion-prop
skill-level:expert
cost:medium
impact:medium

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/additionsoptimizationtenet-performancePerformance related issue

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions