Warum "springen" _mm256_unpacklo ein Doppelwort und wo steht das in der Dokumentation?

Post a reply

Smilies
:) :( :oops: :chelo: :roll: :wink: :muza: :sorry: :angel: :read: *x) :clever:
View more smilies

BBCode is ON
[img] is ON
[flash] is OFF
[url] is ON
Smilies are ON

Topic review
   

Expand view Topic review: Warum "springen" _mm256_unpacklo ein Doppelwort und wo steht das in der Dokumentation?

by Anonymous » 22 Feb 2025, 00:23

Ich finde die _mm256_unpacklo_epi32 Anweisung ein bisschen lustig und kann sie nicht wirklich mit der Dokumentation korrelieren.#include
#include

int main() {
__m256i a = _mm256_set_epi32(8, 7, 6, 5, 4, 3, 2, 1);
__m256i b = _mm256_set_epi32(16, 15, 14, 13, 12, 11, 10, 9);

__m256i c = _mm256_unpacklo_epi32(a, b);

int* values = (int*)&c;
for (size_t i = 0; i < 8 - 1; i++) {
std::cout

[*] Was ist der Grund dafür? Gibt es eine Anweisung, die die unteren 128 -Bit -Vektoren von den Quellvektoren verwebt? Das Verhalten scheint mir nicht so nützlich zu sein. DOCS/CPP-Compiler/Entwickler-Guide-Referenz/2021-10/mm256-unpacklo-epi8-16-32-64.html. Wo heißt es, dass das zweitniedrigste Doppelwort ignoriert wird?
[/u]

Top