【问题标题】:SSE loading ints into __m128SSE 将整数加载到 __m128
【发布时间】:2012-02-24 20:30:13
【问题描述】:

gcc 将 4 个 ints 加载到 __m128 并将 8 个整数加载到 __m256 (对齐/未对齐)的内在特性是什么? unsigned ints呢?

【问题讨论】:

  • 澄清:您正在寻找 GCC 的内在函数,而不是英特尔的内在函数是否正确?
  • 不知道确切,但在 gcc 4.6+“开箱即用”中可以使用。
  • 使用software.intel.com/sites/landingpage/IntrinsicsGuide 查找您需要知道的所有内容。

标签: c gcc sse avx


【解决方案1】:

使用英特尔的 SSE intrinsics,您正在寻找的是:

  • _mm_load_si128()
  • _mm_loadu_si128()
  • _mm256_load_si256()
  • _mm256_loadu_si256()

文档:

签名和未签名之间没有区别。您需要将指针转换为 __m128i*__m256i*


请注意,这些是 Intel 的 SSE 内在函数,可在 GCC、Clang、MSVC 和 ICC 中使用。
GCC 内在函数仅在 GCC AFAIK 中有效。

【讨论】:

猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-05-24
  • 1970-01-01
  • 2013-05-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多