[all-commits] [llvm/llvm-project] e6a061: [NFC][InstCombine] Add tests for (~x) a>> y --> ...

Roman Lebedev via All-commits all-commits at lists.llvm.org
Tue Feb 2 06:57:33 PST 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: e6a061ed9f94218197d87959066d5c6dd1f51f79
      https://github.com/llvm/llvm-project/commit/e6a061ed9f94218197d87959066d5c6dd1f51f79
  Author: Roman Lebedev <lebedev.ri at gmail.com>
  Date:   2021-02-02 (Tue, 02 Feb 2021)

  Changed paths:
    A llvm/test/Transforms/InstCombine/hoist-not-from-ashr-operand.ll

  Log Message:
  -----------
  [NFC][InstCombine] Add tests for  (~x) a>> y  -->  ~(x a>> y)  fold (PR48995)

See https://bugs.llvm.org/show_bug.cgi?id=48995


  Commit: 485c4b552b71aff21fc27ce958c2d8ea4cebba99
      https://github.com/llvm/llvm-project/commit/485c4b552b71aff21fc27ce958c2d8ea4cebba99
  Author: Roman Lebedev <lebedev.ri at gmail.com>
  Date:   2021-02-02 (Tue, 02 Feb 2021)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineShifts.cpp
    M llvm/test/Transforms/InstCombine/hoist-not-from-ashr-operand.ll

  Log Message:
  -----------
  [InstCombine] Host inversion out of ashr's value operand (PR48995)

This is a yet another hint that we will eventually need InstCombineInverter,
which would consistently sink inversions, but but for that we'll need
to consistently hoist inversions where possible, so let's do that here.

Example of a proof: https://alive2.llvm.org/ce/z/78SbDq

See https://bugs.llvm.org/show_bug.cgi?id=48995


Compare: https://github.com/llvm/llvm-project/compare/9b0b435d7931...485c4b552b71


More information about the All-commits mailing list