This is an archive of the discontinued LLVM Phabricator instance.

[AArch64] Fix bugs in isel lowering replaceSplatVectorStore.
ClosedPublic

Authored by gberry on Nov 8 2016, 12:00 PM.

Details

Summary

Fix off-by-one indexing error in loop checking that inserted value was a
splat vector.

Add code to check that INSERT_VECTOR_ELT nodes constructing the splat
vector have the expected constant index values.

Diff Detail

Repository
rL LLVM

Event Timeline

gberry updated this revision to Diff 77229.Nov 8 2016, 12:00 PM
gberry retitled this revision from to [AArch64] Fix bugs in isel lowering replaceSplatVectorStore..
gberry updated this object.
gberry added reviewers: t.p.northover, jmolloy, mcrosier.
gberry added a subscriber: llvm-commits.
mcrosier accepted this revision.Nov 11 2016, 7:05 AM
mcrosier edited edge metadata.

LGTM with a minor suggestion.

lib/Target/AArch64/AArch64ISelLowering.cpp
8779 ↗(On Diff #77229)

You might consider using a SmallBitVector.

8783 ↗(On Diff #77229)

Ouch.

This revision is now accepted and ready to land.Nov 11 2016, 7:05 AM
This revision was automatically updated to reflect the committed changes.