Skip to content

Benchmark for pathfinder is broken on latest nightly #35

@utensil

Description

@utensil

Simply cargo bench --features scalar scalar after clone results in compile error:

error[E0511]: invalid monomorphization of `simd_shuffle` intrinsic: simd_shuffle index must be a SIMD vector of `u32`, got `[u32; 2]`
   --> ~/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pathfinder_simd-0.5.4/src/arm/mod.rs:348:24
    |
348 |         unsafe { F32x2(simd_shuffle2!(self.0, self.0, [2, 3])) }
    |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    |
    = note: this error originates in the macro `simd_shuffle2` (in Nightly builds, run with -Z macro-backtrace for more info)

(...omitted...)

This is reported as servo/pathfinder#571, and the root causes are identified in the comments (Rust changes). There is also a temporary solution by Zed developers: servo/pathfinder@main...theoparis:pathfinder:05f19143e21a96027de7cf2d60fa47ecd8899d21 , which works for my MacBookPro M1.

A temporary workaround for mathbench-rs is to use such fixed branch, namely:

[dependencies.pathfinder_geometry]
git = "https://github.com/theoparis/pathfinder.git"
rev = "05f19143e21a96027de7cf2d60fa47ecd8899d21"
optional = true

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions