diff options
| author | Igor Kirillov <igor.kirillov@arm.com> | 2023-06-14 16:41:50 +0000 |
|---|---|---|
| committer | Igor Kirillov <igor.kirillov@arm.com> | 2023-07-05 17:02:52 +0000 |
| commit | 7f20407ceed8e713c5f193a2598358332b5ac0d3 (patch) | |
| tree | f5874c39a1ad3ef30725e96f10f07184c77b915e /llvm/lib/Transforms/Utils/ScalarEvolutionExpander.cpp | |
| parent | 9efbb67939bd00b5ed60adc37baa01501c637c36 (diff) | |
| download | llvm-7f20407ceed8e713c5f193a2598358332b5ac0d3.zip llvm-7f20407ceed8e713c5f193a2598358332b5ac0d3.tar.gz llvm-7f20407ceed8e713c5f193a2598358332b5ac0d3.tar.bz2 | |
[CodeGen] Add support for Splats in ComplexDeinterleaving pass
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);
```
Differential Revision: https://reviews.llvm.org/D153355
Diffstat (limited to 'llvm/lib/Transforms/Utils/ScalarEvolutionExpander.cpp')
0 files changed, 0 insertions, 0 deletions
