# _mm256_shuffle_pd

Shuffles float64 vectors. The corresponding Intel® AVX instruction is VSHUFPD.

## Syntax

extern __m256d _mm256_shuffle_pd(__m256d m1, __m256d m2, const int select);

## Arguments

m1 | float64 vector used for the operation
m2 | float64 vector also used for the operation
select | a constant of integer type that determines which elements of the source vectors are moved to the result

## Description

Moves or shuffles either of the two packed double-precision floating-point elements (float64 elements) from the double quadword in the source vectors to the low and high quadwords of the double quadword of the result.

The elements of the first source vector are moved to the low quadword while the elements of the second source vector are moved to the high quadword of the result. The constant defined by the select parameter determines which of the two elements of the source vectors are moved to the result.

## Returns

Result of the shuffle operation.

Parent topic: Intrinsics for Shuffle Operations