[all-commits] [llvm/llvm-project] b49c41: [SLP] createOp - fix null dereference warning. NFCI.

Simon Pilgrim via All-commits all-commits at lists.llvm.org
Wed Apr 14 07:25:12 PDT 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: b49c41afbaa212cc15343af68c3293ab929a2d34
      https://github.com/llvm/llvm-project/commit/b49c41afbaa212cc15343af68c3293ab929a2d34
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2021-04-14 (Wed, 14 Apr 2021)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp

  Log Message:
  -----------
  [SLP] createOp - fix null dereference warning. NFCI.

Only attempt to propagateIRFlags if we have both SelectInst - afaict we shouldn't have matched a min/max reduction without both SelectInst, but static analyzer doesn't know that.


  Commit: 4fbe7615721863c57b4fd4334f361a5d4157e235
      https://github.com/llvm/llvm-project/commit/4fbe7615721863c57b4fd4334f361a5d4157e235
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2021-04-14 (Wed, 14 Apr 2021)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/haddsub-3.ll

  Log Message:
  -----------
  [X86][SSE] canonicalizeShuffleWithBinOps - check for more combos of merge-able binary shuffles.

In the fold SHUFFLE(BINOP(X,Y),BINOP(Z,W)) -> BINOP(SHUFFLE(X,Z),SHUFFLE(Y,W)), check if both X/Z AND Y/W have at least one merge-able shuffle in which case the total number of shuffle should still fall.

Helps with instruction count regressions we saw while fixing PR48823


Compare: https://github.com/llvm/llvm-project/compare/cca40aa8d8aa...4fbe76157218


More information about the All-commits mailing list