This is an archive of the discontinued LLVM Phabricator instance.

[lld/mac] Inline a check
ClosedPublic

Authored by thakis on May 17 2021, 3:26 PM.

Details

Reviewers
int3
gkm
Group Reviewers
Restricted Project
Commits
rGbc588f996111: [lld/mac] Inline a check
Summary

match() can only return for non-empty vectors, but at least in
non-LTO builds that isn't clear to the compiler. Help it out.
This is a minor but measurable speedup on my machine (but less
than what we might've lost in https://reviews.llvm.org/D100818#2764272 --
bot note higher N on this measurement here, so higher confidence here):

% ministat at_main at_branch
x at_main
+ at_branch
    N           Min           Max        Median           Avg        Stddev
x  30     3.9243979     4.0395119      3.987375     3.9826236   0.027567796
+  30     3.8495831     4.0009291      3.931325     3.9347135   0.037832878
Difference at 95.0% confidence
        -0.0479101 +/- 0.0171102
        -1.20298% +/- 0.429622%
        (Student's t, pooled s = 0.0331007)

No behavior change.

Eventually we should apply these lists at symbol parse time instead of
every time shouldExportSymbol() though :)

Diff Detail

Event Timeline

thakis created this revision.May 17 2021, 3:26 PM
Herald added a reviewer: gkm. · View Herald Transcript
Herald added a project: Restricted Project. · View Herald Transcript
thakis requested review of this revision.May 17 2021, 3:26 PM
int3 accepted this revision.May 17 2021, 4:06 PM

nice!

This revision is now accepted and ready to land.May 17 2021, 4:06 PM
This revision was automatically updated to reflect the committed changes.
Herald added a project: Restricted Project. · View Herald TranscriptMay 17 2021, 5:09 PM