[Pkg-rust-maintainers] Bug#931003: rust-simd: FTBFS (unrecognized platform-specific intrinsic function: `x86_mm_movemask_ps`unrecognized platform-specific intrinsic function: `x86_mm_movemask_ps`)

Santiago Vila sanvila at debian.org
Mon Jun 24 12:36:17 BST 2019


Package: src:rust-simd
Version: 0.2.4-1
Severity: serious
Tags: ftbfs

Dear maintainer:

I tried to build this package in buster but it failed:

--------------------------------------------------------------------------------
[...]
 debian/rules build-arch
dh build-arch --buildsystem cargo
   dh_update_autotools_config -a -O--buildsystem=cargo
   dh_autoreconf -a -O--buildsystem=cargo
   dh_auto_configure -a -O--buildsystem=cargo
debian cargo wrapper: options, profiles, parallel: ['parallel=2'] [] ['-j2']
debian cargo wrapper: rust_type, gnu_type: x86_64-unknown-linux-gnu, x86_64-linux-gnu
debian cargo wrapper: linking /usr/share/cargo/registry/* into /<<PKGBUILDDIR>>/debian/cargo_registry/
   dh_auto_build -a -O--buildsystem=cargo
   debian/rules override_dh_auto_test
make[1]: Entering directory '/<<PKGBUILDDIR>>'
export RUSTC_BOOTSTRAP=1; \
case x86_64-unknown-linux-gnu in \
aarch64-*|x86-*|x86_64-*) \
  dh_auto_test;; \
*) \
  dh_auto_test || true;; \
esac
debian cargo wrapper: options, profiles, parallel: ['parallel=2'] [] ['-j2']
debian cargo wrapper: rust_type, gnu_type: x86_64-unknown-linux-gnu, x86_64-linux-gnu
debian cargo wrapper: running subprocess (['env', 'RUST_BACKTRACE=1', '/usr/bin/cargo', '-Zavoid-dev-deps', 'build', '--verbose', '--verbose', '-j2', '--target', 'x86_64-unknown-linux-gnu'],) {}
   Compiling simd v0.2.4 (/<<PKGBUILDDIR>>)
     Running `rustc --crate-name build_script_build build.rs --color never --crate-type bin --emit=dep-info,link -C debuginfo=2 -C metadata=2a26cedc068f1b94 -C extra-filename=-2a26cedc068f1b94 --out-dir /<<PKGBUILDDIR>>/target/debug/build/simd-2a26cedc068f1b94 -C incremental=/<<PKGBUILDDIR>>/target/debug/incremental -L dependency=/<<PKGBUILDDIR>>/target/debug/deps`
     Running `/<<PKGBUILDDIR>>/target/debug/build/simd-2a26cedc068f1b94/build-script-build`
[simd 0.2.4] cargo:rustc-env=RUSTC_BOOTSTRAP=1
     Running `rustc --crate-name simd src/lib.rs --color never --crate-type lib --emit=dep-info,link -C debuginfo=2 -C metadata=d42c16898eaf30fc -C extra-filename=-d42c16898eaf30fc --out-dir /<<PKGBUILDDIR>>/target/x86_64-unknown-linux-gnu/debug/deps --target x86_64-unknown-linux-gnu -C incremental=/<<PKGBUILDDIR>>/target/x86_64-unknown-linux-gnu/debug/incremental -L dependency=/<<PKGBUILDDIR>>/target/x86_64-unknown-linux-gnu/debug/deps -L dependency=/<<PKGBUILDDIR>>/target/debug/deps -C debuginfo=2 --cap-lints warn -C linker=x86_64-linux-gnu-gcc -C link-arg=-Wl,-z,relro --remap-path-prefix /<<PKGBUILDDIR>>=/usr/share/cargo/registry/simd-0.2.4`
warning: unnecessary parentheses around function argument
   --> src/common.rs:181:39
    |
181 |                                $name($( ($first as $repr_elem) ),*,
    |                                         ^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
...
280 | / bool_impls! {
281 | |     bool32ix4: bool32i, i32x4, i32, 4, bool32ix4_all, bool32ix4_any, x0, x1 | x2, x3
282 | |         [/// Convert `self` to a boolean vector for interacting with floating point vectors.
283 | |          to_f -> bool32fx4];
...   |
290 | |     bool8ix16: bool8i, i8x16, i8, 16, bool8ix16_all, bool8ix16_any, x0, x1, x2, x3, x4, x5, x6, x7 | x8, x9, x10, x11, x12, x13, x14, x15 [];
291 | | }
    | |_- in this macro invocation
    |
    = note: #[warn(unused_parens)] on by default

warning: unnecessary parentheses around function argument
   --> src/common.rs:181:39
    |
181 |                                $name($( ($first as $repr_elem) ),*,
    |                                         ^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
...
280 | / bool_impls! {
281 | |     bool32ix4: bool32i, i32x4, i32, 4, bool32ix4_all, bool32ix4_any, x0, x1 | x2, x3
282 | |         [/// Convert `self` to a boolean vector for interacting with floating point vectors.
283 | |          to_f -> bool32fx4];
...   |
290 | |     bool8ix16: bool8i, i8x16, i8, 16, bool8ix16_all, bool8ix16_any, x0, x1, x2, x3, x4, x5, x6, x7 | x8, x9, x10, x11, x12, x13, x14, x15 [];
291 | | }
    | |_- in this macro invocation

warning: unnecessary parentheses around function argument
   --> src/common.rs:182:39
    |
182 |                                      $( ($last as $repr_elem) ),*))
    |                                         ^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
...
280 | / bool_impls! {
281 | |     bool32ix4: bool32i, i32x4, i32, 4, bool32ix4_all, bool32ix4_any, x0, x1 | x2, x3
282 | |         [/// Convert `self` to a boolean vector for interacting with floating point vectors.
283 | |          to_f -> bool32fx4];
...   |
290 | |     bool8ix16: bool8i, i8x16, i8, 16, bool8ix16_all, bool8ix16_any, x0, x1, x2, x3, x4, x5, x6, x7 | x8, x9, x10, x11, x12, x13, x14, x15 [];
291 | | }
    | |_- in this macro invocation

warning: unnecessary parentheses around function argument
   --> src/common.rs:181:39
    |
181 |                                $name($( ($first as $repr_elem) ),*,
    |                                         ^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
    | 
   ::: src/sixty_four.rs:79:1
    |
79  | / bool_impls! {
80  | |     bool64ix2: bool64i, i64x2, i64, 2, bool64ix2_all, bool64ix2_any, x0 | x1
81  | |         [/// Convert `self` to a boolean vector for interacting with floating point vectors.
82  | |          to_f -> bool64fx2];
...   |
86  | |          to_i -> bool64ix2];
87  | | }
    | |_- in this macro invocation

warning: unnecessary parentheses around function argument
   --> src/common.rs:182:39
    |
182 |                                      $( ($last as $repr_elem) ),*))
    |                                         ^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
    | 
   ::: src/sixty_four.rs:79:1
    |
79  | / bool_impls! {
80  | |     bool64ix2: bool64i, i64x2, i64, 2, bool64ix2_all, bool64ix2_any, x0 | x1
81  | |         [/// Convert `self` to a boolean vector for interacting with floating point vectors.
82  | |          to_f -> bool64fx2];
...   |
86  | |          to_i -> bool64ix2];
87  | | }
    | |_- in this macro invocation

warning: unnecessary parentheses around function argument
   --> src/common.rs:181:39
    |
181 |                                $name($( ($first as $repr_elem) ),*,
    |                                         ^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
    | 
   ::: src/v256.rs:163:1
    |
163 | / bool_impls! {
164 | |     bool64ix4: bool64i, i64x4, i64, 4, bool64ix4_all, bool64ix4_any, x0, x1 | x2, x3
165 | |         [/// Convert `self` to a boolean vector for interacting with floating point vectors.
166 | |          to_f -> bool64fx4];
...   |
185 | |         x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31 [];
186 | | }
    | |_- in this macro invocation

warning: unnecessary parentheses around function argument
   --> src/common.rs:182:39
    |
182 |                                      $( ($last as $repr_elem) ),*))
    |                                         ^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
    | 
   ::: src/v256.rs:163:1
    |
163 | / bool_impls! {
164 | |     bool64ix4: bool64i, i64x4, i64, 4, bool64ix4_all, bool64ix4_any, x0, x1 | x2, x3
165 | |         [/// Convert `self` to a boolean vector for interacting with floating point vectors.
166 | |          to_f -> bool64fx4];
...   |
185 | |         x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31 [];
186 | | }
    | |_- in this macro invocation

error: unrecognized platform-specific intrinsic function: `x86_mm_movemask_ps`
  --> src/x86/sse2.rs:10:5
   |
10 |     fn x86_mm_movemask_ps(x: f32x4) -> i32;
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: unrecognized platform-specific intrinsic function: `x86_mm_max_ps`
  --> src/x86/sse2.rs:11:5
   |
11 |     fn x86_mm_max_ps(x: f32x4, y: f32x4) -> f32x4;
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: unrecognized platform-specific intrinsic function: `x86_mm_min_ps`
  --> src/x86/sse2.rs:12:5
   |
12 |     fn x86_mm_min_ps(x: f32x4, y: f32x4) -> f32x4;
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: unrecognized platform-specific intrinsic function: `x86_mm_rsqrt_ps`
  --> src/x86/sse2.rs:13:5
   |
13 |     fn x86_mm_rsqrt_ps(x: f32x4) -> f32x4;
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: unrecognized platform-specific intrinsic function: `x86_mm_rcp_ps`
  --> src/x86/sse2.rs:14:5
   |
14 |     fn x86_mm_rcp_ps(x: f32x4) -> f32x4;
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: unrecognized platform-specific intrinsic function: `x86_mm_sqrt_ps`
  --> src/x86/sse2.rs:15:5
   |
15 |     fn x86_mm_sqrt_ps(x: f32x4) -> f32x4;
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: unrecognized platform-specific intrinsic function: `x86_mm_adds_epi8`
  --> src/x86/sse2.rs:19:5
   |
19 |     fn x86_mm_adds_epi8(x: i8x16, y: i8x16) -> i8x16;
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: unrecognized platform-specific intrinsic function: `x86_mm_adds_epu8`
  --> src/x86/sse2.rs:20:5
   |
20 |     fn x86_mm_adds_epu8(x: u8x16, y: u8x16) -> u8x16;
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: unrecognized platform-specific intrinsic function: `x86_mm_adds_epi16`
  --> src/x86/sse2.rs:21:5
   |
21 |     fn x86_mm_adds_epi16(x: i16x8, y: i16x8) -> i16x8;
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: unrecognized platform-specific intrinsic function: `x86_mm_adds_epu16`
  --> src/x86/sse2.rs:22:5
   |
22 |     fn x86_mm_adds_epu16(x: u16x8, y: u16x8) -> u16x8;
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: unrecognized platform-specific intrinsic function: `x86_mm_avg_epu8`
  --> src/x86/sse2.rs:23:5
   |
23 |     fn x86_mm_avg_epu8(x: u8x16, y: u8x16) -> u8x16;
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: unrecognized platform-specific intrinsic function: `x86_mm_avg_epu16`
  --> src/x86/sse2.rs:24:5
   |
24 |     fn x86_mm_avg_epu16(x: u16x8, y: u16x8) -> u16x8;
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: unrecognized platform-specific intrinsic function: `x86_mm_madd_epi16`
  --> src/x86/sse2.rs:25:5
   |
25 |     fn x86_mm_madd_epi16(x: i16x8, y: i16x8) -> i32x4;
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: unrecognized platform-specific intrinsic function: `x86_mm_max_epi16`
  --> src/x86/sse2.rs:26:5
   |
26 |     fn x86_mm_max_epi16(x: i16x8, y: i16x8) -> i16x8;
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: unrecognized platform-specific intrinsic function: `x86_mm_max_epu8`
  --> src/x86/sse2.rs:27:5
   |
27 |     fn x86_mm_max_epu8(x: u8x16, y: u8x16) -> u8x16;
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: unrecognized platform-specific intrinsic function: `x86_mm_max_pd`
  --> src/x86/sse2.rs:28:5
   |
28 |     fn x86_mm_max_pd(x: f64x2, y: f64x2) -> f64x2;
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: unrecognized platform-specific intrinsic function: `x86_mm_min_epi16`
  --> src/x86/sse2.rs:29:5
   |
29 |     fn x86_mm_min_epi16(x: i16x8, y: i16x8) -> i16x8;
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: unrecognized platform-specific intrinsic function: `x86_mm_min_epu8`
  --> src/x86/sse2.rs:30:5
   |
30 |     fn x86_mm_min_epu8(x: u8x16, y: u8x16) -> u8x16;
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: unrecognized platform-specific intrinsic function: `x86_mm_min_pd`
  --> src/x86/sse2.rs:31:5
   |
31 |     fn x86_mm_min_pd(x: f64x2, y: f64x2) -> f64x2;
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: unrecognized platform-specific intrinsic function: `x86_mm_movemask_pd`
  --> src/x86/sse2.rs:32:5
   |
32 |     fn x86_mm_movemask_pd(x: f64x2) -> i32;
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: unrecognized platform-specific intrinsic function: `x86_mm_movemask_epi8`
  --> src/x86/sse2.rs:33:5
   |
33 |     fn x86_mm_movemask_epi8(x: i8x16) -> i32;
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: unrecognized platform-specific intrinsic function: `x86_mm_mul_epu32`
  --> src/x86/sse2.rs:34:5
   |
34 |     fn x86_mm_mul_epu32(x: u32x4, y: u32x4) -> u64x2;
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: unrecognized platform-specific intrinsic function: `x86_mm_mulhi_epi16`
  --> src/x86/sse2.rs:35:5
   |
35 |     fn x86_mm_mulhi_epi16(x: i16x8, y: i16x8) -> i16x8;
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: unrecognized platform-specific intrinsic function: `x86_mm_mulhi_epu16`
  --> src/x86/sse2.rs:36:5
   |
36 |     fn x86_mm_mulhi_epu16(x: u16x8, y: u16x8) -> u16x8;
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: unrecognized platform-specific intrinsic function: `x86_mm_packs_epi16`
  --> src/x86/sse2.rs:37:5
   |
37 |     fn x86_mm_packs_epi16(x: i16x8, y: i16x8) -> i8x16;
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: unrecognized platform-specific intrinsic function: `x86_mm_packs_epi32`
  --> src/x86/sse2.rs:38:5
   |
38 |     fn x86_mm_packs_epi32(x: i32x4, y: i32x4) -> i16x8;
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: unrecognized platform-specific intrinsic function: `x86_mm_packus_epi16`
  --> src/x86/sse2.rs:39:5
   |
39 |     fn x86_mm_packus_epi16(x: i16x8, y: i16x8) -> u8x16;
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: unrecognized platform-specific intrinsic function: `x86_mm_sad_epu8`
  --> src/x86/sse2.rs:40:5
   |
40 |     fn x86_mm_sad_epu8(x: u8x16, y: u8x16) -> u64x2;
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: unrecognized platform-specific intrinsic function: `x86_mm_sqrt_pd`
  --> src/x86/sse2.rs:41:5
   |
41 |     fn x86_mm_sqrt_pd(x: f64x2) -> f64x2;
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: unrecognized platform-specific intrinsic function: `x86_mm_subs_epi8`
  --> src/x86/sse2.rs:42:5
   |
42 |     fn x86_mm_subs_epi8(x: i8x16, y: i8x16) -> i8x16;
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: unrecognized platform-specific intrinsic function: `x86_mm_subs_epu8`
  --> src/x86/sse2.rs:43:5
   |
43 |     fn x86_mm_subs_epu8(x: u8x16, y: u8x16) -> u8x16;
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: unrecognized platform-specific intrinsic function: `x86_mm_subs_epi16`
  --> src/x86/sse2.rs:44:5
   |
44 |     fn x86_mm_subs_epi16(x: i16x8, y: i16x8) -> i16x8;
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: unrecognized platform-specific intrinsic function: `x86_mm_subs_epu16`
  --> src/x86/sse2.rs:45:5
   |
45 |     fn x86_mm_subs_epu16(x: u16x8, y: u16x8) -> u16x8;
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: aborting due to 33 previous errors

error: Could not compile `simd`.

Caused by:
  process didn't exit successfully: `rustc --crate-name simd src/lib.rs --color never --crate-type lib --emit=dep-info,link -C debuginfo=2 -C metadata=d42c16898eaf30fc -C extra-filename=-d42c16898eaf30fc --out-dir /<<PKGBUILDDIR>>/target/x86_64-unknown-linux-gnu/debug/deps --target x86_64-unknown-linux-gnu -C incremental=/<<PKGBUILDDIR>>/target/x86_64-unknown-linux-gnu/debug/incremental -L dependency=/<<PKGBUILDDIR>>/target/x86_64-unknown-linux-gnu/debug/deps -L dependency=/<<PKGBUILDDIR>>/target/debug/deps -C debuginfo=2 --cap-lints warn -C linker=x86_64-linux-gnu-gcc -C link-arg=-Wl,-z,relro --remap-path-prefix /<<PKGBUILDDIR>>=/usr/share/cargo/registry/simd-0.2.4` (exit code: 1)
dh_auto_test: /usr/share/cargo/bin/cargo build returned exit code 101
make[1]: *** [debian/rules:10: override_dh_auto_test] Error 25
make[1]: Leaving directory '/<<PKGBUILDDIR>>'
make: *** [debian/rules:4: build-arch] Error 2
dpkg-buildpackage: error: debian/rules build-arch subprocess returned exit status 2
--------------------------------------------------------------------------------

The build was made in my autobuilder with "dpkg-buildpackage -B"
and it also fails here:

https://tests.reproducible-builds.org/debian/rb-pkg/unstable/amd64/rust-simd.html

where you can get a full build log if you need it.

If this is really a bug in one of the build-depends, please use reassign and affects,
so that this is still visible in the BTS web page for this package.

Thanks.



More information about the Pkg-rust-maintainers mailing list