diff options
author | Huihui Zhang <huihuiz@quicinc.com> | 2020-09-02 15:02:04 -0700 |
---|---|---|
committer | Huihui Zhang <huihuiz@quicinc.com> | 2020-09-02 15:02:16 -0700 |
commit | b4f04d7135078dd22abbcedbabd3bd67ccb037d7 (patch) | |
tree | 848d0ef4d1c58ae7230ed7bb2bd0bf939dc17e3c /llvm/lib/Support/VirtualFileSystem.cpp | |
parent | 848b0e244c9ff5413c2eee6357d5faab1402d619 (diff) | |
download | llvm-b4f04d7135078dd22abbcedbabd3bd67ccb037d7.zip llvm-b4f04d7135078dd22abbcedbabd3bd67ccb037d7.tar.gz llvm-b4f04d7135078dd22abbcedbabd3bd67ccb037d7.tar.bz2 |
[VectorCombine][SVE] Do not fold bitcast shuffle for scalable type.
First, shuffle cost for scalable type is not known for scalable type;
Second, we cannot reason if the narrowed shuffle mask for scalable type
is a splat or not.
E.g., Bitcast splat vector from type <vscale x 4 x i32> to <vscale x 8 x i16>
will involve narrowing shuffle mask <vscale x 4 x i32> zeroinitializer to
<vscale x 8 x i32> with element sequence of <0, 1, 0, 1, ...>, which cannot be
reasoned if it's a valid splat or not.
Reviewed By: spatel
Differential Revision: https://reviews.llvm.org/D86995
Diffstat (limited to 'llvm/lib/Support/VirtualFileSystem.cpp')
0 files changed, 0 insertions, 0 deletions