Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
54 changes: 0 additions & 54 deletions crates/core_arch/src/loongarch64/lasx/generated.rs
Original file line number Diff line number Diff line change
Expand Up @@ -435,18 +435,6 @@ unsafe extern "unadjusted" {
fn __lasx_xvfrintrne_s(a: __v8f32) -> __v8f32;
#[link_name = "llvm.loongarch.lasx.xvfrintrne.d"]
fn __lasx_xvfrintrne_d(a: __v4f64) -> __v4f64;
#[link_name = "llvm.loongarch.lasx.xvfrintrz.s"]
fn __lasx_xvfrintrz_s(a: __v8f32) -> __v8f32;
#[link_name = "llvm.loongarch.lasx.xvfrintrz.d"]
fn __lasx_xvfrintrz_d(a: __v4f64) -> __v4f64;
#[link_name = "llvm.loongarch.lasx.xvfrintrp.s"]
fn __lasx_xvfrintrp_s(a: __v8f32) -> __v8f32;
#[link_name = "llvm.loongarch.lasx.xvfrintrp.d"]
fn __lasx_xvfrintrp_d(a: __v4f64) -> __v4f64;
#[link_name = "llvm.loongarch.lasx.xvfrintrm.s"]
fn __lasx_xvfrintrm_s(a: __v8f32) -> __v8f32;
#[link_name = "llvm.loongarch.lasx.xvfrintrm.d"]
fn __lasx_xvfrintrm_d(a: __v4f64) -> __v4f64;
#[link_name = "llvm.loongarch.lasx.xvstelm.b"]
fn __lasx_xvstelm_b(a: __v32i8, b: *mut i8, c: i32, d: u32);
#[link_name = "llvm.loongarch.lasx.xvstelm.h"]
Expand Down Expand Up @@ -2563,48 +2551,6 @@ pub fn lasx_xvfrintrne_d(a: m256d) -> m256d {
unsafe { transmute(__lasx_xvfrintrne_d(transmute(a))) }
}

#[inline]
#[target_feature(enable = "lasx")]
#[unstable(feature = "stdarch_loongarch", issue = "117427")]
pub fn lasx_xvfrintrz_s(a: m256) -> m256 {
unsafe { transmute(__lasx_xvfrintrz_s(transmute(a))) }
}

#[inline]
#[target_feature(enable = "lasx")]
#[unstable(feature = "stdarch_loongarch", issue = "117427")]
pub fn lasx_xvfrintrz_d(a: m256d) -> m256d {
unsafe { transmute(__lasx_xvfrintrz_d(transmute(a))) }
}

#[inline]
#[target_feature(enable = "lasx")]
#[unstable(feature = "stdarch_loongarch", issue = "117427")]
pub fn lasx_xvfrintrp_s(a: m256) -> m256 {
unsafe { transmute(__lasx_xvfrintrp_s(transmute(a))) }
}

#[inline]
#[target_feature(enable = "lasx")]
#[unstable(feature = "stdarch_loongarch", issue = "117427")]
pub fn lasx_xvfrintrp_d(a: m256d) -> m256d {
unsafe { transmute(__lasx_xvfrintrp_d(transmute(a))) }
}

#[inline]
#[target_feature(enable = "lasx")]
#[unstable(feature = "stdarch_loongarch", issue = "117427")]
pub fn lasx_xvfrintrm_s(a: m256) -> m256 {
unsafe { transmute(__lasx_xvfrintrm_s(transmute(a))) }
}

#[inline]
#[target_feature(enable = "lasx")]
#[unstable(feature = "stdarch_loongarch", issue = "117427")]
pub fn lasx_xvfrintrm_d(a: m256d) -> m256d {
unsafe { transmute(__lasx_xvfrintrm_d(transmute(a))) }
}

#[inline]
#[target_feature(enable = "lasx")]
#[rustc_legacy_const_generics(2, 3)]
Expand Down
6 changes: 6 additions & 0 deletions crates/core_arch/src/loongarch64/lasx/portable.rs
Original file line number Diff line number Diff line change
Expand Up @@ -332,6 +332,12 @@ impl_vv!("lasx", lasx_xvfrsqrt_s, ls::simd_frsqrt_s, m256, f32x8);
impl_vv!("lasx", lasx_xvfrsqrt_d, ls::simd_frsqrt_d, m256d, f64x4);
impl_vv!("lasx", lasx_xvfrecip_s, ls::simd_frecip_s, m256, f32x8);
impl_vv!("lasx", lasx_xvfrecip_d, ls::simd_frecip_d, m256d, f64x4);
impl_vv!("lasx", lasx_xvfrintrp_s, is::simd_ceil, m256, f32x8);
impl_vv!("lasx", lasx_xvfrintrp_d, is::simd_ceil, m256d, f64x4);
impl_vv!("lasx", lasx_xvfrintrm_s, is::simd_floor, m256, f32x8);
impl_vv!("lasx", lasx_xvfrintrm_d, is::simd_floor, m256d, f64x4);
impl_vv!("lasx", lasx_xvfrintrz_s, is::simd_trunc, m256, f32x8);
impl_vv!("lasx", lasx_xvfrintrz_d, is::simd_trunc, m256d, f64x4);
impl_vv!("lasx", lasx_xvreplve0_b, simd_replve0_b, m256i, i8x32);
impl_vv!("lasx", lasx_xvreplve0_h, simd_replve0_h, m256i, i16x16);
impl_vv!("lasx", lasx_xvreplve0_w, simd_replve0_w, m256i, i32x8);
Expand Down
54 changes: 0 additions & 54 deletions crates/core_arch/src/loongarch64/lsx/generated.rs
Original file line number Diff line number Diff line change
Expand Up @@ -429,18 +429,6 @@ unsafe extern "unadjusted" {
fn __lsx_vfrintrne_s(a: __v4f32) -> __v4f32;
#[link_name = "llvm.loongarch.lsx.vfrintrne.d"]
fn __lsx_vfrintrne_d(a: __v2f64) -> __v2f64;
#[link_name = "llvm.loongarch.lsx.vfrintrz.s"]
fn __lsx_vfrintrz_s(a: __v4f32) -> __v4f32;
#[link_name = "llvm.loongarch.lsx.vfrintrz.d"]
fn __lsx_vfrintrz_d(a: __v2f64) -> __v2f64;
#[link_name = "llvm.loongarch.lsx.vfrintrp.s"]
fn __lsx_vfrintrp_s(a: __v4f32) -> __v4f32;
#[link_name = "llvm.loongarch.lsx.vfrintrp.d"]
fn __lsx_vfrintrp_d(a: __v2f64) -> __v2f64;
#[link_name = "llvm.loongarch.lsx.vfrintrm.s"]
fn __lsx_vfrintrm_s(a: __v4f32) -> __v4f32;
#[link_name = "llvm.loongarch.lsx.vfrintrm.d"]
fn __lsx_vfrintrm_d(a: __v2f64) -> __v2f64;
#[link_name = "llvm.loongarch.lsx.vstelm.b"]
fn __lsx_vstelm_b(a: __v16i8, b: *mut i8, c: i32, d: u32);
#[link_name = "llvm.loongarch.lsx.vstelm.h"]
Expand Down Expand Up @@ -2458,48 +2446,6 @@ pub fn lsx_vfrintrne_d(a: m128d) -> m128d {
unsafe { transmute(__lsx_vfrintrne_d(transmute(a))) }
}

#[inline]
#[target_feature(enable = "lsx")]
#[unstable(feature = "stdarch_loongarch", issue = "117427")]
pub fn lsx_vfrintrz_s(a: m128) -> m128 {
unsafe { transmute(__lsx_vfrintrz_s(transmute(a))) }
}

#[inline]
#[target_feature(enable = "lsx")]
#[unstable(feature = "stdarch_loongarch", issue = "117427")]
pub fn lsx_vfrintrz_d(a: m128d) -> m128d {
unsafe { transmute(__lsx_vfrintrz_d(transmute(a))) }
}

#[inline]
#[target_feature(enable = "lsx")]
#[unstable(feature = "stdarch_loongarch", issue = "117427")]
pub fn lsx_vfrintrp_s(a: m128) -> m128 {
unsafe { transmute(__lsx_vfrintrp_s(transmute(a))) }
}

#[inline]
#[target_feature(enable = "lsx")]
#[unstable(feature = "stdarch_loongarch", issue = "117427")]
pub fn lsx_vfrintrp_d(a: m128d) -> m128d {
unsafe { transmute(__lsx_vfrintrp_d(transmute(a))) }
}

#[inline]
#[target_feature(enable = "lsx")]
#[unstable(feature = "stdarch_loongarch", issue = "117427")]
pub fn lsx_vfrintrm_s(a: m128) -> m128 {
unsafe { transmute(__lsx_vfrintrm_s(transmute(a))) }
}

#[inline]
#[target_feature(enable = "lsx")]
#[unstable(feature = "stdarch_loongarch", issue = "117427")]
pub fn lsx_vfrintrm_d(a: m128d) -> m128d {
unsafe { transmute(__lsx_vfrintrm_d(transmute(a))) }
}

#[inline]
#[target_feature(enable = "lsx")]
#[rustc_legacy_const_generics(2, 3)]
Expand Down
6 changes: 6 additions & 0 deletions crates/core_arch/src/loongarch64/lsx/portable.rs
Original file line number Diff line number Diff line change
Expand Up @@ -231,6 +231,12 @@ impl_vv!("lsx", lsx_vfrsqrt_s, ls::simd_frsqrt_s, m128, f32x4);
impl_vv!("lsx", lsx_vfrsqrt_d, ls::simd_frsqrt_d, m128d, f64x2);
impl_vv!("lsx", lsx_vfrecip_s, ls::simd_frecip_s, m128, f32x4);
impl_vv!("lsx", lsx_vfrecip_d, ls::simd_frecip_d, m128d, f64x2);
impl_vv!("lsx", lsx_vfrintrp_s, is::simd_ceil, m128, f32x4);
impl_vv!("lsx", lsx_vfrintrp_d, is::simd_ceil, m128d, f64x2);
impl_vv!("lsx", lsx_vfrintrm_s, is::simd_floor, m128, f32x4);
impl_vv!("lsx", lsx_vfrintrm_d, is::simd_floor, m128d, f64x2);
impl_vv!("lsx", lsx_vfrintrz_s, is::simd_trunc, m128, f32x4);
impl_vv!("lsx", lsx_vfrintrz_d, is::simd_trunc, m128d, f64x2);

impl_gv!("lsx", lsx_vreplgr2vr_b, ls::simd_splat, m128i, i8x16, i32);
impl_gv!("lsx", lsx_vreplgr2vr_h, ls::simd_splat, m128i, i16x8, i32);
Expand Down
6 changes: 6 additions & 0 deletions crates/stdarch-gen-loongarch/lasx.spec
Original file line number Diff line number Diff line change
Expand Up @@ -2564,31 +2564,37 @@ asm-fmts = xd, xj
data-types = V4DF, V4DF

/// lasx_xvfrintrz_s
impl = portable
name = lasx_xvfrintrz_s
asm-fmts = xd, xj
data-types = V8SF, V8SF

/// lasx_xvfrintrz_d
impl = portable
name = lasx_xvfrintrz_d
asm-fmts = xd, xj
data-types = V4DF, V4DF

/// lasx_xvfrintrp_s
impl = portable
name = lasx_xvfrintrp_s
asm-fmts = xd, xj
data-types = V8SF, V8SF

/// lasx_xvfrintrp_d
impl = portable
name = lasx_xvfrintrp_d
asm-fmts = xd, xj
data-types = V4DF, V4DF

/// lasx_xvfrintrm_s
impl = portable
name = lasx_xvfrintrm_s
asm-fmts = xd, xj
data-types = V8SF, V8SF

/// lasx_xvfrintrm_d
impl = portable
name = lasx_xvfrintrm_d
asm-fmts = xd, xj
data-types = V4DF, V4DF
Expand Down
6 changes: 6 additions & 0 deletions crates/stdarch-gen-loongarch/lsx.spec
Original file line number Diff line number Diff line change
Expand Up @@ -2627,31 +2627,37 @@ asm-fmts = vd, vj
data-types = V2DF, V2DF

/// lsx_vfrintrz_s
impl = portable
name = lsx_vfrintrz_s
asm-fmts = vd, vj
data-types = V4SF, V4SF

/// lsx_vfrintrz_d
impl = portable
name = lsx_vfrintrz_d
asm-fmts = vd, vj
data-types = V2DF, V2DF

/// lsx_vfrintrp_s
impl = portable
name = lsx_vfrintrp_s
asm-fmts = vd, vj
data-types = V4SF, V4SF

/// lsx_vfrintrp_d
impl = portable
name = lsx_vfrintrp_d
asm-fmts = vd, vj
data-types = V2DF, V2DF

/// lsx_vfrintrm_s
impl = portable
name = lsx_vfrintrm_s
asm-fmts = vd, vj
data-types = V4SF, V4SF

/// lsx_vfrintrm_d
impl = portable
name = lsx_vfrintrm_d
asm-fmts = vd, vj
data-types = V2DF, V2DF
Expand Down
12 changes: 12 additions & 0 deletions crates/stdarch-gen-loongarch/src/portable-intrinsics.txt
Original file line number Diff line number Diff line change
Expand Up @@ -279,6 +279,12 @@ lsx_vfrecip_s
lsx_vfrecip_d
lsx_vfrsqrt_s
lsx_vfrsqrt_d
lsx_vfrintrp_s
lsx_vfrintrp_d
lsx_vfrintrm_s
lsx_vfrintrm_d
lsx_vfrintrz_s
lsx_vfrintrz_d

# LASX intrinsics
lasx_xvsll_b
Expand Down Expand Up @@ -559,3 +565,9 @@ lasx_xvfrecip_s
lasx_xvfrecip_d
lasx_xvfrsqrt_s
lasx_xvfrsqrt_d
lasx_xvfrintrp_s
lasx_xvfrintrp_d
lasx_xvfrintrm_s
lasx_xvfrintrm_d
lasx_xvfrintrz_s
lasx_xvfrintrz_d