[all-commits] [llvm/llvm-project] 540802: [X86] Move integer hadd/hsub formation into a help...

topperc via All-commits all-commits at lists.llvm.org
Thu Jul 16 13:27:51 PDT 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 5408024fa87e0b23b169fec07913bd4357acdbc4
      https://github.com/llvm/llvm-project/commit/5408024fa87e0b23b169fec07913bd4357acdbc4
  Author: Craig Topper <craig.topper at intel.com>
  Date:   2020-07-16 (Thu, 16 Jul 2020)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/pr46455.ll

  Log Message:
  -----------
  [X86] Move integer hadd/hsub formation into a helper function shared by combineAdd and combineSub.

There was a lot of duplicate code here for checking the VT and
subtarget. Moving it into a helper avoids that.

It also fixes a bug that combineAdd reused Op0/Op1 after a call
to isHorizontalBinOp may have changed it. The new helper function
has its own local version of Op0/Op1 that aren't shared by other
code.

Fixes PR46455.

Reviewed By: spatel, bkramer

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




More information about the All-commits mailing list