FailedChanges

Summary

  1. [AggressiveInstCombine] Generalize foldGuardedRotateToFunnelShift to generic funnel shifts (REAPPLIED) (details)
  2. Remove unused variables. (details)
Commit 88c5b5006064d62cae4592e66f5bc8b7a7326ef2 by llvm-dev
[AggressiveInstCombine] Generalize foldGuardedRotateToFunnelShift to generic funnel shifts (REAPPLIED)

The fold currently only handles rotation patterns, but with the maturation of backend funnel shift handling we can now realistically handle all funnel shift patterns.

This should allow us to begin resolving PR46896 et al.

Ensure we block poison in a funnel shift value - similar to rG0fe91ad463fea9d08cbcd640a62aa9ca2d8d05e0

Reapplied with fix for PR48068 - we weren't checking that the shift values could be hoisted from their basicblocks.

Differential Revision: https://reviews.llvm.org/D90625
The file was modifiedllvm/lib/Transforms/AggressiveInstCombine/AggressiveInstCombine.cpp
The file was modifiedllvm/test/Transforms/AggressiveInstCombine/funnel.ll
The file was modifiedllvm/test/Transforms/AggressiveInstCombine/rotate.ll
Commit d56982b6f5fb17fb1fa50b31ab4b67b8d3a76c24 by tpopp
Remove unused variables.

Differential Revision: https://reviews.llvm.org/D93635
The file was modifiedllvm/lib/Transforms/IPO/IROutliner.cpp