@@ -40,8 +40,8 @@ pub unsafe fn vabdq_f64(a: float64x2_t, b: float64x2_t) -> float64x2_t {
4040#[target_feature(enable = "neon")]
4141#[cfg_attr(test, assert_instr(uabdl))]
4242pub unsafe fn vabdl_high_u8(a: uint8x16_t, b: uint8x16_t) -> uint16x8_t {
43- let c: uint8x8_t = simd_shuffle8(a, a, [8, 9, 10, 11, 12, 13, 14, 15]);
44- let d: uint8x8_t = simd_shuffle8(b, b, [8, 9, 10, 11, 12, 13, 14, 15]);
43+ let c: uint8x8_t = simd_shuffle8! (a, a, [8, 9, 10, 11, 12, 13, 14, 15]);
44+ let d: uint8x8_t = simd_shuffle8! (b, b, [8, 9, 10, 11, 12, 13, 14, 15]);
4545 simd_cast(vabd_u8(c, d))
4646}
4747
@@ -50,8 +50,8 @@ pub unsafe fn vabdl_high_u8(a: uint8x16_t, b: uint8x16_t) -> uint16x8_t {
5050#[target_feature(enable = "neon")]
5151#[cfg_attr(test, assert_instr(uabdl))]
5252pub unsafe fn vabdl_high_u16(a: uint16x8_t, b: uint16x8_t) -> uint32x4_t {
53- let c: uint16x4_t = simd_shuffle4(a, a, [4, 5, 6, 7]);
54- let d: uint16x4_t = simd_shuffle4(b, b, [4, 5, 6, 7]);
53+ let c: uint16x4_t = simd_shuffle4! (a, a, [4, 5, 6, 7]);
54+ let d: uint16x4_t = simd_shuffle4! (b, b, [4, 5, 6, 7]);
5555 simd_cast(vabd_u16(c, d))
5656}
5757
@@ -60,8 +60,8 @@ pub unsafe fn vabdl_high_u16(a: uint16x8_t, b: uint16x8_t) -> uint32x4_t {
6060#[target_feature(enable = "neon")]
6161#[cfg_attr(test, assert_instr(uabdl))]
6262pub unsafe fn vabdl_high_u32(a: uint32x4_t, b: uint32x4_t) -> uint64x2_t {
63- let c: uint32x2_t = simd_shuffle2(a, a, [2, 3]);
64- let d: uint32x2_t = simd_shuffle2(b, b, [2, 3]);
63+ let c: uint32x2_t = simd_shuffle2! (a, a, [2, 3]);
64+ let d: uint32x2_t = simd_shuffle2! (b, b, [2, 3]);
6565 simd_cast(vabd_u32(c, d))
6666}
6767
@@ -70,8 +70,8 @@ pub unsafe fn vabdl_high_u32(a: uint32x4_t, b: uint32x4_t) -> uint64x2_t {
7070#[target_feature(enable = "neon")]
7171#[cfg_attr(test, assert_instr(sabdl))]
7272pub unsafe fn vabdl_high_s8(a: int8x16_t, b: int8x16_t) -> int16x8_t {
73- let c: int8x8_t = simd_shuffle8(a, a, [8, 9, 10, 11, 12, 13, 14, 15]);
74- let d: int8x8_t = simd_shuffle8(b, b, [8, 9, 10, 11, 12, 13, 14, 15]);
73+ let c: int8x8_t = simd_shuffle8! (a, a, [8, 9, 10, 11, 12, 13, 14, 15]);
74+ let d: int8x8_t = simd_shuffle8! (b, b, [8, 9, 10, 11, 12, 13, 14, 15]);
7575 let e: uint8x8_t = simd_cast(vabd_s8(c, d));
7676 simd_cast(e)
7777}
@@ -81,8 +81,8 @@ pub unsafe fn vabdl_high_s8(a: int8x16_t, b: int8x16_t) -> int16x8_t {
8181#[target_feature(enable = "neon")]
8282#[cfg_attr(test, assert_instr(sabdl))]
8383pub unsafe fn vabdl_high_s16(a: int16x8_t, b: int16x8_t) -> int32x4_t {
84- let c: int16x4_t = simd_shuffle4(a, a, [4, 5, 6, 7]);
85- let d: int16x4_t = simd_shuffle4(b, b, [4, 5, 6, 7]);
84+ let c: int16x4_t = simd_shuffle4! (a, a, [4, 5, 6, 7]);
85+ let d: int16x4_t = simd_shuffle4! (b, b, [4, 5, 6, 7]);
8686 let e: uint16x4_t = simd_cast(vabd_s16(c, d));
8787 simd_cast(e)
8888}
@@ -92,8 +92,8 @@ pub unsafe fn vabdl_high_s16(a: int16x8_t, b: int16x8_t) -> int32x4_t {
9292#[target_feature(enable = "neon")]
9393#[cfg_attr(test, assert_instr(sabdl))]
9494pub unsafe fn vabdl_high_s32(a: int32x4_t, b: int32x4_t) -> int64x2_t {
95- let c: int32x2_t = simd_shuffle2(a, a, [2, 3]);
96- let d: int32x2_t = simd_shuffle2(b, b, [2, 3]);
95+ let c: int32x2_t = simd_shuffle2! (a, a, [2, 3]);
96+ let d: int32x2_t = simd_shuffle2! (b, b, [2, 3]);
9797 let e: uint32x2_t = simd_cast(vabd_s32(c, d));
9898 simd_cast(e)
9999}
@@ -2077,7 +2077,7 @@ pub unsafe fn vcvt_f64_f32(a: float32x2_t) -> float64x2_t {
20772077#[target_feature(enable = "neon")]
20782078#[cfg_attr(test, assert_instr(fcvtl))]
20792079pub unsafe fn vcvt_high_f64_f32(a: float32x4_t) -> float64x2_t {
2080- let b: float32x2_t = simd_shuffle2(a, a, [2, 3]);
2080+ let b: float32x2_t = simd_shuffle2! (a, a, [2, 3]);
20812081 simd_cast(b)
20822082}
20832083
@@ -2094,7 +2094,7 @@ pub unsafe fn vcvt_f32_f64(a: float64x2_t) -> float32x2_t {
20942094#[target_feature(enable = "neon")]
20952095#[cfg_attr(test, assert_instr(fcvtn))]
20962096pub unsafe fn vcvt_high_f32_f64(a: float32x2_t, b: float64x2_t) -> float32x4_t {
2097- simd_shuffle4(a, simd_cast(b), [0, 1, 2, 3])
2097+ simd_shuffle4! (a, simd_cast(b), [0, 1, 2, 3])
20982098}
20992099
21002100/// Floating-point convert to lower precision narrow, rounding to odd
@@ -2115,7 +2115,7 @@ pub unsafe fn vcvtx_f32_f64(a: float64x2_t) -> float32x2_t {
21152115#[target_feature(enable = "neon")]
21162116#[cfg_attr(test, assert_instr(fcvtxn))]
21172117pub unsafe fn vcvtx_high_f32_f64(a: float32x2_t, b: float64x2_t) -> float32x4_t {
2118- simd_shuffle4(a, vcvtx_f32_f64(b), [0, 1, 2, 3])
2118+ simd_shuffle4! (a, vcvtx_f32_f64(b), [0, 1, 2, 3])
21192119}
21202120
21212121/// Fixed-point convert to floating-point
@@ -5167,7 +5167,7 @@ pub unsafe fn vaddlvq_u32(a: uint32x4_t) -> u64 {
51675167#[target_feature(enable = "neon")]
51685168#[cfg_attr(test, assert_instr(ssubw))]
51695169pub unsafe fn vsubw_high_s8(a: int16x8_t, b: int8x16_t) -> int16x8_t {
5170- let c: int8x8_t = simd_shuffle8(b, b, [8, 9, 10, 11, 12, 13, 14, 15]);
5170+ let c: int8x8_t = simd_shuffle8! (b, b, [8, 9, 10, 11, 12, 13, 14, 15]);
51715171 simd_sub(a, simd_cast(c))
51725172}
51735173
@@ -5176,7 +5176,7 @@ pub unsafe fn vsubw_high_s8(a: int16x8_t, b: int8x16_t) -> int16x8_t {
51765176#[target_feature(enable = "neon")]
51775177#[cfg_attr(test, assert_instr(ssubw))]
51785178pub unsafe fn vsubw_high_s16(a: int32x4_t, b: int16x8_t) -> int32x4_t {
5179- let c: int16x4_t = simd_shuffle4(b, b, [4, 5, 6, 7]);
5179+ let c: int16x4_t = simd_shuffle4! (b, b, [4, 5, 6, 7]);
51805180 simd_sub(a, simd_cast(c))
51815181}
51825182
@@ -5185,7 +5185,7 @@ pub unsafe fn vsubw_high_s16(a: int32x4_t, b: int16x8_t) -> int32x4_t {
51855185#[target_feature(enable = "neon")]
51865186#[cfg_attr(test, assert_instr(ssubw))]
51875187pub unsafe fn vsubw_high_s32(a: int64x2_t, b: int32x4_t) -> int64x2_t {
5188- let c: int32x2_t = simd_shuffle2(b, b, [2, 3]);
5188+ let c: int32x2_t = simd_shuffle2! (b, b, [2, 3]);
51895189 simd_sub(a, simd_cast(c))
51905190}
51915191
@@ -5194,7 +5194,7 @@ pub unsafe fn vsubw_high_s32(a: int64x2_t, b: int32x4_t) -> int64x2_t {
51945194#[target_feature(enable = "neon")]
51955195#[cfg_attr(test, assert_instr(usubw))]
51965196pub unsafe fn vsubw_high_u8(a: uint16x8_t, b: uint8x16_t) -> uint16x8_t {
5197- let c: uint8x8_t = simd_shuffle8(b, b, [8, 9, 10, 11, 12, 13, 14, 15]);
5197+ let c: uint8x8_t = simd_shuffle8! (b, b, [8, 9, 10, 11, 12, 13, 14, 15]);
51985198 simd_sub(a, simd_cast(c))
51995199}
52005200
@@ -5203,7 +5203,7 @@ pub unsafe fn vsubw_high_u8(a: uint16x8_t, b: uint8x16_t) -> uint16x8_t {
52035203#[target_feature(enable = "neon")]
52045204#[cfg_attr(test, assert_instr(usubw))]
52055205pub unsafe fn vsubw_high_u16(a: uint32x4_t, b: uint16x8_t) -> uint32x4_t {
5206- let c: uint16x4_t = simd_shuffle4(b, b, [4, 5, 6, 7]);
5206+ let c: uint16x4_t = simd_shuffle4! (b, b, [4, 5, 6, 7]);
52075207 simd_sub(a, simd_cast(c))
52085208}
52095209
@@ -5212,7 +5212,7 @@ pub unsafe fn vsubw_high_u16(a: uint32x4_t, b: uint16x8_t) -> uint32x4_t {
52125212#[target_feature(enable = "neon")]
52135213#[cfg_attr(test, assert_instr(usubw))]
52145214pub unsafe fn vsubw_high_u32(a: uint64x2_t, b: uint32x4_t) -> uint64x2_t {
5215- let c: uint32x2_t = simd_shuffle2(b, b, [2, 3]);
5215+ let c: uint32x2_t = simd_shuffle2! (b, b, [2, 3]);
52165216 simd_sub(a, simd_cast(c))
52175217}
52185218
@@ -5221,9 +5221,9 @@ pub unsafe fn vsubw_high_u32(a: uint64x2_t, b: uint32x4_t) -> uint64x2_t {
52215221#[target_feature(enable = "neon")]
52225222#[cfg_attr(test, assert_instr(ssubl))]
52235223pub unsafe fn vsubl_high_s8(a: int8x16_t, b: int8x16_t) -> int16x8_t {
5224- let c: int8x8_t = simd_shuffle8(a, a, [8, 9, 10, 11, 12, 13, 14, 15]);
5224+ let c: int8x8_t = simd_shuffle8! (a, a, [8, 9, 10, 11, 12, 13, 14, 15]);
52255225 let d: int16x8_t = simd_cast(c);
5226- let e: int8x8_t = simd_shuffle8(b, b, [8, 9, 10, 11, 12, 13, 14, 15]);
5226+ let e: int8x8_t = simd_shuffle8! (b, b, [8, 9, 10, 11, 12, 13, 14, 15]);
52275227 let f: int16x8_t = simd_cast(e);
52285228 simd_sub(d, f)
52295229}
@@ -5233,9 +5233,9 @@ pub unsafe fn vsubl_high_s8(a: int8x16_t, b: int8x16_t) -> int16x8_t {
52335233#[target_feature(enable = "neon")]
52345234#[cfg_attr(test, assert_instr(ssubl))]
52355235pub unsafe fn vsubl_high_s16(a: int16x8_t, b: int16x8_t) -> int32x4_t {
5236- let c: int16x4_t = simd_shuffle4(a, a, [4, 5, 6, 7]);
5236+ let c: int16x4_t = simd_shuffle4! (a, a, [4, 5, 6, 7]);
52375237 let d: int32x4_t = simd_cast(c);
5238- let e: int16x4_t = simd_shuffle4(b, b, [4, 5, 6, 7]);
5238+ let e: int16x4_t = simd_shuffle4! (b, b, [4, 5, 6, 7]);
52395239 let f: int32x4_t = simd_cast(e);
52405240 simd_sub(d, f)
52415241}
@@ -5245,9 +5245,9 @@ pub unsafe fn vsubl_high_s16(a: int16x8_t, b: int16x8_t) -> int32x4_t {
52455245#[target_feature(enable = "neon")]
52465246#[cfg_attr(test, assert_instr(ssubl))]
52475247pub unsafe fn vsubl_high_s32(a: int32x4_t, b: int32x4_t) -> int64x2_t {
5248- let c: int32x2_t = simd_shuffle2(a, a, [2, 3]);
5248+ let c: int32x2_t = simd_shuffle2! (a, a, [2, 3]);
52495249 let d: int64x2_t = simd_cast(c);
5250- let e: int32x2_t = simd_shuffle2(b, b, [2, 3]);
5250+ let e: int32x2_t = simd_shuffle2! (b, b, [2, 3]);
52515251 let f: int64x2_t = simd_cast(e);
52525252 simd_sub(d, f)
52535253}
@@ -5257,9 +5257,9 @@ pub unsafe fn vsubl_high_s32(a: int32x4_t, b: int32x4_t) -> int64x2_t {
52575257#[target_feature(enable = "neon")]
52585258#[cfg_attr(test, assert_instr(usubl))]
52595259pub unsafe fn vsubl_high_u8(a: uint8x16_t, b: uint8x16_t) -> uint16x8_t {
5260- let c: uint8x8_t = simd_shuffle8(a, a, [8, 9, 10, 11, 12, 13, 14, 15]);
5260+ let c: uint8x8_t = simd_shuffle8! (a, a, [8, 9, 10, 11, 12, 13, 14, 15]);
52615261 let d: uint16x8_t = simd_cast(c);
5262- let e: uint8x8_t = simd_shuffle8(b, b, [8, 9, 10, 11, 12, 13, 14, 15]);
5262+ let e: uint8x8_t = simd_shuffle8! (b, b, [8, 9, 10, 11, 12, 13, 14, 15]);
52635263 let f: uint16x8_t = simd_cast(e);
52645264 simd_sub(d, f)
52655265}
@@ -5269,9 +5269,9 @@ pub unsafe fn vsubl_high_u8(a: uint8x16_t, b: uint8x16_t) -> uint16x8_t {
52695269#[target_feature(enable = "neon")]
52705270#[cfg_attr(test, assert_instr(usubl))]
52715271pub unsafe fn vsubl_high_u16(a: uint16x8_t, b: uint16x8_t) -> uint32x4_t {
5272- let c: uint16x4_t = simd_shuffle4(a, a, [4, 5, 6, 7]);
5272+ let c: uint16x4_t = simd_shuffle4! (a, a, [4, 5, 6, 7]);
52735273 let d: uint32x4_t = simd_cast(c);
5274- let e: uint16x4_t = simd_shuffle4(b, b, [4, 5, 6, 7]);
5274+ let e: uint16x4_t = simd_shuffle4! (b, b, [4, 5, 6, 7]);
52755275 let f: uint32x4_t = simd_cast(e);
52765276 simd_sub(d, f)
52775277}
@@ -5281,9 +5281,9 @@ pub unsafe fn vsubl_high_u16(a: uint16x8_t, b: uint16x8_t) -> uint32x4_t {
52815281#[target_feature(enable = "neon")]
52825282#[cfg_attr(test, assert_instr(usubl))]
52835283pub unsafe fn vsubl_high_u32(a: uint32x4_t, b: uint32x4_t) -> uint64x2_t {
5284- let c: uint32x2_t = simd_shuffle2(a, a, [2, 3]);
5284+ let c: uint32x2_t = simd_shuffle2! (a, a, [2, 3]);
52855285 let d: uint64x2_t = simd_cast(c);
5286- let e: uint32x2_t = simd_shuffle2(b, b, [2, 3]);
5286+ let e: uint32x2_t = simd_shuffle2! (b, b, [2, 3]);
52875287 let f: uint64x2_t = simd_cast(e);
52885288 simd_sub(d, f)
52895289}
@@ -8805,8 +8805,8 @@ pub unsafe fn vuzp2q_f64(a: float64x2_t, b: float64x2_t) -> float64x2_t {
88058805#[target_feature(enable = "neon")]
88068806#[cfg_attr(test, assert_instr(uabal))]
88078807pub unsafe fn vabal_high_u8(a: uint16x8_t, b: uint8x16_t, c: uint8x16_t) -> uint16x8_t {
8808- let d: uint8x8_t = simd_shuffle8(b, b, [8, 9, 10, 11, 12, 13, 14, 15]);
8809- let e: uint8x8_t = simd_shuffle8(c, c, [8, 9, 10, 11, 12, 13, 14, 15]);
8808+ let d: uint8x8_t = simd_shuffle8! (b, b, [8, 9, 10, 11, 12, 13, 14, 15]);
8809+ let e: uint8x8_t = simd_shuffle8! (c, c, [8, 9, 10, 11, 12, 13, 14, 15]);
88108810 let f: uint8x8_t = vabd_u8(d, e);
88118811 simd_add(a, simd_cast(f))
88128812}
@@ -8816,8 +8816,8 @@ pub unsafe fn vabal_high_u8(a: uint16x8_t, b: uint8x16_t, c: uint8x16_t) -> uint
88168816#[target_feature(enable = "neon")]
88178817#[cfg_attr(test, assert_instr(uabal))]
88188818pub unsafe fn vabal_high_u16(a: uint32x4_t, b: uint16x8_t, c: uint16x8_t) -> uint32x4_t {
8819- let d: uint16x4_t = simd_shuffle4(b, b, [4, 5, 6, 7]);
8820- let e: uint16x4_t = simd_shuffle4(c, c, [4, 5, 6, 7]);
8819+ let d: uint16x4_t = simd_shuffle4! (b, b, [4, 5, 6, 7]);
8820+ let e: uint16x4_t = simd_shuffle4! (c, c, [4, 5, 6, 7]);
88218821 let f: uint16x4_t = vabd_u16(d, e);
88228822 simd_add(a, simd_cast(f))
88238823}
@@ -8827,8 +8827,8 @@ pub unsafe fn vabal_high_u16(a: uint32x4_t, b: uint16x8_t, c: uint16x8_t) -> uin
88278827#[target_feature(enable = "neon")]
88288828#[cfg_attr(test, assert_instr(uabal))]
88298829pub unsafe fn vabal_high_u32(a: uint64x2_t, b: uint32x4_t, c: uint32x4_t) -> uint64x2_t {
8830- let d: uint32x2_t = simd_shuffle2(b, b, [2, 3]);
8831- let e: uint32x2_t = simd_shuffle2(c, c, [2, 3]);
8830+ let d: uint32x2_t = simd_shuffle2! (b, b, [2, 3]);
8831+ let e: uint32x2_t = simd_shuffle2! (c, c, [2, 3]);
88328832 let f: uint32x2_t = vabd_u32(d, e);
88338833 simd_add(a, simd_cast(f))
88348834}
@@ -8838,8 +8838,8 @@ pub unsafe fn vabal_high_u32(a: uint64x2_t, b: uint32x4_t, c: uint32x4_t) -> uin
88388838#[target_feature(enable = "neon")]
88398839#[cfg_attr(test, assert_instr(sabal))]
88408840pub unsafe fn vabal_high_s8(a: int16x8_t, b: int8x16_t, c: int8x16_t) -> int16x8_t {
8841- let d: int8x8_t = simd_shuffle8(b, b, [8, 9, 10, 11, 12, 13, 14, 15]);
8842- let e: int8x8_t = simd_shuffle8(c, c, [8, 9, 10, 11, 12, 13, 14, 15]);
8841+ let d: int8x8_t = simd_shuffle8! (b, b, [8, 9, 10, 11, 12, 13, 14, 15]);
8842+ let e: int8x8_t = simd_shuffle8! (c, c, [8, 9, 10, 11, 12, 13, 14, 15]);
88438843 let f: int8x8_t = vabd_s8(d, e);
88448844 let f: uint8x8_t = simd_cast(f);
88458845 simd_add(a, simd_cast(f))
@@ -8850,8 +8850,8 @@ pub unsafe fn vabal_high_s8(a: int16x8_t, b: int8x16_t, c: int8x16_t) -> int16x8
88508850#[target_feature(enable = "neon")]
88518851#[cfg_attr(test, assert_instr(sabal))]
88528852pub unsafe fn vabal_high_s16(a: int32x4_t, b: int16x8_t, c: int16x8_t) -> int32x4_t {
8853- let d: int16x4_t = simd_shuffle4(b, b, [4, 5, 6, 7]);
8854- let e: int16x4_t = simd_shuffle4(c, c, [4, 5, 6, 7]);
8853+ let d: int16x4_t = simd_shuffle4! (b, b, [4, 5, 6, 7]);
8854+ let e: int16x4_t = simd_shuffle4! (c, c, [4, 5, 6, 7]);
88558855 let f: int16x4_t = vabd_s16(d, e);
88568856 let f: uint16x4_t = simd_cast(f);
88578857 simd_add(a, simd_cast(f))
@@ -8862,8 +8862,8 @@ pub unsafe fn vabal_high_s16(a: int32x4_t, b: int16x8_t, c: int16x8_t) -> int32x
88628862#[target_feature(enable = "neon")]
88638863#[cfg_attr(test, assert_instr(sabal))]
88648864pub unsafe fn vabal_high_s32(a: int64x2_t, b: int32x4_t, c: int32x4_t) -> int64x2_t {
8865- let d: int32x2_t = simd_shuffle2(b, b, [2, 3]);
8866- let e: int32x2_t = simd_shuffle2(c, c, [2, 3]);
8865+ let d: int32x2_t = simd_shuffle2! (b, b, [2, 3]);
8866+ let e: int32x2_t = simd_shuffle2! (c, c, [2, 3]);
88678867 let f: int32x2_t = vabd_s32(d, e);
88688868 let f: uint32x2_t = simd_cast(f);
88698869 simd_add(a, simd_cast(f))
0 commit comments