Skip to content

Commit e5fa4b0

Browse files
folkertdevAmanieu
authored andcommitted
use simd_bitreverse on aarch64
1 parent 2601c6f commit e5fa4b0

File tree

2 files changed

+5
-21
lines changed

2 files changed

+5
-21
lines changed

crates/core_arch/src/aarch64/neon/generated.rs

Lines changed: 2 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -21417,14 +21417,7 @@ pub fn vrax1q_u64(a: uint64x2_t, b: uint64x2_t) -> uint64x2_t {
2141721417
#[stable(feature = "neon_intrinsics", since = "1.59.0")]
2141821418
#[cfg_attr(test, assert_instr(rbit))]
2141921419
pub fn vrbit_s8(a: int8x8_t) -> int8x8_t {
21420-
unsafe extern "unadjusted" {
21421-
#[cfg_attr(
21422-
any(target_arch = "aarch64", target_arch = "arm64ec"),
21423-
link_name = "llvm.bitreverse.v8i8"
21424-
)]
21425-
fn _vrbit_s8(a: int8x8_t) -> int8x8_t;
21426-
}
21427-
unsafe { _vrbit_s8(a) }
21420+
unsafe { simd_bitreverse(a) }
2142821421
}
2142921422
#[doc = "Reverse bit order"]
2143021423
#[doc = "[Arm's documentation](https://developer.arm.com/architectures/instruction-sets/intrinsics/vrbitq_s8)"]
@@ -21433,14 +21426,7 @@ pub fn vrbit_s8(a: int8x8_t) -> int8x8_t {
2143321426
#[stable(feature = "neon_intrinsics", since = "1.59.0")]
2143421427
#[cfg_attr(test, assert_instr(rbit))]
2143521428
pub fn vrbitq_s8(a: int8x16_t) -> int8x16_t {
21436-
unsafe extern "unadjusted" {
21437-
#[cfg_attr(
21438-
any(target_arch = "aarch64", target_arch = "arm64ec"),
21439-
link_name = "llvm.bitreverse.v16i8"
21440-
)]
21441-
fn _vrbitq_s8(a: int8x16_t) -> int8x16_t;
21442-
}
21443-
unsafe { _vrbitq_s8(a) }
21429+
unsafe { simd_bitreverse(a) }
2144421430
}
2144521431
#[doc = "Reverse bit order"]
2144621432
#[doc = "[Arm's documentation](https://developer.arm.com/architectures/instruction-sets/intrinsics/vrbit_u8)"]

crates/stdarch-gen-arm/spec/neon/aarch64.spec.yml

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2940,11 +2940,9 @@ intrinsics:
29402940
- int8x8_t
29412941
- int8x16_t
29422942
compose:
2943-
- LLVMLink:
2944-
name: "rbit.{neon_type}"
2945-
links:
2946-
- link: "llvm.bitreverse.{neon_type}"
2947-
arch: aarch64,arm64ec
2943+
- FnCall:
2944+
- simd_bitreverse
2945+
- - a
29482946

29492947
- name: "vrbit{neon_type[0].no}"
29502948
doc: Reverse bit order

0 commit comments

Comments
 (0)