Refactor clang configs
Categories
(Firefox Build System :: Toolchains, task)
Tracking
(firefox97 fixed)
Tracking | Status | |
---|---|---|
firefox97 | --- | fixed |
People
(Reporter: glandium, Assigned: glandium)
References
Details
Attachments
(7 files)
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review |
Assignee | ||
Comment 1•2 years ago
|
||
We had three versions:
- one that is unused but has a header explaining why the patch is there,
and has the regularrevert-$(git describe 2a078c307204).patch
name. - one that is applied to trunk that was adapted to clang-trunk when
trunk was 13 and that retained the name with a-trunk
suffix. - one that is applied to clang 13, is identical to the one for trunk,
and has 13 instead of 12 in its name.
We only need one of them.
Assignee | ||
Comment 2•2 years ago
|
||
Rename it to revert-$(git describe a478b0a199f4).patch, and reorder
reversal patches so that newest patches are reverted first. It does
not matter right now because there are no inter-dependencies between
patches, but eventually, it will happen, and consistency will be
helpful.
Assignee | ||
Comment 3•2 years ago
|
||
- stage 1 is building clang with whatever compiler is available
- stage 2 is building clang with the clang built during stage 1
- stage 3 is building clang with the clang built during stage 2. It's
only useful when it's actively compared against stage 2, or when
there's a stage 4. - stage 4 is building clang with the clang built during stage 3, with the
profile generated during stage 3, when stage 2 produced a clang with
instrumentation enabled.
We're not actively comparing the output of stage 2 and 3 when not doing
PGO, so it's not useful to do 3-stage builds.
Assignee | ||
Comment 4•2 years ago
|
||
Assignee | ||
Comment 5•2 years ago
|
||
And merge them. This will allow to deduplicate and uniformize them.
Assignee | ||
Comment 6•2 years ago
|
||
We separate the patchset from the per-platform configuration, which
will ensure we keep the same patchset across them (spoiler alert: we
weren't).
Also, as most builds are PGO, use that in per-platform configurations,
and add an override config that sets it back to 2-stages for the
builds we don't want to PGO.
Assignee | ||
Comment 7•2 years ago
|
||
We're currently omitting a lot of them. This requires reverting a few
more patches that were followups for llvmorg-13-init-8182-gc2297544c047.
Pushed by mh@glandium.org: https://hg.mozilla.org/integration/autoland/rev/e14b556e3f18 Keep only one revert patch for 2a078c307204. r=firefox-build-system-reviewers,andi https://hg.mozilla.org/integration/autoland/rev/b5cd783bf890 Rename revert-ga478b0a199f4.patch. r=firefox-build-system-reviewers,andi https://hg.mozilla.org/integration/autoland/rev/693ae39ae0dd Default number of stages to build clang to 2. r=firefox-build-system-reviewers,andi https://hg.mozilla.org/integration/autoland/rev/1a93ff59fc9f Adjust patches paths earlier. r=firefox-build-system-reviewers,andi https://hg.mozilla.org/integration/autoland/rev/0cfbace5a25b Allow to give multiple configs to build-clang.py. r=firefox-build-system-reviewers,andi https://hg.mozilla.org/integration/autoland/rev/8299ba89c79a Refactor clang configs. r=firefox-build-system-reviewers,andi https://hg.mozilla.org/integration/autoland/rev/ba9915646740 Apply the same patches as clang 13 to clang trunk. r=firefox-build-system-reviewers,andi
Comment 9•2 years ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/e14b556e3f18
https://hg.mozilla.org/mozilla-central/rev/b5cd783bf890
https://hg.mozilla.org/mozilla-central/rev/693ae39ae0dd
https://hg.mozilla.org/mozilla-central/rev/1a93ff59fc9f
https://hg.mozilla.org/mozilla-central/rev/0cfbace5a25b
https://hg.mozilla.org/mozilla-central/rev/8299ba89c79a
https://hg.mozilla.org/mozilla-central/rev/ba9915646740
Description
•