[all-commits] [llvm/llvm-project] 56ae4f: [InstCombine] add tests for logical and/or with no...

RotateRight via All-commits all-commits at lists.llvm.org
Mon Jun 14 09:56:00 PDT 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 56ae4f23b227897361d2a7c84364a6df81f3c327
      https://github.com/llvm/llvm-project/commit/56ae4f23b227897361d2a7c84364a6df81f3c327
  Author: Sanjay Patel <spatel at rotateright.com>
  Date:   2021-06-14 (Mon, 14 Jun 2021)

  Changed paths:
    M llvm/test/Transforms/InstCombine/not.ll
    M llvm/test/Transforms/InstCombine/select-and-or.ll

  Log Message:
  -----------
  [InstCombine] add tests for logical and/or with not ops; NFC


  Commit: 8591640379ac9175a8a8493126ecf0b44e3bb4af
      https://github.com/llvm/llvm-project/commit/8591640379ac9175a8a8493126ecf0b44e3bb4af
  Author: Sanjay Patel <spatel at rotateright.com>
  Date:   2021-06-14 (Mon, 14 Jun 2021)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
    M llvm/test/Transforms/InstCombine/select-and-or.ll

  Log Message:
  -----------
  [InstCombine] add DeMorgan folds for logical ops in select form

We canonicalized to these select patterns (poison-safe logic)
with D101191, so we need to reduce 'not' ops when possible
as we would with 'and'/'or' instructions.

This is shown in a secondary example in:
https://llvm.org/PR50389

https://alive2.llvm.org/ce/z/BvsESh


Compare: https://github.com/llvm/llvm-project/compare/ee9bb258bb76...8591640379ac


More information about the All-commits mailing list