[all-commits] [llvm/llvm-project] 66e390: [X86][AVX] Use lowerShuffleAsLanePermuteAndSHUFP t...

Simon Pilgrim via All-commits all-commits at lists.llvm.org
Sun Jan 12 04:31:25 PST 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 66e39067edbfdb1469be001ebb053530a608b532
      https://github.com/llvm/llvm-project/commit/66e39067edbfdb1469be001ebb053530a608b532
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2020-01-12 (Sun, 12 Jan 2020)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/avx-unpack.ll
    M llvm/test/CodeGen/X86/avx512-shuffles/partial_permute.ll
    M llvm/test/CodeGen/X86/subvector-broadcast.ll
    M llvm/test/CodeGen/X86/vector-shuffle-256-v4.ll
    M llvm/test/CodeGen/X86/vector-shuffle-256-v8.ll

  Log Message:
  -----------
  [X86][AVX] Use lowerShuffleAsLanePermuteAndSHUFP to lower binary v4f64 shuffles.

Only perform this if we are shuffling lower and upper lane elements across the lanes (otherwise splitting to lower xmm shuffles would be better).

This is a regression if we shuffle build_vectors due to getVectorShuffle canonicalizing 'blend of splat' build vectors, for now I've set this not to shuffle build_vector nodes at all to avoid this.




More information about the All-commits mailing list