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

Simon Pilgrim via All-commits all-commits at lists.llvm.org
Thu Apr 16 11:17:53 PDT 2020


  Branch: refs/heads/release/10.x
  Home:   https://github.com/llvm/llvm-project
  Commit: ef7dbe6de65b7ad1cc4e9ab921cdade7a12c13db
      https://github.com/llvm/llvm-project/commit/ef7dbe6de65b7ad1cc4e9ab921cdade7a12c13db
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2020-04-16 (Thu, 16 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

(cherry picked from commit e3b60597769f79a8abc19fb8ef1f321d9adc1358)




More information about the All-commits mailing list