[all-commits] [llvm/llvm-project] c6e553: [X86][AVX] Combine shuffles to TRUNCATE/VTRUNC pat...

Simon Pilgrim via All-commits all-commits at lists.llvm.org
Wed Mar 25 10:42:09 PDT 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: c6e5531f9b56dcc205a0cad44099e1bf8f31b27c
      https://github.com/llvm/llvm-project/commit/c6e5531f9b56dcc205a0cad44099e1bf8f31b27c
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2020-03-25 (Wed, 25 Mar 2020)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/avx512-trunc.ll
    M llvm/test/CodeGen/X86/avx512-vec-cmp.ll
    M llvm/test/CodeGen/X86/avx512bwvl-intrinsics-fast-isel.ll
    M llvm/test/CodeGen/X86/avx512vl-intrinsics-fast-isel.ll
    M llvm/test/CodeGen/X86/shuffle-vs-trunc-128.ll
    M llvm/test/CodeGen/X86/shuffle-vs-trunc-256.ll
    M llvm/test/CodeGen/X86/shuffle-vs-trunc-512.ll
    M llvm/test/CodeGen/X86/vec-strict-fptoint-128.ll
    M llvm/test/CodeGen/X86/vec-strict-fptoint-256.ll
    M llvm/test/CodeGen/X86/vec_fp_to_int.ll
    M llvm/test/CodeGen/X86/vector-reduce-mul.ll
    M llvm/test/CodeGen/X86/vector-shuffle-128-v16.ll
    M llvm/test/CodeGen/X86/vector-shuffle-256-v32.ll
    M llvm/test/CodeGen/X86/vector-shuffle-256-v8.ll
    M llvm/test/CodeGen/X86/vector-trunc.ll
    M llvm/test/CodeGen/X86/x86-interleaved-access.ll

  Log Message:
  -----------
  [X86][AVX] Combine shuffles to TRUNCATE/VTRUNC patterns

Add support for combining shuffles to AVX512 truncate instructions - another step toward fixing D56387/D66004. It also fixes SKX code on PR31443.

We could probably extend this further to handle non-VLX truncation cases.




More information about the All-commits mailing list