This is an archive of the discontinued LLVM Phabricator instance.

Explicitly check for presence of correct results in instcombine memmove test
ClosedPublic

Authored by dneilson on Jun 26 2017, 2:06 PM.

Details

Summary

Rather than testing for expected results, test/Transforms/InstCombine/memmove.ll is testing for the absence of calls to llvm.memmove.

In the case of test3, the test has stopped testing for materialization of loads/stores, but remained passing due to testing for the absence of llvm.memset calls rather than the presence of load/store instructions. Right now this test ends up with an empty function body because the alloca is eliminated as safe-to-remove, which results in the llvm.memmove calls being eliminated due to a pointer arg being undef; so it is not testing for conversion of llvm.memmove into load/store instructions at all.

Event Timeline

dneilson created this revision.Jun 26 2017, 2:06 PM
efriedma accepted this revision.Jun 26 2017, 4:55 PM
efriedma added a subscriber: efriedma.

LGTM.

This revision is now accepted and ready to land.Jun 26 2017, 4:55 PM
dneilson closed this revision.Jun 29 2017, 7:18 AM