Closed Bug 2069190 Opened 13 days ago Closed 8 days ago

Configure tests for e.g. -mavxvnni don't guarantee the flag actually works

Categories

(Firefox Build System :: General, defect)

defect

Tracking

(firefox157 fixed)

RESOLVED FIXED
157 Branch
Tracking Status
firefox157 --- fixed

People

(Reporter: glandium, Assigned: glandium)

References

Details

Attachments

(2 files)

There's a gap between compiler support for those flags and them actually working... with GCC. Because GCC produces assembly and calls GAS to generate the machine code, actual support for the corresponding instructions depend on what GAS supports, and the GCC and GAS versions are not necessarily lined up properly for that.
GCC does disable support at build time when it detects GAS doesn't support the flags at GCC build time, but the GAS used at GCC build time and Firefox build time can be different. And thus we can end up in a situation where configure says we can use -mavxvnni, but the build fails because GAS doesn't understand the operands produced by GCC.

There's a gap between compiler support for those flags and them actually
working... with GCC. Because GCC produces assembly and calls GAS to
generate the machine code, actual support for the corresponding
instructions depend on what GAS supports, and the GCC and GAS versions
are not necessarily lined up properly for that.

GCC does disable support at build time when it detects GAS doesn't
support the flags at GCC build time, but the GAS used at GCC build time
and Firefox build time can be different. And thus we can end up in a
situation where configure says we can use -mavxvnni, but the build fails
because GAS doesn't understand the operands produced by GCC.

Attachment #9636370 - Attachment description: Bug 2069190 - Don't built neon i8mm code when the corresponding compiler flag is not supported. → Bug 2069190 - Don't build neon i8mm code when the corresponding compiler flag is not supported.
Pushed by mh@glandium.org: https://github.com/mozilla-firefox/firefox/commit/da3f96042f38 https://hg.mozilla.org/integration/autoland/rev/740716cdb8dd Check target feature flags enabling instruction sets actually work. r=firefox-build-system-reviewers,sergesanspaille https://github.com/mozilla-firefox/firefox/commit/38922f5e93d5 https://hg.mozilla.org/integration/autoland/rev/7d97c162e9be Don't build neon i8mm code when the corresponding compiler flag is not supported. r=firefox-build-system-reviewers,sergesanspaille
Status: NEW → RESOLVED
Closed: 8 days ago
Resolution: --- → FIXED
Target Milestone: --- → 157 Branch
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: