This is an archive of the discontinued LLVM Phabricator instance.

[ARM][LowOverheadLoops] Check VCMP operands have same def as the VPT before combining
AbandonedPublic

Authored by samtebbs on Sep 21 2020, 7:28 AM.

Details

Summary

This patch is a follow-up to D87616 which checks that the def of the VCMP operands is the same as it is for the VPT to make sure their values haven't changed in-between.

Diff Detail

Event Timeline

samtebbs created this revision.Sep 21 2020, 7:28 AM
samtebbs requested review of this revision.Sep 21 2020, 7:28 AM

Hey Sam, add a couple of tests please to catch when the defs are mismatched.

llvm/lib/Target/ARM/ARMLowOverheadLoops.cpp
1335

You can use getMIOperand(VCMP, Op*) here, and the code can be reduced into a loop iterating over the operands of the VCMP.

samtebbs abandoned this revision.Sep 24 2020, 6:34 AM

Closed since it's no longer needed.