Closed Bug 465592 Opened 16 years ago Closed 16 years ago

To enable PGO on Thunderbird a module in the Mozilla core needs to have PGO disabled.

Categories

(Firefox Build System :: General, defect)

x86
Windows XP
defect
Not set
normal

Tracking

(Not tracked)

RESOLVED FIXED
mozilla1.9.2a1

People

(Reporter: chris.bugzilla, Assigned: chris.bugzilla)

References

Details

Attachments

(1 file, 1 obsolete file)

User-Agent:       Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.0.3) Gecko/2008092417 Firefox/3.0.3
Build Identifier: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1b2pre) Gecko/20081107 Shredder/3.0b1pre

Bug 448515 refers to how there isn't a Profiledbuild option.

In this bug I wrote how I was able to successfully build Thunderbird with PGO but I had to disable PGO in one module in the mozilla core.

In mozilla/modules/lcms/src/Makefile.in I had to add the environment variable ( or make variable, not sure) NO_PROFILE_GUIDED_OPTIMIZE = 1.

My thought is the mozilla core should not have to be modified to allow thunderbird to be built with PGO.  The Thunderbird build configuration should be modified to some how enable PGO for Thunderbird since Firefox can be built with PGO without modifying this particular Makefile.

I am currently working on this problem and need help and direction.  The work I've done so far can be found here. 

http://zenit.senecac.on.ca/wiki/index.php/PGO_Related_Bugs#0.2_Release

Reproducible: Always

Steps to Reproduce:
( html format can be found here - http://zenit.senecac.on.ca/wiki/index.php/PGO_Related_Bugs/Thunderbird )

1.
Modify the file $topsrcdir/mozilla/modules/lcms/src/Makefile.in and add the line NO_PROFILE_GUIDED_OPTIMIZE = 1. 

2.
Configure the .mozconfig in the $topsrcdir for ac_add_options --enable-application=mail and mk_add_options MOZ_CO_PROJECT=mail. My .mozconfig looks like

ac_add_options --enable-application=mail
mk_add_options MOZ_CO_PROJECT=mail
mk_add_options MOZ_MAKE_FLAGS=-j5
ac_add_options --disable-vista-sdk-requirements
ac_add_options --disable-tests
ac_add_options --enable-optimize
ac_add_options --disable-debug

3.
In the $topsrcdir execute the build command make -f client.mk build MOZ_PROFILE_GENERATE=1

4.
After it has finished, Thunderbird needs to be profiled. Run the executable found in $objdir/mozilla/dist/bin and do a few scenarios and close Thunderbird. 

5.
This next step I did not due on Windows and it worked ok. I have to try it and see what happens. I'm told this step has to take place.

In the $topsrcdir execute the build command make -f client.mk clean

6.
In the $topsrcdir execute the build command make -f client.mk build MOZ_PROFILE_USE=1
Actual Results:  
Thunderbird is built with PGO
Version: unspecified → Trunk
Status: UNCONFIRMED → NEW
Ever confirmed: true
Blocks: 448515
This patch checks if the flag to link other modules into xul library is not set.  If the flag is not set then disable PGO for the lcms module.  This was checked on Windows only.
Attachment #350246 - Flags: review?(ted.mielczarek)
Attachment #350246 - Flags: review?(ted.mielczarek) → review+
Comment on attachment 350246 [details] [diff] [review]
Patch to disable the LCMS module only if the module is not linked into the xul.dll.

Don't bother putting the bug number in there, people can use blame to find this bug. We generally only put bug numbers in there if there's followup work to be done. If you'd like to file a bug on figuring out why this breaks in non-libxul PGO builds and fixing it, you could do that and put that bug number here instead. Also, the comment could be a little clearer, just say "Disable PGO for this module in non-libxul builds, where it breaks."

r=me
This patch includes the recommendations by Ted.
Attachment #350246 - Attachment is obsolete: true
Keywords: checkin-needed
Assignee: nobody → chris.bugzilla
Product: Thunderbird → Core
QA Contact: build-config → build-config
Comment on attachment 351620 [details] [diff] [review]
updated with recommendations
[Checkin: Comment 4]

http://hg.mozilla.org/mozilla-central/rev/fc579917e321
Attachment #351620 - Attachment description: updated with recommendations → updated with recommendations [Checkin: Comment 4]
Status: NEW → RESOLVED
Closed: 16 years ago
Keywords: checkin-needed
Resolution: --- → FIXED
Target Milestone: --- → mozilla1.9.2a1
(In reply to comment #4)
> (From update of attachment 351620 [details] [diff] [review])
> http://hg.mozilla.org/mozilla-central/rev/fc579917e321

I added a space at the beginning of the comment.
Product: Core → Firefox Build System
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: