首页 > 解决方案 > 使用 ARM Neon 内部函数从 64 位访问 32 位

问题描述

如何使用 ARM Neon Intrinsics 从 64 位有符号整数访问低 32 位或高 32 位?另外,我想将此提取的数据分配给另一个 32 位变量。是否可以?

标签: carmsimdintrinsicsneon

解决方案


static inline int32x2_t low32(int64x2_t in)
{
    int32x2_t out;

    out = vmovn_s64(in); // vqmovn for saturating

    return out;
}

static inline int32x2_t high32(int64x2_t in)
{
    int32x2_t out;

    out = vshrn_n_s64(in, 32);

    return out;
}

推荐阅读