This is an archive of the discontinued LLVM Phabricator instance.

[BOLT] Unifying implementations of ext-tsp
ClosedPublic

Authored by spupyrev on Jul 15 2022, 12:27 PM.

Details

Summary

After BOLT's merge to LLVM, there are two (almost identical) versions of the
code layout algorithm. The diff unifies the implementations by keeping the one
in LLVM.

There are mild changes in the resulting block orders. I tested the changes
extensively both on the clang binary and on prod services. Didn't see stat sig
differences on average.

Diff Detail

Event Timeline

spupyrev created this revision.Jul 15 2022, 12:27 PM
Herald added a reviewer: Amir. · View Herald Transcript
Herald added a reviewer: maksfb. · View Herald Transcript
Herald added a project: Restricted Project. · View Herald Transcript
spupyrev requested review of this revision.Jul 15 2022, 12:27 PM
Herald added a project: Restricted Project. · View Herald TranscriptJul 15 2022, 12:27 PM
spupyrev edited the summary of this revision. (Show Details)Jul 15 2022, 12:30 PM
spupyrev retitled this revision from unifying implementations of ext-tsp to [BOLT] Unifying implementations of ext-tsp.Jul 15 2022, 12:44 PM
spupyrev updated this revision to Diff 445112.Jul 15 2022, 12:55 PM

getting rid of unneeded logs

spupyrev updated this revision to Diff 445125.Jul 15 2022, 1:58 PM

fixing build?

spupyrev updated this revision to Diff 445142.Jul 15 2022, 3:01 PM

fixing build!

Matt added a subscriber: Matt.Aug 9 2022, 11:01 PM
spupyrev updated this revision to Diff 456478.Aug 29 2022, 3:34 PM

rebase + adjust logging

Amir added a comment.Sep 15 2022, 1:05 PM

LGTM with one minor nit. I'm running internal tests and will let you know soon.

bolt/lib/Passes/ReorderAlgorithm.cpp
550–552
Amir added inline comments.Sep 15 2022, 2:15 PM
bolt/lib/Passes/CMakeLists.txt
55

Please include TransformUtils to fix shared build.

Amir accepted this revision.Sep 16 2022, 1:20 PM
This revision is now accepted and ready to land.Sep 16 2022, 1:20 PM
spupyrev updated this revision to Diff 460938.Sep 16 2022, 4:15 PM

addressing comments

spupyrev updated this revision to Diff 461207.Sep 19 2022, 7:54 AM
spupyrev marked 2 inline comments as done.

rebase

This revision was automatically updated to reflect the committed changes.
bolt/lib/Passes/CacheMetrics.cpp