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

[VPlan] Add new VPInstruction ocpode for header mask. #89603

Open
wants to merge 5 commits into
base: main
Choose a base branch
from

Commits on Apr 22, 2024

  1. [VPlan] Add new VPInstruction ocpode for header mask.

    This patch adds a new VPInstruction::HeaderMask opcode to model the
    abstract header-mask used for tail-folding. It will be lowered depending
    on target preference (either using active-lane-mask,
    explicit-vector-length or a wide compare of the canonical IV and the
    backedge taken count)
    
    Similarly to llvm#82270, it would
    be good to clarify/agree on the terminology w.r.t. to recipes/opcodes
    that cannot be code-gen'd directly (i.e. require further gradual lowering).
    
    NOTE: some tests are failing or needed updating, due to widened IVs
    being replaced by scalar-steps, as their only use was the earlier wide
    compare. This could be fixed by either adding a suitable wide canonical
    IV as operand to the header-mask recipe and exactly preserve the
    original behavior. Alternatively we could keep the current behavior of
    the patch and update the tests. Or introduce a wide induction PHI
    instead of VPWidenCanonicalIVReicpe; currently we *only* use a wide IV
    for VPWidenCanonicalIVRecipe, if there was a suitable IV in the original
    loop, *even* if the mask compare is the *only* wide use. Either never or
    always using a wide PHI would be more consistent (or eventually make a
    more informed cost-based decision).
    fhahn committed Apr 22, 2024
    Configuration menu
    Copy the full SHA
    2630805 View commit details
    Browse the repository at this point in the history

Commits on May 2, 2024

  1. Configuration menu
    Copy the full SHA
    8ea7c45 View commit details
    Browse the repository at this point in the history

Commits on May 3, 2024

  1. Configuration menu
    Copy the full SHA
    354777e View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    5fed0d1 View commit details
    Browse the repository at this point in the history
  3. !fixup address comments

    fhahn committed May 3, 2024
    Configuration menu
    Copy the full SHA
    5324561 View commit details
    Browse the repository at this point in the history