[all-commits] [llvm/llvm-project] a54c6f: [X86] Exclude invalid element types for bitcast/br...

Florian Hahn via All-commits all-commits at lists.llvm.org
Thu Jun 24 04:41:01 PDT 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: a54c6fc083c45595466c2d3d73ccf80c07ef1247
      https://github.com/llvm/llvm-project/commit/a54c6fc083c45595466c2d3d73ccf80c07ef1247
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2021-06-24 (Thu, 24 Jun 2021)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/avx-vbroadcast.ll
    M llvm/test/CodeGen/X86/avx2-vbroadcast.ll

  Log Message:
  -----------
  [X86] Exclude invalid element types for bitcast/broadcast folding.

It looks like the fold introduced in 63f3383ece25efa can cause crashes
if the type of the bitcasted value is not a valid vector element type,
like x86_mmx.

To resolve the crash, reject invalid vector element types. The way it is
done in the patch is a bit clunky. Perhaps there's a better way to
check?

Reviewed By: RKSimon

Differential Revision: https://reviews.llvm.org/D104792




More information about the All-commits mailing list