HomePhabricator

[SLP] Vectorize jumbled memory loads.

Description

[SLP] Vectorize jumbled memory loads.

Summary:
This patch tries to vectorize loads of consecutive memory accesses, accessed
in non-consecutive or jumbled way. An earlier attempt was made with patch D26905
which was reverted back due to some basic issue with representing the 'use mask' of
jumbled accesses.

This patch fixes the mask representation by recording the 'use mask' in the usertree entry.

Change-Id: I9fe7f5045f065d84c126fa307ef6ebe0787296df

Reviewers: mkuper, loladiro, Ayal, zvi, danielcdh

Reviewed By: Ayal

Subscribers: mzolotukhin

Differential Revision: https://reviews.llvm.org/D36130

Commit after rebase for patch D36130

Change-Id: I8add1c265455669ef288d880f870a9522c8c08ab

Details

Committed
ashahidSep 20 2017, 1:18 AM
Reviewer
Ayal
Differential Revision
D36130: [SLP] Vectorize jumbled memory loads.
Parents
rL313735: 'into' instruction should not be decoded as a valid instr in 64-bit mode
Branches
Unknown
Tags
Unknown