[PATCH] D109348: [X86][AVX] Prohibit creating X86ISD::VBROADCAST(128->256) when it is AVX in combineConcatVectorOps
Bing Yu via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Tue Sep 7 07:52:28 PDT 2021
yubing added inline comments.
================
Comment at: llvm/lib/Target/X86/X86ISelLowering.cpp:50997
+ // Before AVX2, we don't have vbroadcast instruction(128->256), we prohibit
+ // creating such vbroadcast.
+ if (Op0.getOpcode() == X86ISD::VBROADCAST &&
----------------
RKSimon wrote:
> Why not add isel patterns to handle 128 ->256 like we do for scalar broadcasts?
I didn't got your point. Would you show the code?
BTW, X86ISD::VBROADCAST(A:v2f64->B:v4f64) is broadcasting A's low f64 to B's four elements, the corresponding instruction only exist in avx2(or after avx2). Do you mean lowering into broadcast_load or something else in isel pattern?
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D109348/new/
https://reviews.llvm.org/D109348
More information about the llvm-commits
mailing list