[all-commits] [llvm/llvm-project] 14ae02: [X86][AVX] Only share broadcasts of different widt...

Simon Pilgrim via All-commits all-commits at lists.llvm.org
Thu Nov 19 04:16:53 PST 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 14ae02fb3397961bb5f99a0df60622375fc1976d
      https://github.com/llvm/llvm-project/commit/14ae02fb3397961bb5f99a0df60622375fc1976d
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2020-11-19 (Thu, 19 Nov 2020)

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

  Log Message:
  -----------
  [X86][AVX] Only share broadcasts of different widths from the same SDValue of the same SDNode (PR48215)

D57663 allowed us to reuse broadcasts of the same scalar value by extracting low subvectors from the widest type.

Unfortunately we weren't ensuring the broadcasts were from the same SDValue, just the same SDNode - which failed on multiple-value nodes like ISD::SDIVREM

FYI: I intend to request this be merged into the 11.x release branch.

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




More information about the All-commits mailing list