This is an archive of the discontinued LLVM Phabricator instance.

[SLP] Allow to duplicate instruction in multiple bundles by introducing pseudo operations.
AbandonedPublic

Authored by dtemirbulatov on Jan 29 2019, 12:10 PM.

Details

Summary

This is new functionality that allows duplicate(reuse) scalars existing instruction in multiple times in vector operations. This change is a part of D28907.

Diff Detail

Event Timeline

RKSimon added inline comments.Jan 29 2019, 12:57 PM
test/Transforms/SLPVectorizer/X86/duplicate.ll
14

This test case is pretty nasty, can you clean it up at all please?

dtemirbulatov marked an inline comment as done.

update duplicate.ll testcase.

dtemirbulatov abandoned this revision.Feb 1 2019, 2:41 PM

This is quite rare cases when it decide to duplicate after limiting to a maximum number of elements of less than half of vector size and calculating cost of this transformation. Abandoning.