[PATCH] D103874: [IR] Rename the shufflevector's undef mask to poison
Juneyoung Lee via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Mon Jun 27 02:13:52 PDT 2022
aqjune added a comment.
In D103874#3611483 <https://reviews.llvm.org/D103874#3611483>, @nikic wrote:
> Which intrinsic are you working on here? If this is about the mm_undefined intrinsics, why do we need to change those from the current status quo of using a zero value instead of undef?
It is about the `mm256_castpd128_pd256` intrinsic and its friends (clang/test/CodeGen/X86/avx-builtins.c, line 146).
It was previously using `shufflevector` with undef masks - since the results are poison, an alternative pattern as below is necessary to represent the intrinsic:
%a1 = freeze <2 x double> poison
%res = shufflevector <2 x double> %a0, <2 x double> %a1, <4 x i32> <i32 0, i32 1, i32 2, i32 3>
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
More information about the cfe-commits