[PATCH] D90625: [AggressiveInstCombine] Generalize foldGuardedRotateToFunnelShift to generic funnel shifts

Sanjay Patel via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Nov 4 05:28:30 PST 2020


spatel reopened this revision.
spatel added a comment.
This revision is now accepted and ready to land.

Reopening because the patch was reverted. 
Failure example from the reverting commit:

  $ cat apedec-reduced.c
  a;
  b(e) {
    int c;
    unsigned d = f();
    c = d >> 32 - e;
    return c;
  }
  g() {
    int h = i();
    if (a)
      h = h << a | b(a);
    return h;
  }
  $ clang -target aarch64-linux-gnu -w -c -O3 apedec-reduced.c
  clang: ../lib/Transforms/InstCombine/InstructionCombining.cpp:3656: bool llvm::InstCombinerImpl::run(): Assertion `DT.dominates(BB, UserParent) && "Dominance relation broken?"' failed.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D90625/new/

https://reviews.llvm.org/D90625



More information about the llvm-commits mailing list