[PATCH] D153355: [CodeGen] Add support for Splats in ComplexDeinterleaving pass
Igor Kirillov via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Tue Jun 20 07:39:03 PDT 2023
igor.kirillov created this revision.
Herald added subscribers: mgabka, hiraditya.
Herald added a project: All.
igor.kirillov requested review of this revision.
Herald added a project: LLVM.
Herald added a subscriber: llvm-commits.
This commit allows generating of complex number intrinsics for expressions
with constants or loops invariants, which are represented as splats.
For instance, after vectorizing loops in the following code snippets,
the ComplexDeinterleaving pass will be able to generate complex number
intrinsics:
complex<> x = ...;
for (int i = 0; i < N; ++i)
c[i] = a[i] * b[i] * x;
or
for (int i = 0; i < N; ++i)
c[i] = a[i] * b[i] * (11.0 + 3.0i);
Repository:
rG LLVM Github Monorepo
https://reviews.llvm.org/D153355
Files:
llvm/include/llvm/CodeGen/ComplexDeinterleavingPass.h
llvm/lib/CodeGen/ComplexDeinterleavingPass.cpp
llvm/test/CodeGen/AArch64/complex-deinterleaving-splat-scalable.ll
llvm/test/CodeGen/AArch64/complex-deinterleaving-splat.ll
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D153355.532930.patch
Type: text/x-patch
Size: 31965 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20230620/feeccd93/attachment.bin>
More information about the llvm-commits
mailing list