Commit dc6be02
committed
[VPlan] Run narrowInterleaveGroups during general VPlan optimizations.
Move narrowInterleaveGroups to to general VPlan optimization stage.
To do so, narrowInterleaveGroups now has to find a suitable VF where all
interleave groups are consecutive and saturate the full vector width.
If such a VF is found, the original VPlan is split into 2:
a) a new clone which contains all VFs of Plan, except VFToOptimize, and
b) the original Plan with VFToOptimize as single VF.
The original Plan is then optimized. If a new copy for the other VFs has
been created, it is returned and the caller has to add it to the list of
candidate plans.
Together with llvm#149702, this
allows to take the narrowed interleave groups into account when
interleaving.1 parent 80f4183 commit dc6be02
File tree
11 files changed
+245
-169
lines changed- llvm
- lib/Transforms/Vectorize
- test/Transforms/LoopVectorize
- AArch64
- X86
11 files changed
+245
-169
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
7223 | 7223 | | |
7224 | 7224 | | |
7225 | 7225 | | |
7226 | | - | |
7227 | | - | |
7228 | | - | |
7229 | 7226 | | |
7230 | 7227 | | |
7231 | 7228 | | |
| |||
8336 | 8333 | | |
8337 | 8334 | | |
8338 | 8335 | | |
| 8336 | + | |
| 8337 | + | |
| 8338 | + | |
| 8339 | + | |
| 8340 | + | |
| 8341 | + | |
| 8342 | + | |
| 8343 | + | |
8339 | 8344 | | |
8340 | 8345 | | |
8341 | 8346 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1201 | 1201 | | |
1202 | 1202 | | |
1203 | 1203 | | |
| 1204 | + | |
1204 | 1205 | | |
1205 | 1206 | | |
1206 | 1207 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
3970 | 3970 | | |
3971 | 3971 | | |
3972 | 3972 | | |
| 3973 | + | |
| 3974 | + | |
| 3975 | + | |
3973 | 3976 | | |
3974 | 3977 | | |
3975 | 3978 | | |
| |||
4121 | 4124 | | |
4122 | 4125 | | |
4123 | 4126 | | |
| 4127 | + | |
| 4128 | + | |
| 4129 | + | |
4124 | 4130 | | |
4125 | 4131 | | |
4126 | 4132 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
3484 | 3484 | | |
3485 | 3485 | | |
3486 | 3486 | | |
| 3487 | + | |
| 3488 | + | |
| 3489 | + | |
3487 | 3490 | | |
3488 | 3491 | | |
3489 | 3492 | | |
| |||
3503 | 3506 | | |
3504 | 3507 | | |
3505 | 3508 | | |
3506 | | - | |
3507 | 3509 | | |
3508 | 3510 | | |
3509 | 3511 | | |
| |||
3612 | 3614 | | |
3613 | 3615 | | |
3614 | 3616 | | |
3615 | | - | |
3616 | | - | |
| 3617 | + | |
| 3618 | + | |
| 3619 | + | |
| 3620 | + | |
3617 | 3621 | | |
| 3622 | + | |
3618 | 3623 | | |
3619 | | - | |
| 3624 | + | |
3620 | 3625 | | |
3621 | 3626 | | |
3622 | | - | |
3623 | | - | |
3624 | 3627 | | |
| 3628 | + | |
3625 | 3629 | | |
3626 | 3630 | | |
3627 | 3631 | | |
| |||
3636 | 3640 | | |
3637 | 3641 | | |
3638 | 3642 | | |
3639 | | - | |
| 3643 | + | |
3640 | 3644 | | |
3641 | 3645 | | |
3642 | 3646 | | |
3643 | | - | |
3644 | | - | |
3645 | | - | |
3646 | | - | |
3647 | | - | |
3648 | | - | |
3649 | | - | |
3650 | | - | |
3651 | | - | |
| 3647 | + | |
3652 | 3648 | | |
3653 | 3649 | | |
3654 | 3650 | | |
3655 | 3651 | | |
3656 | 3652 | | |
3657 | 3653 | | |
3658 | | - | |
3659 | | - | |
3660 | | - | |
3661 | | - | |
3662 | | - | |
| 3654 | + | |
| 3655 | + | |
| 3656 | + | |
| 3657 | + | |
| 3658 | + | |
| 3659 | + | |
| 3660 | + | |
| 3661 | + | |
| 3662 | + | |
| 3663 | + | |
| 3664 | + | |
| 3665 | + | |
| 3666 | + | |
| 3667 | + | |
| 3668 | + | |
| 3669 | + | |
| 3670 | + | |
| 3671 | + | |
| 3672 | + | |
| 3673 | + | |
| 3674 | + | |
3663 | 3675 | | |
3664 | 3676 | | |
3665 | 3677 | | |
| |||
3693 | 3705 | | |
3694 | 3706 | | |
3695 | 3707 | | |
3696 | | - | |
| 3708 | + | |
3697 | 3709 | | |
3698 | 3710 | | |
3699 | 3711 | | |
3700 | 3712 | | |
3701 | | - | |
| 3713 | + | |
3702 | 3714 | | |
3703 | 3715 | | |
3704 | 3716 | | |
3705 | 3717 | | |
3706 | 3718 | | |
3707 | | - | |
| 3719 | + | |
3708 | 3720 | | |
3709 | 3721 | | |
3710 | 3722 | | |
3711 | 3723 | | |
3712 | 3724 | | |
3713 | | - | |
| 3725 | + | |
| 3726 | + | |
| 3727 | + | |
| 3728 | + | |
| 3729 | + | |
| 3730 | + | |
| 3731 | + | |
| 3732 | + | |
| 3733 | + | |
| 3734 | + | |
| 3735 | + | |
| 3736 | + | |
| 3737 | + | |
| 3738 | + | |
| 3739 | + | |
| 3740 | + | |
| 3741 | + | |
| 3742 | + | |
| 3743 | + | |
| 3744 | + | |
| 3745 | + | |
3714 | 3746 | | |
3715 | 3747 | | |
3716 | 3748 | | |
| |||
3777 | 3809 | | |
3778 | 3810 | | |
3779 | 3811 | | |
3780 | | - | |
3781 | | - | |
3782 | | - | |
| 3812 | + | |
| 3813 | + | |
3783 | 3814 | | |
3784 | 3815 | | |
3785 | 3816 | | |
| |||
3791 | 3822 | | |
3792 | 3823 | | |
3793 | 3824 | | |
| 3825 | + | |
| 3826 | + | |
| 3827 | + | |
| 3828 | + | |
3794 | 3829 | | |
3795 | 3830 | | |
3796 | 3831 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
324 | 324 | | |
325 | 325 | | |
326 | 326 | | |
327 | | - | |
328 | | - | |
329 | | - | |
330 | | - | |
331 | | - | |
332 | | - | |
333 | | - | |
334 | | - | |
| 327 | + | |
| 328 | + | |
| 329 | + | |
| 330 | + | |
| 331 | + | |
| 332 | + | |
| 333 | + | |
| 334 | + | |
| 335 | + | |
| 336 | + | |
| 337 | + | |
| 338 | + | |
| 339 | + | |
335 | 340 | | |
336 | 341 | | |
337 | 342 | | |
| |||
Lines changed: 12 additions & 32 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
175 | 175 | | |
176 | 176 | | |
177 | 177 | | |
178 | | - | |
| 178 | + | |
179 | 179 | | |
180 | 180 | | |
181 | | - | |
182 | | - | |
183 | | - | |
184 | | - | |
185 | | - | |
186 | | - | |
187 | | - | |
188 | | - | |
| 181 | + | |
| 182 | + | |
189 | 183 | | |
190 | 184 | | |
191 | 185 | | |
192 | 186 | | |
193 | | - | |
194 | | - | |
195 | | - | |
196 | | - | |
197 | | - | |
198 | | - | |
199 | | - | |
| 187 | + | |
| 188 | + | |
| 189 | + | |
200 | 190 | | |
201 | 191 | | |
202 | 192 | | |
| |||
237 | 227 | | |
238 | 228 | | |
239 | 229 | | |
240 | | - | |
| 230 | + | |
241 | 231 | | |
242 | 232 | | |
243 | | - | |
244 | | - | |
245 | | - | |
246 | | - | |
247 | | - | |
248 | | - | |
249 | | - | |
250 | | - | |
| 233 | + | |
| 234 | + | |
251 | 235 | | |
252 | 236 | | |
253 | 237 | | |
254 | 238 | | |
255 | | - | |
256 | | - | |
257 | | - | |
258 | | - | |
259 | | - | |
260 | | - | |
261 | | - | |
| 239 | + | |
| 240 | + | |
| 241 | + | |
262 | 242 | | |
263 | 243 | | |
264 | 244 | | |
| |||
0 commit comments