@@ -7925,7 +7925,7 @@ pub fn vcvth_f16_u64(a: u64) -> f16 {
7925
7925
#[unstable(feature = "stdarch_neon_f16", issue = "136306")]
7926
7926
pub fn vcvth_n_f16_s16<const N: i32>(a: i16) -> f16 {
7927
7927
static_assert!(N >= 1 && N <= 16);
7928
- vcvth_n_f16_s32::<N>(a as i32) as f16
7928
+ vcvth_n_f16_s32::<N>(a as i32)
7929
7929
}
7930
7930
#[doc = "Fixed-point convert to floating-point"]
7931
7931
#[doc = "[Arm's documentation](https://developer.arm.com/architectures/instruction-sets/intrinsics/vcvth_n_f16_s32)"]
@@ -7972,7 +7972,7 @@ pub fn vcvth_n_f16_s64<const N: i32>(a: i64) -> f16 {
7972
7972
#[unstable(feature = "stdarch_neon_f16", issue = "136306")]
7973
7973
pub fn vcvth_n_f16_u16<const N: i32>(a: u16) -> f16 {
7974
7974
static_assert!(N >= 1 && N <= 16);
7975
- vcvth_n_f16_u32::<N>(a as u32) as f16
7975
+ vcvth_n_f16_u32::<N>(a as u32)
7976
7976
}
7977
7977
#[doc = "Fixed-point convert to floating-point"]
7978
7978
#[doc = "[Arm's documentation](https://developer.arm.com/architectures/instruction-sets/intrinsics/vcvth_n_f16_u32)"]
@@ -17158,7 +17158,7 @@ pub fn vqdmlalh_s16(a: i32, b: i16, c: i16) -> i32 {
17158
17158
#[stable(feature = "neon_intrinsics", since = "1.59.0")]
17159
17159
pub fn vqdmlals_s32(a: i64, b: i32, c: i32) -> i64 {
17160
17160
let x: i64 = vqaddd_s64(a, vqdmulls_s32(b, c));
17161
- x as i64
17161
+ x
17162
17162
}
17163
17163
#[doc = "Signed saturating doubling multiply-subtract long"]
17164
17164
#[doc = "[Arm's documentation](https://developer.arm.com/architectures/instruction-sets/intrinsics/vqdmlsl_high_lane_s16)"]
@@ -17324,7 +17324,7 @@ pub fn vqdmlslh_s16(a: i32, b: i16, c: i16) -> i32 {
17324
17324
#[stable(feature = "neon_intrinsics", since = "1.59.0")]
17325
17325
pub fn vqdmlsls_s32(a: i64, b: i32, c: i32) -> i64 {
17326
17326
let x: i64 = vqsubd_s64(a, vqdmulls_s32(b, c));
17327
- x as i64
17327
+ x
17328
17328
}
17329
17329
#[doc = "Vector saturating doubling multiply high by scalar"]
17330
17330
#[doc = "[Arm's documentation](https://developer.arm.com/architectures/instruction-sets/intrinsics/vqdmulh_lane_s16)"]
@@ -19495,10 +19495,7 @@ pub fn vqtbl1q_s8(a: int8x16_t, b: uint8x16_t) -> int8x16_t {
19495
19495
#[cfg_attr(test, assert_instr(tbl))]
19496
19496
#[stable(feature = "neon_intrinsics", since = "1.59.0")]
19497
19497
pub fn vqtbl1_u8(a: uint8x16_t, b: uint8x8_t) -> uint8x8_t {
19498
- unsafe {
19499
- let x = transmute(vqtbl1(transmute(a), b));
19500
- x
19501
- }
19498
+ unsafe { transmute(vqtbl1(transmute(a), b)) }
19502
19499
}
19503
19500
#[doc = "Table look-up"]
19504
19501
#[doc = "[Arm's documentation](https://developer.arm.com/architectures/instruction-sets/intrinsics/vqtbl1q_u8)"]
@@ -19507,10 +19504,7 @@ pub fn vqtbl1_u8(a: uint8x16_t, b: uint8x8_t) -> uint8x8_t {
19507
19504
#[cfg_attr(test, assert_instr(tbl))]
19508
19505
#[stable(feature = "neon_intrinsics", since = "1.59.0")]
19509
19506
pub fn vqtbl1q_u8(a: uint8x16_t, b: uint8x16_t) -> uint8x16_t {
19510
- unsafe {
19511
- let x = transmute(vqtbl1q(transmute(a), b));
19512
- x
19513
- }
19507
+ unsafe { transmute(vqtbl1q(transmute(a), b)) }
19514
19508
}
19515
19509
#[doc = "Table look-up"]
19516
19510
#[doc = "[Arm's documentation](https://developer.arm.com/architectures/instruction-sets/intrinsics/vqtbl1_p8)"]
@@ -19519,10 +19513,7 @@ pub fn vqtbl1q_u8(a: uint8x16_t, b: uint8x16_t) -> uint8x16_t {
19519
19513
#[cfg_attr(test, assert_instr(tbl))]
19520
19514
#[stable(feature = "neon_intrinsics", since = "1.59.0")]
19521
19515
pub fn vqtbl1_p8(a: poly8x16_t, b: uint8x8_t) -> poly8x8_t {
19522
- unsafe {
19523
- let x = transmute(vqtbl1(transmute(a), b));
19524
- x
19525
- }
19516
+ unsafe { transmute(vqtbl1(transmute(a), b)) }
19526
19517
}
19527
19518
#[doc = "Table look-up"]
19528
19519
#[doc = "[Arm's documentation](https://developer.arm.com/architectures/instruction-sets/intrinsics/vqtbl1q_p8)"]
@@ -19531,10 +19522,7 @@ pub fn vqtbl1_p8(a: poly8x16_t, b: uint8x8_t) -> poly8x8_t {
19531
19522
#[cfg_attr(test, assert_instr(tbl))]
19532
19523
#[stable(feature = "neon_intrinsics", since = "1.59.0")]
19533
19524
pub fn vqtbl1q_p8(a: poly8x16_t, b: uint8x16_t) -> poly8x16_t {
19534
- unsafe {
19535
- let x = transmute(vqtbl1q(transmute(a), b));
19536
- x
19537
- }
19525
+ unsafe { transmute(vqtbl1q(transmute(a), b)) }
19538
19526
}
19539
19527
#[doc = "Table look-up"]
19540
19528
#[doc = "[Arm's documentation](https://developer.arm.com/architectures/instruction-sets/intrinsics/vqtbl2)"]
@@ -20397,10 +20385,7 @@ pub fn vqtbx1q_s8(a: int8x16_t, b: int8x16_t, c: uint8x16_t) -> int8x16_t {
20397
20385
#[cfg_attr(test, assert_instr(tbx))]
20398
20386
#[stable(feature = "neon_intrinsics", since = "1.59.0")]
20399
20387
pub fn vqtbx1_u8(a: uint8x8_t, b: uint8x16_t, c: uint8x8_t) -> uint8x8_t {
20400
- unsafe {
20401
- let x = transmute(vqtbx1(transmute(a), transmute(b), c));
20402
- x
20403
- }
20388
+ unsafe { transmute(vqtbx1(transmute(a), transmute(b), c)) }
20404
20389
}
20405
20390
#[doc = "Extended table look-up"]
20406
20391
#[doc = "[Arm's documentation](https://developer.arm.com/architectures/instruction-sets/intrinsics/vqtbx1q_u8)"]
@@ -20409,10 +20394,7 @@ pub fn vqtbx1_u8(a: uint8x8_t, b: uint8x16_t, c: uint8x8_t) -> uint8x8_t {
20409
20394
#[cfg_attr(test, assert_instr(tbx))]
20410
20395
#[stable(feature = "neon_intrinsics", since = "1.59.0")]
20411
20396
pub fn vqtbx1q_u8(a: uint8x16_t, b: uint8x16_t, c: uint8x16_t) -> uint8x16_t {
20412
- unsafe {
20413
- let x = transmute(vqtbx1q(transmute(a), transmute(b), c));
20414
- x
20415
- }
20397
+ unsafe { transmute(vqtbx1q(transmute(a), transmute(b), c)) }
20416
20398
}
20417
20399
#[doc = "Extended table look-up"]
20418
20400
#[doc = "[Arm's documentation](https://developer.arm.com/architectures/instruction-sets/intrinsics/vqtbx1_p8)"]
@@ -20421,10 +20403,7 @@ pub fn vqtbx1q_u8(a: uint8x16_t, b: uint8x16_t, c: uint8x16_t) -> uint8x16_t {
20421
20403
#[cfg_attr(test, assert_instr(tbx))]
20422
20404
#[stable(feature = "neon_intrinsics", since = "1.59.0")]
20423
20405
pub fn vqtbx1_p8(a: poly8x8_t, b: poly8x16_t, c: uint8x8_t) -> poly8x8_t {
20424
- unsafe {
20425
- let x = transmute(vqtbx1(transmute(a), transmute(b), c));
20426
- x
20427
- }
20406
+ unsafe { transmute(vqtbx1(transmute(a), transmute(b), c)) }
20428
20407
}
20429
20408
#[doc = "Extended table look-up"]
20430
20409
#[doc = "[Arm's documentation](https://developer.arm.com/architectures/instruction-sets/intrinsics/vqtbx1q_p8)"]
@@ -20433,10 +20412,7 @@ pub fn vqtbx1_p8(a: poly8x8_t, b: poly8x16_t, c: uint8x8_t) -> poly8x8_t {
20433
20412
#[cfg_attr(test, assert_instr(tbx))]
20434
20413
#[stable(feature = "neon_intrinsics", since = "1.59.0")]
20435
20414
pub fn vqtbx1q_p8(a: poly8x16_t, b: poly8x16_t, c: uint8x16_t) -> poly8x16_t {
20436
- unsafe {
20437
- let x = transmute(vqtbx1q(transmute(a), transmute(b), c));
20438
- x
20439
- }
20415
+ unsafe { transmute(vqtbx1q(transmute(a), transmute(b), c)) }
20440
20416
}
20441
20417
#[doc = "Extended table look-up"]
20442
20418
#[doc = "[Arm's documentation](https://developer.arm.com/architectures/instruction-sets/intrinsics/vqtbx2)"]
@@ -23785,14 +23761,7 @@ pub fn vrndph_f16(a: f16) -> f16 {
23785
23761
#[unstable(feature = "stdarch_neon_f16", issue = "136306")]
23786
23762
#[cfg_attr(test, assert_instr(frintx))]
23787
23763
pub fn vrndx_f16(a: float16x4_t) -> float16x4_t {
23788
- unsafe extern "unadjusted" {
23789
- #[cfg_attr(
23790
- any(target_arch = "aarch64", target_arch = "arm64ec"),
23791
- link_name = "llvm.rint.v4f16"
23792
- )]
23793
- fn _vrndx_f16(a: float16x4_t) -> float16x4_t;
23794
- }
23795
- unsafe { _vrndx_f16(a) }
23764
+ unsafe { simd_round_ties_even(a) }
23796
23765
}
23797
23766
#[doc = "Floating-point round to integral exact, using current rounding mode"]
23798
23767
#[doc = "[Arm's documentation](https://developer.arm.com/architectures/instruction-sets/intrinsics/vrndxq_f16)"]
@@ -23801,14 +23770,7 @@ pub fn vrndx_f16(a: float16x4_t) -> float16x4_t {
23801
23770
#[unstable(feature = "stdarch_neon_f16", issue = "136306")]
23802
23771
#[cfg_attr(test, assert_instr(frintx))]
23803
23772
pub fn vrndxq_f16(a: float16x8_t) -> float16x8_t {
23804
- unsafe extern "unadjusted" {
23805
- #[cfg_attr(
23806
- any(target_arch = "aarch64", target_arch = "arm64ec"),
23807
- link_name = "llvm.rint.v8f16"
23808
- )]
23809
- fn _vrndxq_f16(a: float16x8_t) -> float16x8_t;
23810
- }
23811
- unsafe { _vrndxq_f16(a) }
23773
+ unsafe { simd_round_ties_even(a) }
23812
23774
}
23813
23775
#[doc = "Floating-point round to integral exact, using current rounding mode"]
23814
23776
#[doc = "[Arm's documentation](https://developer.arm.com/architectures/instruction-sets/intrinsics/vrndx_f32)"]
@@ -23817,14 +23779,7 @@ pub fn vrndxq_f16(a: float16x8_t) -> float16x8_t {
23817
23779
#[stable(feature = "neon_intrinsics", since = "1.59.0")]
23818
23780
#[cfg_attr(test, assert_instr(frintx))]
23819
23781
pub fn vrndx_f32(a: float32x2_t) -> float32x2_t {
23820
- unsafe extern "unadjusted" {
23821
- #[cfg_attr(
23822
- any(target_arch = "aarch64", target_arch = "arm64ec"),
23823
- link_name = "llvm.rint.v2f32"
23824
- )]
23825
- fn _vrndx_f32(a: float32x2_t) -> float32x2_t;
23826
- }
23827
- unsafe { _vrndx_f32(a) }
23782
+ unsafe { simd_round_ties_even(a) }
23828
23783
}
23829
23784
#[doc = "Floating-point round to integral exact, using current rounding mode"]
23830
23785
#[doc = "[Arm's documentation](https://developer.arm.com/architectures/instruction-sets/intrinsics/vrndxq_f32)"]
@@ -23833,14 +23788,7 @@ pub fn vrndx_f32(a: float32x2_t) -> float32x2_t {
23833
23788
#[stable(feature = "neon_intrinsics", since = "1.59.0")]
23834
23789
#[cfg_attr(test, assert_instr(frintx))]
23835
23790
pub fn vrndxq_f32(a: float32x4_t) -> float32x4_t {
23836
- unsafe extern "unadjusted" {
23837
- #[cfg_attr(
23838
- any(target_arch = "aarch64", target_arch = "arm64ec"),
23839
- link_name = "llvm.rint.v4f32"
23840
- )]
23841
- fn _vrndxq_f32(a: float32x4_t) -> float32x4_t;
23842
- }
23843
- unsafe { _vrndxq_f32(a) }
23791
+ unsafe { simd_round_ties_even(a) }
23844
23792
}
23845
23793
#[doc = "Floating-point round to integral exact, using current rounding mode"]
23846
23794
#[doc = "[Arm's documentation](https://developer.arm.com/architectures/instruction-sets/intrinsics/vrndx_f64)"]
@@ -23849,14 +23797,7 @@ pub fn vrndxq_f32(a: float32x4_t) -> float32x4_t {
23849
23797
#[stable(feature = "neon_intrinsics", since = "1.59.0")]
23850
23798
#[cfg_attr(test, assert_instr(frintx))]
23851
23799
pub fn vrndx_f64(a: float64x1_t) -> float64x1_t {
23852
- unsafe extern "unadjusted" {
23853
- #[cfg_attr(
23854
- any(target_arch = "aarch64", target_arch = "arm64ec"),
23855
- link_name = "llvm.rint.v1f64"
23856
- )]
23857
- fn _vrndx_f64(a: float64x1_t) -> float64x1_t;
23858
- }
23859
- unsafe { _vrndx_f64(a) }
23800
+ unsafe { simd_round_ties_even(a) }
23860
23801
}
23861
23802
#[doc = "Floating-point round to integral exact, using current rounding mode"]
23862
23803
#[doc = "[Arm's documentation](https://developer.arm.com/architectures/instruction-sets/intrinsics/vrndxq_f64)"]
@@ -23865,14 +23806,7 @@ pub fn vrndx_f64(a: float64x1_t) -> float64x1_t {
23865
23806
#[stable(feature = "neon_intrinsics", since = "1.59.0")]
23866
23807
#[cfg_attr(test, assert_instr(frintx))]
23867
23808
pub fn vrndxq_f64(a: float64x2_t) -> float64x2_t {
23868
- unsafe extern "unadjusted" {
23869
- #[cfg_attr(
23870
- any(target_arch = "aarch64", target_arch = "arm64ec"),
23871
- link_name = "llvm.rint.v2f64"
23872
- )]
23873
- fn _vrndxq_f64(a: float64x2_t) -> float64x2_t;
23874
- }
23875
- unsafe { _vrndxq_f64(a) }
23809
+ unsafe { simd_round_ties_even(a) }
23876
23810
}
23877
23811
#[doc = "Floating-point round to integral, using current rounding mode"]
23878
23812
#[doc = "[Arm's documentation](https://developer.arm.com/architectures/instruction-sets/intrinsics/vrndxh_f16)"]
@@ -24082,7 +24016,6 @@ pub fn vrsqrtes_f32(a: f32) -> f32 {
24082
24016
#[doc = "Reciprocal square-root estimate."]
24083
24017
#[doc = "[Arm's documentation](https://developer.arm.com/architectures/instruction-sets/intrinsics/vrsqrteh_f16)"]
24084
24018
#[inline]
24085
- #[target_feature(enable = "neon,fp16")]
24086
24019
#[cfg_attr(test, assert_instr(frsqrte))]
24087
24020
#[target_feature(enable = "neon,fp16")]
24088
24021
#[unstable(feature = "stdarch_neon_f16", issue = "136306")]
0 commit comments