[all-commits] [llvm/llvm-project] e3b605: [X86][SSE] combineX86ShufflesConstants - early out...

Simon Pilgrim via All-commits all-commits at lists.llvm.org
Tue Apr 7 06:48:22 PDT 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: e3b60597769f79a8abc19fb8ef1f321d9adc1358
      https://github.com/llvm/llvm-project/commit/e3b60597769f79a8abc19fb8ef1f321d9adc1358
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2020-04-07 (Tue, 07 Apr 2020)

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

  Log Message:
  -----------
  [X86][SSE] combineX86ShufflesConstants - early out for zeroable vectors (PR45443)

Shuffle combining can insert zero byte sized elements into the shuffle mask, which combineX86ShufflesConstants will attempt to fold without taking into account whether the byte-sized type is legal (e.g. AVX512F only targets).

If we have a full-zeroable vector then we should just return a zero version of the root type, otherwise if the type isn't valid we should bail.

Fixes PR45443




More information about the All-commits mailing list