Intel ITANIUM ARCHITECTURE - SOFTWARE DEVELOPERS MANUAL VOLUME 1 REV 2.3 Manual page 1851

Hide thumbs Also See for ITANIUM ARCHITECTURE - SOFTWARE DEVELOPERS MANUAL VOLUME 1 REV 2.3:
Table of Contents

Advertisement

SHUFPS: Shuffle Single-FP
Opcode
0F,C6,/r, ib
Operation:
fp_select
xmm1[31-0]
fp_select
xmm1[63-32]
fp_select
xmm1[95-64]
fp_select
xmm1[127-96] = (fp_select == 0) ? xmm2/m128[31-0]
The SHUFPS instruction is able to shuffle any of the four SP FP numbers from xmm1 to
Description:
the lower 2 destination fields; the upper 2 destination fields are generated from a
shuffle of any of the four SP FP numbers from xmm2/m128. By using the same register
for both sources, SHUFPS can return any combination of the four SP FP numbers from
this register. Bits 0 and 1 of the immediate field are used to select which of the four
input SP FP numbers will be put in the first SP FP number of the result; bits 3 and 2 of
the immediate field are used to select which of the four input SP FP will be put in the
second SP FP number of the result; etc.
Volume 4: IA-32 SSE Instruction Reference
Instruction
SHUFPS xmm1, xmm2/m128, imm8
= (imm8 >> 0) & 0x3;
= (fp_select == 0) ? xmm1[31-0]
(fp_select == 1) ? xmm1[63-32]
(fp_select == 2) ? xmm1[95-64]
= (imm8 >> 2) & 0x3;
= (fp_select == 0) ? xmm1[31-0]
(fp_select == 1) ? xmm1[63-32]
(fp_select == 2) ? xmm1[95-64]
= (imm8 >> 4) & 0x3;
= (fp_select == 0) ? xmm2/m128[31-0]
(fp_select == 1) ? xmm2/m128[63-32]
(fp_select == 2) ? xmm2/m128[95-64]
= (imm8 >> 6) & 0x3;
(fp_select == 1) ? xmm2/m128[63-32]
(fp_select == 2) ? xmm2/m128[95-64]
Description
Shuffle Single.
:
:
:
xmm1[127-96];
:
:
:
xmm1[127-96];
:
:
:
xmm2/m128[127-96];
:
:
:
xmm2/m128[127-96];
4:549

Advertisement

Table of Contents
loading

This manual is also suitable for:

Itanium architecture 2.3

Table of Contents