This is an archive of the discontinued LLVM Phabricator instance.

[LV] Fix PR34711 - handle widening of instruction ranges in the presence of sinking casts
ClosedPublic

Authored by Ayal on Sep 27 2017, 4:53 PM.

Details

Summary

The "Sink casts to unravel first order recurrence" optimization of r306884 interferes with optimizing VPWidenRecipes for intervals of Instructions. Make sure the LastWidenRecipe we're attempting to extend is indeed the last recipe, covering the previous Instruction; otherwise extending it will effectively hoist the current Instruction, which may un-sink such a cast.

Diff Detail

Event Timeline

Ayal created this revision.Sep 27 2017, 4:53 PM
rengolin accepted this revision.Oct 4 2017, 1:45 AM

LGTM. Thanks!

This revision is now accepted and ready to land.Oct 4 2017, 1:45 AM
This revision was automatically updated to reflect the committed changes.