Closed Bug 1882209 Opened 3 months ago Closed 1 month ago

third_party/rust/packed_simd/src/lib.rs:219:5: error[E0635]: unknown feature `stdsimd`

Categories

(Firefox Build System :: General, defect, P3)

defect

Tracking

(firefox127 fixed)

RESOLVED FIXED
127 Branch
Tracking Status
firefox127 --- fixed

People

(Reporter: glandium, Assigned: hsivonen)

References

Details

Attachments

(1 file)

The packed_simd crate was broken by recent changes in the nightly rust compiler. See https://github.com/rust-lang/packed_simd/issues/359

Severity: -- → S3
Priority: -- → P3

I have released encoding_rs 0.8.34 to address this.

Assignee: nobody → hsivonen
Attachment #9396041 - Attachment description: WIP: Bug 1882209 - Update encoding_rs to 0.8.34 to deal with rustc changes. → Bug 1882209 - Update encoding_rs to 0.8.34 to deal with rustc changes.
Status: NEW → ASSIGNED
Depends on: 1890935
Pushed by mh@glandium.org:
https://hg.mozilla.org/integration/autoland/rev/05cb55554fc0
Update encoding_rs to 0.8.34 to deal with rustc changes. r=glandium,supply-chain-reviewers

Backed out for causing Android build bustages

Backout link

Push with failures

Failure log

Flags: needinfo?(hsivonen)

It looks like stdarch_arm_neon_intrinsics is in Nightly Rust but not in 1.76+RUSTC_BOOTSTRAP or 1.77+RUSTC_BOOTSTRAP. 1.78 beta + RUSTC_BOOTSTRAP works. Looks like 1.78 moves to stable on May 2nd.

So it looks like to avoid a performance regression, we need to go directly to 1.78. It appears that the blocked bug, bug 1878764, is about 1.78 anyway. Can we make MSRV go directly to 1.78 instead of 1.76, considering that on ARMv7, 1.78 appears to be the MSRV even if 1.76 may be the MSRV on x86_64 and aarch64?

Flags: needinfo?(hsivonen) → needinfo?(mh+mozilla)

And by "works", I mean cross-compiled cargo check without actually running the result. I did previously actually run the nightly result on an ARMv7 glibc system.

There's a chicken and egg problem. Our policy is to not upgrade the MSRV before at least two weeks elapsed since the upgrade to using that rust version.

That said, it seems like replacing stdarch_arm_neon_intrinsics with stdsimd on versions older than 1.78 would work. So we'd want something like this:
https://searchfox.org/mozilla-central/rev/ee9fd5e2df79c6d69af5aa9bc36041166f483227/gfx/qcms/src/lib.rs#10-12
https://searchfox.org/mozilla-central/rev/ee9fd5e2df79c6d69af5aa9bc36041166f483227/gfx/qcms/build.rs#4-6

Flags: needinfo?(mh+mozilla) → needinfo?(hsivonen)

(In reply to Mike Hommey [:glandium] from comment #7)

That said, it seems like replacing stdarch_arm_neon_intrinsics with stdsimd on versions older than 1.78 would work. So we'd want something like this:
https://searchfox.org/mozilla-central/rev/ee9fd5e2df79c6d69af5aa9bc36041166f483227/gfx/qcms/src/lib.rs#10-12
https://searchfox.org/mozilla-central/rev/ee9fd5e2df79c6d69af5aa9bc36041166f483227/gfx/qcms/build.rs#4-6

I updated the patch with this workaround. I think I copied it correctly.

Flags: needinfo?(hsivonen)
Pushed by hsivonen@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/1db2ef126a6a
Update encoding_rs to 0.8.34 to deal with rustc changes. r=glandium,supply-chain-reviewers
Status: ASSIGNED → RESOLVED
Closed: 1 month ago
Resolution: --- → FIXED
Target Milestone: --- → 127 Branch
Duplicate of this bug: 1896872
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: