Closed Bug 1456192 Opened 2 years ago Closed 2 years ago

mark some IPC functions as MOZ_NEVER_INLINE

Categories

(Core :: IPC, enhancement)

enhancement
Not set

Tracking

()

RESOLVED FIXED
mozilla61
Tracking Status
firefox61 --- fixed

People

(Reporter: froydnj, Assigned: dmajor)

References

Details

Attachments

(2 files)

As MSVC's PGO inliner has gotten somewhat more aggressive with recent updates and to just rein in code bloat generally.

The patches I am going to attach shortly were originally written by David Major, and I am going to land them as such, with my review on them.
This function is just pure bloat when it gets inlined, and it will
disappear on non-Nightly builds anyway.  Make it MOZ_NEVER_INLINE so our
size statistics on Nightly are somewhat more reflective of our size
statistics on Release.
Attachment #8970259 - Flags: review+
MSVC's PGO inliner thinks these functions are hot enough to be inlined,
but they're really not, and inlining them bloats xul.dll quite a bit.
Attachment #8970260 - Flags: review+
Pushed by nfroyd@mozilla.com:
https://hg.mozilla.org/integration/mozilla-inbound/rev/e893040e197f
make Pickle::ReadSentinel MOZ_NEVER_INLINE; r=froydnj
https://hg.mozilla.org/integration/mozilla-inbound/rev/5f5f5d37a32e
make {Read,Write}IPDLParam MOZ_NEVER_INLINE; r=froydnj
https://hg.mozilla.org/mozilla-central/rev/e893040e197f
https://hg.mozilla.org/mozilla-central/rev/5f5f5d37a32e
Status: NEW → RESOLVED
Closed: 2 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla61
Assignee: nobody → dmajor
Did we see an installer size reduction from this push?
Flags: needinfo?(igoldan)
(In reply to Ryan VanderMeulen [:RyanVM] from comment #5)
> Did we see an installer size reduction from this push?

Yes, there was some something visible. Unfortunately, another regression landed soon after this bug and basically cancelled the wins here. I caught the regression in bug 1457405.
Flags: needinfo?(igoldan)
You need to log in before you can comment on or make changes to this bug.