[all-commits] [llvm/llvm-project] 8d3094: [X86][SSE] combineX86ShuffleChain - combine INSERT...

Simon Pilgrim via All-commits all-commits at lists.llvm.org
Fri Jun 12 03:59:37 PDT 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 8d30945ab96ab0d2a1e28b7668855b20ff258ccd
      https://github.com/llvm/llvm-project/commit/8d30945ab96ab0d2a1e28b7668855b20ff258ccd
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2020-06-12 (Fri, 12 Jun 2020)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/build-vector-128.ll
    M llvm/test/CodeGen/X86/vector-shuffle-combining-xop.ll

  Log Message:
  -----------
  [X86][SSE] combineX86ShuffleChain - combine INSERT_VECTOR_ELT patterns to INSERTPS

Noticed while trying to cleanup D66004 - if a shuffle operand came from a scalar, we're better off using INSERTPS vs UNPCKLPS as this is more likely to load fold later on. It also matches our existing BUILD_VECTOR lowering.

We can extend this to other PINSRB/D/Q/W cases in the future as the need arises.




More information about the All-commits mailing list