我收到有关某些 Neon 代码的错误消息

Posted

技术标签:

【中文标题】我收到有关某些 Neon 代码的错误消息【英文标题】:I got an error message about some Neon code 【发布时间】:2015-11-30 05:50:30 【问题描述】:

为了在 android 上学习 ARM Neon,我尝试运行一个示例代码。

但我收到一条错误消息。

 uint16_t in[8] = 0, 1, 2, 3, 4, 5, 6, 7;
 uint16_t out[8];
 r = vld1q_u16(&in[0]);
 **vst1q_u16(&out[0], r);** <-- Here comes an error message

错误消息是无效参数

我不明白为什么会出现问题。

vld1q_u16 工作正常,r 的值也正确。

但是vst1q_u16 不起作用。

【问题讨论】:

请包含完整的错误消息(使用上面的edit 链接将其复制并粘贴到您的问题中)。 确保 r 被正确声明为 uint16x8_t r。你的 sn-p 使用 gradle 实验插件 0.2.0 为我编译。 【参考方案1】:

你应该使用

r = vld1q_u16(in);
vst1q_u16(out, r);

像 NEON 这样的 SIMD 引擎默认向后读取内存内容,所以给它数组元素 0 的地址是个坏主意。

【讨论】:

以上是关于我收到有关某些 Neon 代码的错误消息的主要内容,如果未能解决你的问题,请参考以下文章

HttpClient - 任务被取消 - 如何获得确切的错误消息?

有关“ FOR XML EXPLICIT”故障排除的建议,消息6833“要求首先打开父标记”错误

为啥我会收到错误消息?

是否可以针对某些注册错误自定义 django.auth 错误消息?

Eclipse Neon无法启动

WCF ProtocolException:错误请求 400(与 http 消息大小有关)