问题标签 [intrinsics]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
411 浏览

c - _never_executed() 的目的是什么?

我以前见过这个宏定义,但从来没有真正知道它的用途。任何人都可以阐明这一点吗?

0 投票
6 回答
26016 浏览

c - 如何使用 MSVC 内在函数来获得此 GCC 代码的等效项?

以下代码在 GCC 中调用 clz/ctz 的内置函数,并且在其他系统上具有 C 版本。显然,如果系统具有内置的 clz/ctz 指令,如 x86 和 ARM,则 C 版本有点不理想。

我需要调用哪些函数,需要包含哪些标头等,以便在此处为 MSVC 添加适当的 ifdef?我已经看过这个页面,但我不完全确定 #pragma 的用途(是否需要?)以及它对 MSVC 版本编译要求的限制。作为一个不真正使用 MSVC 的人,我也不知道这些内在函数在其他架构上是否具有 C 等价物,或者在 #defining 它们时我是否也必须 #ifdef x86/x86_64。

0 投票
2 回答
482 浏览

gcc - 我的 _bittestandset 版本有什么问题

我是汇编语言的新手。似乎 gcc 在 intrin.h 中没有像 MSVC 那样的 _bittestandset 函数,所以我实现了一个新函数。这个在linux下工作正常,但是在winVista机器上的mingw就出错了,代码是:

0 投票
3 回答
7422 浏览

memory - 内在 memcmp

根据gcc docs, memcmp 不是 GCC 的内在功能。如果您想在 gcc 下加速 glibc 的 memcmp,则需要使用文档中定义的较低级别的内在函数。但是,在网上搜索时,似乎很多人都认为 memcmp 是一个内置函数。它适用于某些编译器而不适用于其他编译器吗?

0 投票
1 回答
2465 浏览

iphone - 在 Xcode 中设置 GCC 4.2.1 选项

我有几个关于 Xcode 和与 GCC 4.2.1 交互的问题:

  1. Xcode Target Properties 检查器似乎没有公开所有可能的 GCC 选项。这个对吗?

  2. 更具体地说,我对设置“mfpu”选项感兴趣,如 arm_neon.h 内在函数头中所述。这是可能的还是支持的?或者可能设置为其他 Xcode 设置的副作用?

如果有人尝试过或可以发布一些资源,那将有很大帮助。

0 投票
5 回答
2736 浏览

c - 点积 - SSE2 与 BLAS

对于计算向量 x 与大量向量 y_i 的点积,我最好的选择是什么,其中 x 和 y_i 的长度为 10k 左右。

  1. 将 y 推入矩阵并使用优化的s/dgemv例程?
  2. 或者尝试手动编写 SSE2 解决方案(根据 cpuinfo,我没有 SSE3)。

我只是在这里寻找一般指导,所以任何建议都会很有用。
是的,我确实需要表演。谢谢你的光。

0 投票
6 回答
2674 浏览

c++ - 使用 movsd 使编译器复制字符

我想在时间关键函数中复制一个相对较短的内存序列(小于 1 KB,通常为 2-200 字节)。在 CPU 方面最好的代码似乎是rep movsd. 但是,我不知何故无法让我的编译器生成此代码。我希望(我隐约记得看到过)使用 memcpy 会使用编译器内置内在函数来做到这一点,但基于反汇编和调试,编译器似乎正在使用对 memcpy/memmove 库实现的调用。我还希望编译器可能足够聪明,能够识别后续循环并rep movsd自行使用,但似乎没有。

除了使用内联汇编之外,还有什么方法可以让 Visual Studio 编译器生成rep movsd序列吗?

0 投票
7 回答
298 浏览

c++ - 如何快速找到向量和的最大元素?

我在程序的最内部循环中有以下代码

我不在乎它是一些聪明的算法(但这将是最有趣的)还是一些 C++ 技巧或内在函数或汇编程序。但我需要让 findmax 函数更高效。

提前非常感谢。

编辑: 似乎分支是最慢的操作(预测错误?)。

0 投票
3 回答
2017 浏览

c++ - 对类使用 C 内在函数和内存对齐困难

好的,所以我刚刚开始在我的代码中使用 C 内在函数,并且我创建了一个类,它简化后如下所示:

到目前为止,一切都很好。但是当我用 _Vector3D 成员创建第二个类时,我遇到了问题:

我收到以下错误:

错误 C2719: 'origins': 带有 __declspec(align('16')) 的形式参数不会对齐

指向构造函数重载:

那么我会以错误的方式解决这个问题吗?我应该改用结构还是可以让它与类一起使用?

0 投票
4 回答
22500 浏览

c# - C# 快速 crc32 计算:

我用 Ants 分析了我的应用程序,发现 > 10% 是在 CRC32 计算中。(CRC32 计算是在纯 C# 中完成的)

我做了一些谷歌搜索并了解了 Visual Studio 2008 中的以下内在函数:

_mm_crc32_u8

_mm_crc32_u16

_mm_crc32_u32

_mm_crc32_u64

http://msdn.microsoft.com/en-us/library/bb514036.aspx

谁能告诉我/告诉我如何使用这些来替换我的自制 CRC32?