@@ -762,35 +762,6 @@ pub unsafe fn _mm512_mask_i64scatter_epi32(
762
762
constify_imm8_gather ! ( scale, call) ;
763
763
}
764
764
765
- #[ allow( improper_ctypes) ]
766
- extern "C" {
767
- #[ link_name = "llvm.x86.avx512.gather.dpd.512" ]
768
- fn vgatherdpd ( src : f64x8 , slice : * const i8 , offsets : i32x8 , mask : i8 , scale : i32 ) -> f64x8 ;
769
- #[ link_name = "llvm.x86.avx512.gather.qpd.512" ]
770
- fn vgatherqpd ( src : f64x8 , slice : * const i8 , offsets : i64x8 , mask : i8 , scale : i32 ) -> f64x8 ;
771
- #[ link_name = "llvm.x86.avx512.gather.qps.512" ]
772
- fn vgatherqps ( src : f32x8 , slice : * const i8 , offsets : i64x8 , mask : i8 , scale : i32 ) -> f32x8 ;
773
- #[ link_name = "llvm.x86.avx512.gather.dpq.512" ]
774
- fn vpgatherdq ( src : i64x8 , slice : * const i8 , offsets : i32x8 , mask : i8 , scale : i32 ) -> i64x8 ;
775
- #[ link_name = "llvm.x86.avx512.gather.qpq.512" ]
776
- fn vpgatherqq ( src : i64x8 , slice : * const i8 , offsets : i64x8 , mask : i8 , scale : i32 ) -> i64x8 ;
777
- #[ link_name = "llvm.x86.avx512.gather.qpi.512" ]
778
- fn vpgatherqd ( src : i32x8 , slice : * const i8 , offsets : i64x8 , mask : i8 , scale : i32 ) -> i32x8 ;
779
-
780
- #[ link_name = "llvm.x86.avx512.scatter.dpd.512" ]
781
- fn vscatterdpd ( slice : * mut i8 , mask : i8 , offsets : i32x8 , src : f64x8 , scale : i32 ) ;
782
- #[ link_name = "llvm.x86.avx512.scatter.qpd.512" ]
783
- fn vscatterqpd ( slice : * mut i8 , mask : i8 , offsets : i64x8 , src : f64x8 , scale : i32 ) ;
784
- #[ link_name = "llvm.x86.avx512.scatter.qps.512" ]
785
- fn vscatterqps ( slice : * mut i8 , mask : i8 , offsets : i64x8 , src : f32x8 , scale : i32 ) ;
786
- #[ link_name = "llvm.x86.avx512.scatter.dpq.512" ]
787
- fn vpscatterdq ( slice : * mut i8 , mask : i8 , offsets : i32x8 , src : i64x8 , scale : i32 ) ;
788
- #[ link_name = "llvm.x86.avx512.scatter.qpq.512" ]
789
- fn vpscatterqq ( slice : * mut i8 , mask : i8 , offsets : i64x8 , src : i64x8 , scale : i32 ) ;
790
- #[ link_name = "llvm.x86.avx512.scatter.qpi.512" ]
791
- fn vpscatterqd ( slice : * mut i8 , mask : i8 , offsets : i64x8 , src : i32x8 , scale : i32 ) ;
792
- }
793
-
794
765
/// Sets packed 32-bit integers in `dst` with the supplied values.
795
766
///
796
767
/// [Intel's documentation]( https://software.intel.com/sites/landingpage/IntrinsicsGuide/#expand=727,1063,4909,1062,1062,4909&text=_mm512_set_ps)
@@ -847,7 +818,6 @@ pub unsafe fn _mm512_setr_ps(
847
818
e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15,
848
819
) ;
849
820
transmute ( r)
850
- >>>>>>> avx-512 -cmp
851
821
}
852
822
853
823
/// Broadcast 64-bit float `a` to all elements of `dst`.
@@ -1608,6 +1578,21 @@ extern "C" {
1608
1578
#[ link_name = "llvm.x86.avx512.gather.qpi.512" ]
1609
1579
fn vpgatherqd ( src : i32x8 , slice : * const i8 , offsets : i64x8 , mask : i8 , scale : i32 ) -> i32x8 ;
1610
1580
1581
+ #[ link_name = "llvm.x86.avx512.scatter.dpd.512" ]
1582
+ fn vscatterdpd ( slice : * mut i8 , mask : i8 , offsets : i32x8 , src : f64x8 , scale : i32 ) ;
1583
+ #[ link_name = "llvm.x86.avx512.scatter.qpd.512" ]
1584
+ fn vscatterqpd ( slice : * mut i8 , mask : i8 , offsets : i64x8 , src : f64x8 , scale : i32 ) ;
1585
+ #[ link_name = "llvm.x86.avx512.scatter.qps.512" ]
1586
+ fn vscatterqps ( slice : * mut i8 , mask : i8 , offsets : i64x8 , src : f32x8 , scale : i32 ) ;
1587
+ #[ link_name = "llvm.x86.avx512.scatter.dpq.512" ]
1588
+ fn vpscatterdq ( slice : * mut i8 , mask : i8 , offsets : i32x8 , src : i64x8 , scale : i32 ) ;
1589
+ #[ link_name = "llvm.x86.avx512.scatter.dpi.512" ]
1590
+ fn vpscatterdd ( slice : * mut i8 , mask : i16 , offsets : i32x16 , src : i32x16 , scale : i32 ) ;
1591
+ #[ link_name = "llvm.x86.avx512.scatter.qpq.512" ]
1592
+ fn vpscatterqq ( slice : * mut i8 , mask : i8 , offsets : i64x8 , src : i64x8 , scale : i32 ) ;
1593
+ #[ link_name = "llvm.x86.avx512.scatter.qpi.512" ]
1594
+ fn vpscatterqd ( slice : * mut i8 , mask : i8 , offsets : i64x8 , src : i32x8 , scale : i32 ) ;
1595
+
1611
1596
#[ link_name = "llvm.x86.avx512.mask.ucmp.q.512" ]
1612
1597
fn vpcmpuq ( a : i64x8 , b : i64x8 , op : i32 , m : i8 ) -> i8 ;
1613
1598
#[ link_name = "llvm.x86.avx512.mask.cmp.q.512" ]
0 commit comments