@@ -19,90 +19,81 @@ pub(crate) type p128 = u128;
19
19
types ! {
20
20
/// ARM-specific 64-bit wide vector of eight packed `i8`.
21
21
#[ cfg_attr( not( target_arch = "arm" ) , stable( feature = "neon_intrinsics" , since = "1.59.0" ) ) ]
22
- pub struct int8x8_t( pub ( crate ) i8 , pub ( crate ) i8 , pub ( crate ) i8 , pub ( crate ) i8 , pub ( crate ) i8 , pub ( crate ) i8 , pub ( crate ) i8 , pub ( crate ) i8 ) ;
22
+ pub struct int8x8_t( pub ( crate ) [ i8 ; 8 ] ) ;
23
23
/// ARM-specific 64-bit wide vector of eight packed `u8`.
24
24
#[ cfg_attr( not( target_arch = "arm" ) , stable( feature = "neon_intrinsics" , since = "1.59.0" ) ) ]
25
- pub struct uint8x8_t( pub ( crate ) u8 , pub ( crate ) u8 , pub ( crate ) u8 , pub ( crate ) u8 , pub ( crate ) u8 , pub ( crate ) u8 , pub ( crate ) u8 , pub ( crate ) u8 ) ;
25
+ pub struct uint8x8_t( pub ( crate ) [ u8 ; 8 ] ) ;
26
26
/// ARM-specific 64-bit wide polynomial vector of eight packed `p8`.
27
27
#[ cfg_attr( not( target_arch = "arm" ) , stable( feature = "neon_intrinsics" , since = "1.59.0" ) ) ]
28
- pub struct poly8x8_t( pub ( crate ) p8 , pub ( crate ) p8 , pub ( crate ) p8 , pub ( crate ) p8 , pub ( crate ) p8 , pub ( crate ) p8 , pub ( crate ) p8 , pub ( crate ) p8 ) ;
28
+ pub struct poly8x8_t( pub ( crate ) [ p8 ; 8 ] ) ;
29
29
/// ARM-specific 64-bit wide vector of four packed `i16`.
30
30
#[ cfg_attr( not( target_arch = "arm" ) , stable( feature = "neon_intrinsics" , since = "1.59.0" ) ) ]
31
- pub struct int16x4_t( pub ( crate ) i16 , pub ( crate ) i16 , pub ( crate ) i16 , pub ( crate ) i16 ) ;
31
+ pub struct int16x4_t( pub ( crate ) [ i16 ; 4 ] ) ;
32
32
/// ARM-specific 64-bit wide vector of four packed `u16`.
33
33
#[ cfg_attr( not( target_arch = "arm" ) , stable( feature = "neon_intrinsics" , since = "1.59.0" ) ) ]
34
- pub struct uint16x4_t( pub ( crate ) u16 , pub ( crate ) u16 , pub ( crate ) u16 , pub ( crate ) u16 ) ;
34
+ pub struct uint16x4_t( pub ( crate ) [ u16 ; 4 ] ) ;
35
35
// FIXME: ARM-specific 64-bit wide vector of four packed `f16`.
36
36
// pub struct float16x4_t(f16, f16, f16, f16);
37
37
/// ARM-specific 64-bit wide vector of four packed `p16`.
38
38
#[ cfg_attr( not( target_arch = "arm" ) , stable( feature = "neon_intrinsics" , since = "1.59.0" ) ) ]
39
- pub struct poly16x4_t( pub ( crate ) p16, pub ( crate ) p16 , pub ( crate ) p16 , pub ( crate ) p16 ) ;
39
+ pub struct poly16x4_t( pub ( crate ) [ p16; 4 ] ) ;
40
40
/// ARM-specific 64-bit wide vector of two packed `i32`.
41
41
#[ cfg_attr( not( target_arch = "arm" ) , stable( feature = "neon_intrinsics" , since = "1.59.0" ) ) ]
42
- pub struct int32x2_t( pub ( crate ) i32 , pub ( crate ) i32 ) ;
42
+ pub struct int32x2_t( pub ( crate ) [ i32 ; 2 ] ) ;
43
43
/// ARM-specific 64-bit wide vector of two packed `u32`.
44
44
#[ cfg_attr( not( target_arch = "arm" ) , stable( feature = "neon_intrinsics" , since = "1.59.0" ) ) ]
45
- pub struct uint32x2_t( pub ( crate ) u32 , pub ( crate ) u32 ) ;
45
+ pub struct uint32x2_t( pub ( crate ) [ u32 ; 2 ] ) ;
46
46
/// ARM-specific 64-bit wide vector of two packed `f32`.
47
47
#[ cfg_attr( not( target_arch = "arm" ) , stable( feature = "neon_intrinsics" , since = "1.59.0" ) ) ]
48
- pub struct float32x2_t( pub ( crate ) f32 , pub ( crate ) f32 ) ;
48
+ pub struct float32x2_t( pub ( crate ) [ f32 ; 2 ] ) ;
49
49
/// ARM-specific 64-bit wide vector of one packed `i64`.
50
50
#[ cfg_attr( not( target_arch = "arm" ) , stable( feature = "neon_intrinsics" , since = "1.59.0" ) ) ]
51
- pub struct int64x1_t( pub ( crate ) i64 ) ;
51
+ pub struct int64x1_t( pub ( crate ) [ i64 ; 1 ] ) ;
52
52
/// ARM-specific 64-bit wide vector of one packed `u64`.
53
53
#[ cfg_attr( not( target_arch = "arm" ) , stable( feature = "neon_intrinsics" , since = "1.59.0" ) ) ]
54
- pub struct uint64x1_t( pub ( crate ) u64 ) ;
54
+ pub struct uint64x1_t( pub ( crate ) [ u64 ; 1 ] ) ;
55
55
/// ARM-specific 64-bit wide vector of one packed `p64`.
56
56
#[ cfg_attr( not( target_arch = "arm" ) , stable( feature = "neon_intrinsics" , since = "1.59.0" ) ) ]
57
- pub struct poly64x1_t( pub ( crate ) p64) ;
57
+ pub struct poly64x1_t( pub ( crate ) [ p64; 1 ] ) ;
58
58
59
59
/// ARM-specific 128-bit wide vector of sixteen packed `i8`.
60
60
#[ cfg_attr( not( target_arch = "arm" ) , stable( feature = "neon_intrinsics" , since = "1.59.0" ) ) ]
61
- pub struct int8x16_t(
62
- pub ( crate ) i8 , pub ( crate ) i8 , pub ( crate ) i8 , pub ( crate ) i8 , pub ( crate ) i8 , pub ( crate ) i8 , pub ( crate ) i8 , pub ( crate ) i8 ,
63
- pub ( crate ) i8 , pub ( crate ) i8 , pub ( crate ) i8 , pub ( crate ) i8 , pub ( crate ) i8 , pub ( crate ) i8 , pub ( crate ) i8 , pub ( crate ) i8 ,
64
- ) ;
61
+ pub struct int8x16_t( pub ( crate ) [ i8 ; 16 ] ) ;
65
62
/// ARM-specific 128-bit wide vector of sixteen packed `u8`.
66
63
#[ cfg_attr( not( target_arch = "arm" ) , stable( feature = "neon_intrinsics" , since = "1.59.0" ) ) ]
67
- pub struct uint8x16_t(
68
- pub ( crate ) u8 , pub ( crate ) u8 , pub ( crate ) u8 , pub ( crate ) u8 , pub ( crate ) u8 , pub ( crate ) u8 , pub ( crate ) u8 , pub ( crate ) u8 ,
69
- pub ( crate ) u8 , pub ( crate ) u8 , pub ( crate ) u8 , pub ( crate ) u8 , pub ( crate ) u8 , pub ( crate ) u8 , pub ( crate ) u8 , pub ( crate ) u8 ,
70
- ) ;
64
+ pub struct uint8x16_t( pub ( crate ) [ u8 ; 16 ] ) ;
71
65
/// ARM-specific 128-bit wide vector of sixteen packed `p8`.
72
66
#[ cfg_attr( not( target_arch = "arm" ) , stable( feature = "neon_intrinsics" , since = "1.59.0" ) ) ]
73
- pub struct poly8x16_t(
74
- pub ( crate ) p8, pub ( crate ) p8, pub ( crate ) p8, pub ( crate ) p8, pub ( crate ) p8, pub ( crate ) p8, pub ( crate ) p8, pub ( crate ) p8,
75
- pub ( crate ) p8, pub ( crate ) p8, pub ( crate ) p8, pub ( crate ) p8, pub ( crate ) p8, pub ( crate ) p8, pub ( crate ) p8, pub ( crate ) p8,
76
- ) ;
67
+ pub struct poly8x16_t( pub ( crate ) [ p8; 16 ] ) ;
77
68
/// ARM-specific 128-bit wide vector of eight packed `i16`.
78
69
#[ cfg_attr( not( target_arch = "arm" ) , stable( feature = "neon_intrinsics" , since = "1.59.0" ) ) ]
79
- pub struct int16x8_t( pub ( crate ) i16 , pub ( crate ) i16 , pub ( crate ) i16 , pub ( crate ) i16 , pub ( crate ) i16 , pub ( crate ) i16 , pub ( crate ) i16 , pub ( crate ) i16 ) ;
70
+ pub struct int16x8_t( pub ( crate ) [ i16 ; 8 ] ) ;
80
71
/// ARM-specific 128-bit wide vector of eight packed `u16`.
81
72
#[ cfg_attr( not( target_arch = "arm" ) , stable( feature = "neon_intrinsics" , since = "1.59.0" ) ) ]
82
- pub struct uint16x8_t( pub ( crate ) u16 , pub ( crate ) u16 , pub ( crate ) u16 , pub ( crate ) u16 , pub ( crate ) u16 , pub ( crate ) u16 , pub ( crate ) u16 , pub ( crate ) u16 ) ;
73
+ pub struct uint16x8_t( pub ( crate ) [ u16 ; 8 ] ) ;
83
74
// FIXME: ARM-specific 128-bit wide vector of eight packed `f16`.
84
75
// pub struct float16x8_t(f16, f16, f16, f16, f16, f16, f16);
85
76
/// ARM-specific 128-bit wide vector of eight packed `p16`.
86
77
#[ cfg_attr( not( target_arch = "arm" ) , stable( feature = "neon_intrinsics" , since = "1.59.0" ) ) ]
87
- pub struct poly16x8_t( pub ( crate ) p16, pub ( crate ) p16 , pub ( crate ) p16 , pub ( crate ) p16 , pub ( crate ) p16 , pub ( crate ) p16 , pub ( crate ) p16 , pub ( crate ) p16 ) ;
78
+ pub struct poly16x8_t( pub ( crate ) [ p16; 8 ] ) ;
88
79
/// ARM-specific 128-bit wide vector of four packed `i32`.
89
80
#[ cfg_attr( not( target_arch = "arm" ) , stable( feature = "neon_intrinsics" , since = "1.59.0" ) ) ]
90
- pub struct int32x4_t( pub ( crate ) i32 , pub ( crate ) i32 , pub ( crate ) i32 , pub ( crate ) i32 ) ;
81
+ pub struct int32x4_t( pub ( crate ) [ i32 ; 4 ] ) ;
91
82
/// ARM-specific 128-bit wide vector of four packed `u32`.
92
83
#[ cfg_attr( not( target_arch = "arm" ) , stable( feature = "neon_intrinsics" , since = "1.59.0" ) ) ]
93
- pub struct uint32x4_t( pub ( crate ) u32 , pub ( crate ) u32 , pub ( crate ) u32 , pub ( crate ) u32 ) ;
84
+ pub struct uint32x4_t( pub ( crate ) [ u32 ; 4 ] ) ;
94
85
/// ARM-specific 128-bit wide vector of four packed `f32`.
95
86
#[ cfg_attr( not( target_arch = "arm" ) , stable( feature = "neon_intrinsics" , since = "1.59.0" ) ) ]
96
- pub struct float32x4_t( pub ( crate ) f32 , pub ( crate ) f32 , pub ( crate ) f32 , pub ( crate ) f32 ) ;
87
+ pub struct float32x4_t( pub ( crate ) [ f32 ; 4 ] ) ;
97
88
/// ARM-specific 128-bit wide vector of two packed `i64`.
98
89
#[ cfg_attr( not( target_arch = "arm" ) , stable( feature = "neon_intrinsics" , since = "1.59.0" ) ) ]
99
- pub struct int64x2_t( pub ( crate ) i64 , pub ( crate ) i64 ) ;
90
+ pub struct int64x2_t( pub ( crate ) [ i64 ; 2 ] ) ;
100
91
/// ARM-specific 128-bit wide vector of two packed `u64`.
101
92
#[ cfg_attr( not( target_arch = "arm" ) , stable( feature = "neon_intrinsics" , since = "1.59.0" ) ) ]
102
- pub struct uint64x2_t( pub ( crate ) u64 , pub ( crate ) u64 ) ;
93
+ pub struct uint64x2_t( pub ( crate ) [ u64 ; 2 ] ) ;
103
94
/// ARM-specific 128-bit wide vector of two packed `p64`.
104
95
#[ cfg_attr( not( target_arch = "arm" ) , stable( feature = "neon_intrinsics" , since = "1.59.0" ) ) ]
105
- pub struct poly64x2_t( pub ( crate ) p64, pub ( crate ) p64 ) ;
96
+ pub struct poly64x2_t( pub ( crate ) [ p64; 2 ] ) ;
106
97
}
107
98
108
99
/// ARM-specific type containing two `int8x8_t` vectors.
@@ -738,12 +729,7 @@ pub struct poly64x1x3_t(pub poly64x1_t, pub poly64x1_t, pub poly64x1_t);
738
729
not( target_arch = "arm" ) ,
739
730
stable( feature = "neon_intrinsics" , since = "1.59.0" )
740
731
) ]
741
- pub struct poly64x1x4_t (
742
- pub poly64x1_t ,
743
- pub poly64x1_t ,
744
- pub poly64x1_t ,
745
- pub poly64x1_t ,
746
- ) ;
732
+ pub struct poly64x1x4_t ( pub [ poly64x1_t ; 4 ] ) ;
747
733
748
734
/// ARM-specific type containing four `poly64x2_t` vectors.
749
735
#[ repr( C ) ]
@@ -752,28 +738,23 @@ pub struct poly64x1x4_t(
752
738
not( target_arch = "arm" ) ,
753
739
stable( feature = "neon_intrinsics" , since = "1.59.0" )
754
740
) ]
755
- pub struct poly64x2x2_t ( pub poly64x2_t , pub poly64x2_t ) ;
741
+ pub struct poly64x2x2_t ( pub [ poly64x2_t ; 2 ] ) ;
756
742
/// ARM-specific type containing four `poly64x2_t` vectors.
757
743
#[ repr( C ) ]
758
744
#[ derive( Copy , Clone , Debug ) ]
759
745
#[ cfg_attr(
760
746
not( target_arch = "arm" ) ,
761
747
stable( feature = "neon_intrinsics" , since = "1.59.0" )
762
748
) ]
763
- pub struct poly64x2x3_t ( pub poly64x2_t , pub poly64x2_t , pub poly64x2_t ) ;
749
+ pub struct poly64x2x3_t ( pub [ poly64x2_t ; 3 ] ) ;
764
750
/// ARM-specific type containing four `poly64x2_t` vectors.
765
751
#[ repr( C ) ]
766
752
#[ derive( Copy , Clone , Debug ) ]
767
753
#[ cfg_attr(
768
754
not( target_arch = "arm" ) ,
769
755
stable( feature = "neon_intrinsics" , since = "1.59.0" )
770
756
) ]
771
- pub struct poly64x2x4_t (
772
- pub poly64x2_t ,
773
- pub poly64x2_t ,
774
- pub poly64x2_t ,
775
- pub poly64x2_t ,
776
- ) ;
757
+ pub struct poly64x2x4_t ( pub [ poly64x2_t ; 4 ] ) ;
777
758
778
759
#[ allow( improper_ctypes) ]
779
760
extern "unadjusted" {
0 commit comments