gpt4 book ai didi

arm - 对 uint8x8 Neon 向量的所有 channel 执行水平逻辑/按位与运算

转载 作者:行者123 更新时间:2023-12-01 12:56:15 25 4
gpt4 key购买 nike

我有一个 uint8x8 Neon 向量,它是某些操作的结果。我需要对所有 channel 执行逻辑 AND 操作以获得最终结果。每个元素都是 0xff (TRUE) 或 0x00 (FALSE)。我如何在 Neon 中执行它?

最佳答案

在这种情况下,您可以简单地进行二进制取反,并检查 64 位结果是否为 0。

vmvn d0, d0    
vpaddl.u32 d0, d0 // 64bit vceq isn't possible.
vceq.i32 d0, d0, #0

您现在在 d0 中有了所需的结果。

如果您正在使用 aarch64,则 64 位 cmeq 是可能的

mvn v0.16b, v0.16b
cmeq v0.2d, v0.2d, #0

此算法的最佳之处在于您不需要任何其他寄存器,因为零是比较指令接受的唯一立即值。

关于arm - 对 uint8x8 Neon 向量的所有 channel 执行水平逻辑/按位与运算,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46903007/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com