[all-commits] [llvm/llvm-project] 73a44f: [X86][AVX] combineVectorSignBitsTruncation - use P...

Simon Pilgrim via All-commits all-commits at lists.llvm.org
Tue Jan 5 07:07:22 PST 2021


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 73a44f437bf19ecf2c865e6c8b9b8a2e4a811960
      https://github.com/llvm/llvm-project/commit/73a44f437bf19ecf2c865e6c8b9b8a2e4a811960
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2021-01-05 (Tue, 05 Jan 2021)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/vector-pack-128.ll
    M llvm/test/CodeGen/X86/vector-pack-256.ll

  Log Message:
  -----------
  [X86][AVX] combineVectorSignBitsTruncation - use PACKSS/PACKUS in more AVX cases

AVX512 has fast truncation ops, but if the truncation source is a concatenation of subvectors then its likely that we can use PACK more efficiently.

This is only guaranteed to work for truncations to 128/256-bit vectors as the PACK works across 128-bit sub-lanes, for now I've just disabled 512-bit truncation cases but we need to get them working eventually for D61129.




More information about the All-commits mailing list