Skip to content

CommonNodeElimination does not detect invariant loop outputs #1564

Description

@haved

In the pictured situation, CNE will only perform the redirection shown in green:

Image

The red redirection is not performed. Instead, the rightmost loop output becomes a "leader" of its own congruence set.

This should be fixed, and it should ideally also handle cases where the invariant loop variable is not just trivially invariant.

It should also handle the above case even if the order of the two loop variables were switched.

FYI @phate @caleridas

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions