[all-commits] [llvm/llvm-project] 772155: [X86][SSE] isHorizontalBinOp - ensure we clear any...

Simon Pilgrim via All-commits all-commits at lists.llvm.org
Mon Mar 15 09:25:09 PDT 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 772155793bd0def6e9c12c063a5fb330c416adfa
      https://github.com/llvm/llvm-project/commit/772155793bd0def6e9c12c063a5fb330c416adfa
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2021-03-15 (Mon, 15 Mar 2021)

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

  Log Message:
  -----------
  [X86][SSE] isHorizontalBinOp - ensure we clear any unused source operands to improve HADD/SUB matching

Our shuffle matching for HADD/SUB patterns wasn't clearing repeated ops in 'fake unary' style shuffle masks (unpack(x,x) etc.), preventing matching of add(fakeunary(),fakeunary()) style patterns.




More information about the All-commits mailing list