Skip to content

Compilation fails with "nightly" feature due to packed-simd dependency #1047

@isislovecruft

Description

@isislovecruft

Compiling rand 0.7.3 fails with rustc 1.46.0 (04488afe3 2020-08-24) and later with --features "nightly", due to the packed-simd 0.3.3 dependency failing to build.

error[E0432]: unresolved import `crate::arch::x86_64::__m64`                                                                                                                                                                                   
  --> /home/isis/.cargo/registry/src/github.com-1ecc6299db9ec823/packed_simd-0.3.3/src/api/into_bits/arch_specific.rs:51:15                                                                                                                    
   |                                                                                                                                                                                                                                           
51 |               $($arch_ty),*                                                                                                                                                                                                               
   |                 ^^^^^^^^ no `__m64` in `arch::x86_64`                                                                                                                                                                                     
...                                                                                                                                                                                                                                            
86 | / impl_arch!(                                                                                                                                                                                                                             
87 | |     [x86["x86"]: __m64], [x86_64["x86_64"]: __m64],                                                                                                                                                                                     
88 | |     [arm["arm"]: int8x8_t, uint8x8_t, poly8x8_t, int16x4_t, uint16x4_t,                                                                                                                                                                 
89 | |      poly16x4_t, int32x2_t, uint32x2_t, float32x2_t, int64x1_t,                                                                                                                                                                         
...  |                                                                                                                                                                                                                                         
96 | |     test: test_v64                                                                                                                                                                                                                      
97 | | );                                                                                                                                                                                                                                      
   | |__- in this macro invocation                                                                                                                                                                                                             
   |                                                                                                                                                                                                                                           
   = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)                                                                                                                                     
                                                                                                                                                                                                                                               
error[E0432]: unresolved import `crate::arch::x86_64::_mm_movemask_pi8`                                                                                                                                                                        
  --> /home/isis/.cargo/registry/src/github.com-1ecc6299db9ec823/packed_simd-0.3.3/src/codegen/reductions/mask/x86/sse.rs:47:21                                                                                                                
   |                                                                                                                                                                                                                                           
47 |                 use crate::arch::x86_64::_mm_movemask_pi8;                                                                                                                                                                                
   |                     ^^^^^^^^^^^^^^^^^^^^^----------------                                                                                                                                                                                 
   |                     |                    |                                                                                                                                                                                                
   |                     |                    help: a similar name exists in the module: `_mm_movemask_epi8`                                                                                                                                   
   |                     no `_mm_movemask_pi8` in `arch::x86_64`                                                                                                                                                                               
   |                                                                                                                                                                                                                                           
  ::: /home/isis/.cargo/registry/src/github.com-1ecc6299db9ec823/packed_simd-0.3.3/src/codegen/reductions/mask.rs:41:1                                                                                                                         
   |                                                                                                                                                                                                                                           
41 | impl_mask_reductions!(m8x8);                                                                                                                                                                                                              
   | ---------------------------- in this macro invocation                                                                                                                                                                                     
   |                                                                                                                                                                                                                                           
   = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)                                                                                                                                     
                                                                                                                                                                                                                                               
error[E0432]: unresolved import `crate::arch::x86_64::_mm_movemask_pi8`                                                                                                                                                                        
  --> /home/isis/.cargo/registry/src/github.com-1ecc6299db9ec823/packed_simd-0.3.3/src/codegen/reductions/mask/x86/sse.rs:62:21                                                                                                                
   |                                                                                                                                                                                                                                           
62 |                 use crate::arch::x86_64::_mm_movemask_pi8;                                                                                                                                                                                
   |                     ^^^^^^^^^^^^^^^^^^^^^----------------                                                                                                                                                                                 
   |                     |                    |                                                                                                                                                                                                
   |                     |                    help: a similar name exists in the module: `_mm_movemask_epi8`                                                                                                                                   
   |                     no `_mm_movemask_pi8` in `arch::x86_64`                                                                                                                                                                               
   |                                                                                                                                                                                                                                           
  ::: /home/isis/.cargo/registry/src/github.com-1ecc6299db9ec823/packed_simd-0.3.3/src/codegen/reductions/mask.rs:41:1                                                                                                                         
   |
41 | impl_mask_reductions!(m8x8);
   | ---------------------------- in this macro invocation
   |
   = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0432]: unresolved import `crate::arch::x86_64::_mm_movemask_pi8`
  --> /home/isis/.cargo/registry/src/github.com-1ecc6299db9ec823/packed_simd-0.3.3/src/codegen/reductions/mask/x86/sse.rs:47:21                                                                                                               
   |
47 |                 use crate::arch::x86_64::_mm_movemask_pi8;
   |                     ^^^^^^^^^^^^^^^^^^^^^----------------
   |                     |                    |
   |                     |                    help: a similar name exists in the module: `_mm_movemask_epi8`
   |                     no `_mm_movemask_pi8` in `arch::x86_64`
   |
  ::: /home/isis/.cargo/registry/src/github.com-1ecc6299db9ec823/packed_simd-0.3.3/src/codegen/reductions/mask.rs:47:1
   |
47 | impl_mask_reductions!(m16x4);
   | ----------------------------- in this macro invocation
   |
   = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0432]: unresolved import `crate::arch::x86_64::_mm_movemask_pi8`
  --> /home/isis/.cargo/registry/src/github.com-1ecc6299db9ec823/packed_simd-0.3.3/src/codegen/reductions/mask/x86/sse.rs:62:21
   |
62 |                 use crate::arch::x86_64::_mm_movemask_pi8;
   |                     ^^^^^^^^^^^^^^^^^^^^^----------------
   |                     |                    |
   |                     |                    help: a similar name exists in the module: `_mm_movemask_epi8`
   |                     no `_mm_movemask_pi8` in `arch::x86_64`
   |
  ::: /home/isis/.cargo/registry/src/github.com-1ecc6299db9ec823/packed_simd-0.3.3/src/codegen/reductions/mask.rs:47:1
   |
47 | impl_mask_reductions!(m16x4);
   | ----------------------------- in this macro invocation
   |
   = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0432]: unresolved import `crate::arch::x86_64::_mm_movemask_pi8`
  --> /home/isis/.cargo/registry/src/github.com-1ecc6299db9ec823/packed_simd-0.3.3/src/codegen/reductions/mask/x86/sse.rs:47:21
   |
47 |                 use crate::arch::x86_64::_mm_movemask_pi8;
   |                     ^^^^^^^^^^^^^^^^^^^^^----------------
   |                     |                    |
   |                     |                    help: a similar name exists in the module: `_mm_movemask_epi8`
   |                     no `_mm_movemask_pi8` in `arch::x86_64`
   |
  ::: /home/isis/.cargo/registry/src/github.com-1ecc6299db9ec823/packed_simd-0.3.3/src/codegen/reductions/mask.rs:52:1
   |
52 | impl_mask_reductions!(m32x2);
   | ----------------------------- in this macro invocation
   |
   = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0432]: unresolved import `crate::arch::x86_64::_mm_movemask_pi8`
  --> /home/isis/.cargo/registry/src/github.com-1ecc6299db9ec823/packed_simd-0.3.3/src/codegen/reductions/mask/x86/sse.rs:62:21
   |
62 |                 use crate::arch::x86_64::_mm_movemask_pi8;
   |                     ^^^^^^^^^^^^^^^^^^^^^----------------
   |                     |                    |
   |                     |                    help: a similar name exists in the module: `_mm_movemask_epi8`
   |                     no `_mm_movemask_pi8` in `arch::x86_64`
   |
  ::: /home/isis/.cargo/registry/src/github.com-1ecc6299db9ec823/packed_simd-0.3.3/src/codegen/reductions/mask.rs:52:1
   |
52 | impl_mask_reductions!(m32x2);
   | ----------------------------- in this macro invocation
   |
   = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)

It appears that packed-simd has been failing to build on nightlies for a while now. I've worked around this by not forwarding the "nightly" feature in https://github.com/dalek-cryptography/ed25519-dalek to our rand dependency.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions