[all-commits] [llvm/llvm-project] be7d0d: [DAGCombiner] Fix issue with rot chain pattern

chenglin.bi via All-commits all-commits at lists.llvm.org
Tue Jan 10 09:29:29 PST 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: be7d0d6db5094f2709c028ce6b62936f51db8bc9
      https://github.com/llvm/llvm-project/commit/be7d0d6db5094f2709c028ce6b62936f51db8bc9
  Author: chenglin.bi <chenglin.bi at linaro.org>
  Date:   2023-01-11 (Wed, 11 Jan 2023)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/test/CodeGen/AArch64/rotate.ll

  Log Message:
  -----------
  [DAGCombiner] Fix issue with rot chain pattern

faa35fc87370 fix the case of negative input shift. But when `c1`, `c2` is not the same side, it will also cause negative shift amount.
And that negative shift amount can't normalize by urem. So add one more bit size to normalize the last shift amount.

Fix: https://github.com/llvm/llvm-project/issues/59898

Reviewed By: RKSimon

Differential Revision: https://reviews.llvm.org/D141363




More information about the All-commits mailing list