This is an archive of the discontinued LLVM Phabricator instance.

PrologueEpilogInserter: Fix missing live-ins when savepoint equals restorepoint
ClosedPublic

Authored by MatzeB on Sep 25 2015, 1:14 PM.

Details

Summary

The algorithm would not modify the live-in list of blocks below the save
block point which is correct unless it happens to be a restore point at
the same time.

Also fixes the benign issue of live-in registers being added twice in some cases.

The testcase is based on a test submitted by Kit Barton.

Diff Detail

Repository
rL LLVM

Event Timeline

MatzeB updated this revision to Diff 35758.Sep 25 2015, 1:14 PM
MatzeB retitled this revision from to PrologueEpilogInserter: Fix missing live-ins when savepoint equals restorepoint.
MatzeB updated this object.
MatzeB added a reviewer: qcolombet.
MatzeB set the repository for this revision to rL LLVM.
MatzeB added subscribers: llvm-commits, kbarton, hfinkel.
qcolombet accepted this revision.Sep 25 2015, 2:22 PM
qcolombet edited edge metadata.

Hi Matthias,

LGTM with one comment, move the test case in ppc-shrink-wrapping.ll if possible.

Thanks,
-Quentin

This revision is now accepted and ready to land.Sep 25 2015, 2:22 PM
This revision was automatically updated to reflect the committed changes.