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

various DCE-related bugfixes (replaces #36888) #37147

Merged
merged 6 commits into from
Aug 22, 2020
Merged

various DCE-related bugfixes (replaces #36888) #37147

merged 6 commits into from
Aug 22, 2020

Commits on Aug 21, 2020

  1. Decline to remove phi nodes when this might cause forward references

    Phi nodes are optimized away when there is only one predecessor, but this can
    cause problems in dead loops because forward references can be created, leading
    to issues with optimization passes that look at all code, dead or not. This
    fixes issue #29107 when DCE is turned on.
    yhls authored and vchuravy committed Aug 21, 2020
    Configuration menu
    Copy the full SHA
    219791f View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    c60c34b View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    9050247 View commit details
    Browse the repository at this point in the history
  4. Fix bug in kill_edge! which caused edges to be removed from the wro…

    …ng phi nodes
    yhls authored and vchuravy committed Aug 21, 2020
    Configuration menu
    Copy the full SHA
    8718152 View commit details
    Browse the repository at this point in the history
  5. Fix bug in which uses of SSA values processed in just_fixup! were n…

    …ot counted
    
    This fixes #29253, which was caused by `simple_dce!` erroneously erasing SSA
    values that did not appear to be used, because these uses were only discovered
    in `just_fixup!` at the end of iterating over an `IncrementalCompact`.
    yhls authored and vchuravy committed Aug 21, 2020
    Configuration menu
    Copy the full SHA
    27dcf2e View commit details
    Browse the repository at this point in the history
  6. Fix small bug in #36684

    PR #36684 changes `iterate(IncrementalCompact)` to return an extra index, but
    leaves its arguments unchanged. However, the PR decremented the index argument
    in a particular recursive call to `iterate`. This caused `iterate` not to
    recognise that it was done when `allow_cfg_transforms` was turned on.
    yhls authored and vchuravy committed Aug 21, 2020
    Configuration menu
    Copy the full SHA
    af4cf31 View commit details
    Browse the repository at this point in the history