This is an archive of the discontinued LLVM Phabricator instance.

[Hexagon] Generate hardware loop when loop has a critical edge
ClosedPublic

Authored by bcahoon on May 11 2015, 1:42 PM.

Details

Summary

Changes to the hardware loop pass for Hexagon needed to generate a hardware loop when the original loop has a critical edge.

Diff Detail

Repository
rL LLVM

Event Timeline

bcahoon updated this revision to Diff 25504.May 11 2015, 1:42 PM
bcahoon retitled this revision from to [Hexagon] Generate hardware loop when loop has a critical edge.
bcahoon updated this object.
bcahoon edited the test plan for this revision. (Show Details)
bcahoon added reviewers: sundeepk, iajbar.
bcahoon set the repository for this revision to rL LLVM.
bcahoon added a subscriber: Unknown Object (MLST).
sundeepk added inline comments.May 12 2015, 2:46 PM
lib/Target/Hexagon/HexagonHardwareLoops.cpp
1364 ↗(On Diff #25504)

Why not using the std ? : operator?

TB = (LTB == Header) ? LTB: LFB;

iajbar accepted this revision.May 12 2015, 2:46 PM
iajbar edited edge metadata.
This revision is now accepted and ready to land.May 12 2015, 2:46 PM
bcahoon updated this revision to Diff 25639.May 12 2015, 3:32 PM
bcahoon edited edge metadata.

Updates to ? operator based upon review

This revision was automatically updated to reflect the committed changes.