[PATCH] D132542: [InstCombine] Use dyn_cast instead of cast in visitPHINode

Liao Chunyu via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Aug 25 20:42:06 PDT 2022


liaolucy added a comment.

I've verified that D132571 <https://reviews.llvm.org/D132571> solves the problem.

Without D132571 <https://reviews.llvm.org/D132571>:

  L3.preheader:                                     ; preds = %L3.preheader.preheader, %L2.loopexit
    %11 = zext i16 %10 to i32
    %i.129 = phi i32 [ 0, %L2.loopexit ], [ %rem19.zext, %L3.preheader.preheader ]
    %tobool5.not = icmp eq i32 %i.129, 0
    br label %L3

With D132571 <https://reviews.llvm.org/D132571>, we get:

  L1.backedge.loopexit44:                           ; preds = %L2.loopexit
    %1 = zext i16 %8 to i32
    br label %L1.backedge
  ....
  L3.preheader:                                     ; preds = %L3.preheader.preheader, %L2.loopexit
    %i.131 = phi i32 [ 0, %L2.loopexit ], [ %rem22.zext, %L3.preheader.preheader ]
    %tobool7.not = icmp eq i32 %i.131, 0
    br label %L3


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D132542



More information about the llvm-commits mailing list