1200b306f2006533a0e7a0ca75cb3103620e7aa84Benjamin Kramer# RUN: llvm-mc %s -triple=x86_64-unknown-unknown | FileCheck %s 2200b306f2006533a0e7a0ca75cb3103620e7aa84Benjamin Kramer 3200b306f2006533a0e7a0ca75cb3103620e7aa84Benjamin Kramerpalignr $8, %xmm0, %xmm1 4200b306f2006533a0e7a0ca75cb3103620e7aa84Benjamin Kramer# CHECK: xmm1 = xmm0[8,9,10,11,12,13,14,15],xmm1[0,1,2,3,4,5,6,7] 5200b306f2006533a0e7a0ca75cb3103620e7aa84Benjamin Kramerpalignr $8, (%rax), %xmm1 6200b306f2006533a0e7a0ca75cb3103620e7aa84Benjamin Kramer# CHECK: xmm1 = mem[8,9,10,11,12,13,14,15],xmm1[0,1,2,3,4,5,6,7] 7200b306f2006533a0e7a0ca75cb3103620e7aa84Benjamin Kramer 8200b306f2006533a0e7a0ca75cb3103620e7aa84Benjamin Kramerpalignr $16, %xmm0, %xmm1 9200b306f2006533a0e7a0ca75cb3103620e7aa84Benjamin Kramer# CHECK: xmm1 = xmm1[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15] 10200b306f2006533a0e7a0ca75cb3103620e7aa84Benjamin Kramerpalignr $16, (%rax), %xmm1 11200b306f2006533a0e7a0ca75cb3103620e7aa84Benjamin Kramer# CHECK: xmm1 = xmm1[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15] 12200b306f2006533a0e7a0ca75cb3103620e7aa84Benjamin Kramer 13200b306f2006533a0e7a0ca75cb3103620e7aa84Benjamin Kramerpalignr $0, %xmm0, %xmm1 14200b306f2006533a0e7a0ca75cb3103620e7aa84Benjamin Kramer# CHECK: xmm1 = xmm0[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15] 15200b306f2006533a0e7a0ca75cb3103620e7aa84Benjamin Kramerpalignr $0, (%rax), %xmm1 16200b306f2006533a0e7a0ca75cb3103620e7aa84Benjamin Kramer# CHECK: xmm1 = mem[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15] 17200b306f2006533a0e7a0ca75cb3103620e7aa84Benjamin Kramer 18200b306f2006533a0e7a0ca75cb3103620e7aa84Benjamin Kramervpalignr $8, %xmm0, %xmm1, %xmm2 19200b306f2006533a0e7a0ca75cb3103620e7aa84Benjamin Kramer# CHECK: xmm2 = xmm0[8,9,10,11,12,13,14,15],xmm1[0,1,2,3,4,5,6,7] 20200b306f2006533a0e7a0ca75cb3103620e7aa84Benjamin Kramervpalignr $8, (%rax), %xmm1, %xmm2 21200b306f2006533a0e7a0ca75cb3103620e7aa84Benjamin Kramer# CHECK: xmm2 = mem[8,9,10,11,12,13,14,15],xmm1[0,1,2,3,4,5,6,7] 22200b306f2006533a0e7a0ca75cb3103620e7aa84Benjamin Kramer 23200b306f2006533a0e7a0ca75cb3103620e7aa84Benjamin Kramervpalignr $16, %xmm0, %xmm1, %xmm2 24200b306f2006533a0e7a0ca75cb3103620e7aa84Benjamin Kramer# CHECK: xmm2 = xmm1[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15] 25200b306f2006533a0e7a0ca75cb3103620e7aa84Benjamin Kramervpalignr $16, (%rax), %xmm1, %xmm2 26200b306f2006533a0e7a0ca75cb3103620e7aa84Benjamin Kramer# CHECK: xmm2 = xmm1[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15] 27200b306f2006533a0e7a0ca75cb3103620e7aa84Benjamin Kramer 28200b306f2006533a0e7a0ca75cb3103620e7aa84Benjamin Kramervpalignr $0, %xmm0, %xmm1, %xmm2 29200b306f2006533a0e7a0ca75cb3103620e7aa84Benjamin Kramer# CHECK: xmm2 = xmm0[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15] 30200b306f2006533a0e7a0ca75cb3103620e7aa84Benjamin Kramervpalignr $0, (%rax), %xmm1, %xmm2 31200b306f2006533a0e7a0ca75cb3103620e7aa84Benjamin Kramer# CHECK: xmm2 = mem[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15] 32467016e58d57021b14f2ae562d221f00b07cb254Craig Topper 33467016e58d57021b14f2ae562d221f00b07cb254Craig Toppervpalignr $8, %ymm0, %ymm1, %ymm2 34467016e58d57021b14f2ae562d221f00b07cb254Craig Topper# CHECK: ymm2 = ymm0[8,9,10,11,12,13,14,15],ymm1[0,1,2,3,4,5,6,7],ymm0[24,25,26,27,28,29,30,31],ymm1[16,17,18,19,20,21,22,23] 35467016e58d57021b14f2ae562d221f00b07cb254Craig Toppervpalignr $8, (%rax), %ymm1, %ymm2 36467016e58d57021b14f2ae562d221f00b07cb254Craig Topper# CHECK: ymm2 = mem[8,9,10,11,12,13,14,15],ymm1[0,1,2,3,4,5,6,7],mem[24,25,26,27,28,29,30,31],ymm1[16,17,18,19,20,21,22,23] 37467016e58d57021b14f2ae562d221f00b07cb254Craig Topper 38467016e58d57021b14f2ae562d221f00b07cb254Craig Toppervpalignr $16, %ymm0, %ymm1, %ymm2 39467016e58d57021b14f2ae562d221f00b07cb254Craig Topper# CHECK: ymm2 = ymm1[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31] 40467016e58d57021b14f2ae562d221f00b07cb254Craig Toppervpalignr $16, (%rax), %ymm1, %ymm2 41467016e58d57021b14f2ae562d221f00b07cb254Craig Topper# CHECK: ymm2 = ymm1[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31] 42467016e58d57021b14f2ae562d221f00b07cb254Craig Topper 43467016e58d57021b14f2ae562d221f00b07cb254Craig Toppervpalignr $0, %ymm0, %ymm1, %ymm2 44467016e58d57021b14f2ae562d221f00b07cb254Craig Topper# CHECK: ymm2 = ymm0[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31] 45467016e58d57021b14f2ae562d221f00b07cb254Craig Toppervpalignr $0, (%rax), %ymm1, %ymm2 46467016e58d57021b14f2ae562d221f00b07cb254Craig Topper# CHECK: ymm2 = mem[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31] 47e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper 48e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topperpshufd $27, %xmm0, %xmm1 49e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: xmm1 = xmm0[3,2,1,0] 50e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topperpshufd $27, (%rax), %xmm1 51e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: xmm1 = mem[3,2,1,0] 52e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper 53e6482fabd20a2a5b4f81aff55812782f3b617514Craig Toppervpshufd $27, %xmm0, %xmm1 54e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: xmm1 = xmm0[3,2,1,0] 55e6482fabd20a2a5b4f81aff55812782f3b617514Craig Toppervpshufd $27, (%rax), %xmm1 56e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: xmm1 = mem[3,2,1,0] 57e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper 58e6482fabd20a2a5b4f81aff55812782f3b617514Craig Toppervpshufd $27, %ymm0, %ymm1 59e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: ymm1 = ymm0[3,2,1,0,7,6,5,4] 60e6482fabd20a2a5b4f81aff55812782f3b617514Craig Toppervpshufd $27, (%rax), %ymm1 61e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: ymm1 = mem[3,2,1,0,7,6,5,4] 62e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper 63e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topperpunpcklbw %xmm0, %xmm1 64e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1],xmm1[2],xmm0[2],xmm1[3],xmm0[3],xmm1[4],xmm0[4],xmm1[5],xmm0[5],xmm1[6],xmm0[6],xmm1[7],xmm0[7] 65e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topperpunpcklbw (%rax), %xmm1 66e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: xmm1 = xmm1[0],mem[0],xmm1[1],mem[1],xmm1[2],mem[2],xmm1[3],mem[3],xmm1[4],mem[4],xmm1[5],mem[5],xmm1[6],mem[6],xmm1[7],mem[7] 67e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper 68e6482fabd20a2a5b4f81aff55812782f3b617514Craig Toppervpunpcklbw %xmm0, %xmm1, %xmm2 69e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: xmm2 = xmm1[0],xmm0[0],xmm1[1],xmm0[1],xmm1[2],xmm0[2],xmm1[3],xmm0[3],xmm1[4],xmm0[4],xmm1[5],xmm0[5],xmm1[6],xmm0[6],xmm1[7],xmm0[7] 70e6482fabd20a2a5b4f81aff55812782f3b617514Craig Toppervpunpcklbw (%rax), %xmm1, %xmm2 71e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: xmm2 = xmm1[0],mem[0],xmm1[1],mem[1],xmm1[2],mem[2],xmm1[3],mem[3],xmm1[4],mem[4],xmm1[5],mem[5],xmm1[6],mem[6],xmm1[7],mem[7] 72e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper 73e6482fabd20a2a5b4f81aff55812782f3b617514Craig Toppervpunpcklbw %ymm0, %ymm1, %ymm2 74e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: ymm2 = ymm1[0],ymm0[0],ymm1[1],ymm0[1],ymm1[2],ymm0[2],ymm1[3],ymm0[3],ymm1[4],ymm0[4],ymm1[5],ymm0[5],ymm1[6],ymm0[6],ymm1[7],ymm0[7],ymm1[16],ymm0[16],ymm1[17],ymm0[17],ymm1[18],ymm0[18],ymm1[19],ymm0[19],ymm1[20],ymm0[20],ymm1[21],ymm0[21],ymm1[22],ymm0[22],ymm1[23],ymm0[23] 75e6482fabd20a2a5b4f81aff55812782f3b617514Craig Toppervpunpcklbw (%rax), %ymm1, %ymm2 76e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: ymm2 = ymm1[0],mem[0],ymm1[1],mem[1],ymm1[2],mem[2],ymm1[3],mem[3],ymm1[4],mem[4],ymm1[5],mem[5],ymm1[6],mem[6],ymm1[7],mem[7],ymm1[16],mem[16],ymm1[17],mem[17],ymm1[18],mem[18],ymm1[19],mem[19],ymm1[20],mem[20],ymm1[21],mem[21],ymm1[22],mem[22],ymm1[23],mem[23] 77e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper 78e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topperpunpckhbw %xmm0, %xmm1 79e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: xmm1 = xmm1[8],xmm0[8],xmm1[9],xmm0[9],xmm1[10],xmm0[10],xmm1[11],xmm0[11],xmm1[12],xmm0[12],xmm1[13],xmm0[13],xmm1[14],xmm0[14],xmm1[15],xmm0[15] 80e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topperpunpckhbw (%rax), %xmm1 81e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: xmm1 = xmm1[8],mem[8],xmm1[9],mem[9],xmm1[10],mem[10],xmm1[11],mem[11],xmm1[12],mem[12],xmm1[13],mem[13],xmm1[14],mem[14],xmm1[15],mem[15] 82e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper 83e6482fabd20a2a5b4f81aff55812782f3b617514Craig Toppervpunpckhbw %xmm0, %xmm1, %xmm2 84e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: xmm2 = xmm1[8],xmm0[8],xmm1[9],xmm0[9],xmm1[10],xmm0[10],xmm1[11],xmm0[11],xmm1[12],xmm0[12],xmm1[13],xmm0[13],xmm1[14],xmm0[14],xmm1[15],xmm0[15] 85e6482fabd20a2a5b4f81aff55812782f3b617514Craig Toppervpunpckhbw (%rax), %xmm1, %xmm2 86e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: xmm2 = xmm1[8],mem[8],xmm1[9],mem[9],xmm1[10],mem[10],xmm1[11],mem[11],xmm1[12],mem[12],xmm1[13],mem[13],xmm1[14],mem[14],xmm1[15],mem[15] 87e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper 88e6482fabd20a2a5b4f81aff55812782f3b617514Craig Toppervpunpckhbw %ymm0, %ymm1, %ymm2 89e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: ymm2 = ymm1[8],ymm0[8],ymm1[9],ymm0[9],ymm1[10],ymm0[10],ymm1[11],ymm0[11],ymm1[12],ymm0[12],ymm1[13],ymm0[13],ymm1[14],ymm0[14],ymm1[15],ymm0[15],ymm1[24],ymm0[24],ymm1[25],ymm0[25],ymm1[26],ymm0[26],ymm1[27],ymm0[27],ymm1[28],ymm0[28],ymm1[29],ymm0[29],ymm1[30],ymm0[30],ymm1[31],ymm0[31] 90e6482fabd20a2a5b4f81aff55812782f3b617514Craig Toppervpunpckhbw (%rax), %ymm1, %ymm2 91e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: ymm2 = ymm1[8],mem[8],ymm1[9],mem[9],ymm1[10],mem[10],ymm1[11],mem[11],ymm1[12],mem[12],ymm1[13],mem[13],ymm1[14],mem[14],ymm1[15],mem[15],ymm1[24],mem[24],ymm1[25],mem[25],ymm1[26],mem[26],ymm1[27],mem[27],ymm1[28],mem[28],ymm1[29],mem[29],ymm1[30],mem[30],ymm1[31],mem[31] 92e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper 93e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topperpunpcklwd %xmm0, %xmm1 94e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1],xmm1[2],xmm0[2],xmm1[3],xmm0[3] 95e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topperpunpcklwd (%rax), %xmm1 96e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: xmm1 = xmm1[0],mem[0],xmm1[1],mem[1],xmm1[2],mem[2],xmm1[3],mem[3] 97e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper 98e6482fabd20a2a5b4f81aff55812782f3b617514Craig Toppervpunpcklwd %xmm0, %xmm1, %xmm2 99e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: xmm2 = xmm1[0],xmm0[0],xmm1[1],xmm0[1],xmm1[2],xmm0[2],xmm1[3],xmm0[3] 100e6482fabd20a2a5b4f81aff55812782f3b617514Craig Toppervpunpcklwd (%rax), %xmm1, %xmm2 101e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: xmm2 = xmm1[0],mem[0],xmm1[1],mem[1],xmm1[2],mem[2],xmm1[3],mem[3] 102e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper 103e6482fabd20a2a5b4f81aff55812782f3b617514Craig Toppervpunpcklwd %ymm0, %ymm1, %ymm2 104e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: ymm2 = ymm1[0],ymm0[0],ymm1[1],ymm0[1],ymm1[2],ymm0[2],ymm1[3],ymm0[3],ymm1[8],ymm0[8],ymm1[9],ymm0[9],ymm1[10],ymm0[10],ymm1[11],ymm0[11] 105e6482fabd20a2a5b4f81aff55812782f3b617514Craig Toppervpunpcklwd (%rax), %ymm1, %ymm2 106e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: ymm2 = ymm1[0],mem[0],ymm1[1],mem[1],ymm1[2],mem[2],ymm1[3],mem[3],ymm1[8],mem[8],ymm1[9],mem[9],ymm1[10],mem[10],ymm1[11],mem[11] 107e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper 108e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topperpunpckhwd %xmm0, %xmm1 109e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: xmm1 = xmm1[4],xmm0[4],xmm1[5],xmm0[5],xmm1[6],xmm0[6],xmm1[7],xmm0[7] 110e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topperpunpckhwd (%rax), %xmm1 111e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: xmm1 = xmm1[4],mem[4],xmm1[5],mem[5],xmm1[6],mem[6],xmm1[7],mem[7] 112e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper 113e6482fabd20a2a5b4f81aff55812782f3b617514Craig Toppervpunpckhwd %xmm0, %xmm1, %xmm2 114e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: xmm2 = xmm1[4],xmm0[4],xmm1[5],xmm0[5],xmm1[6],xmm0[6],xmm1[7],xmm0[7] 115e6482fabd20a2a5b4f81aff55812782f3b617514Craig Toppervpunpckhwd (%rax), %xmm1, %xmm2 116e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: xmm2 = xmm1[4],mem[4],xmm1[5],mem[5],xmm1[6],mem[6],xmm1[7],mem[7] 117e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper 118e6482fabd20a2a5b4f81aff55812782f3b617514Craig Toppervpunpckhwd %ymm0, %ymm1, %ymm2 119e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: ymm2 = ymm1[4],ymm0[4],ymm1[5],ymm0[5],ymm1[6],ymm0[6],ymm1[7],ymm0[7],ymm1[12],ymm0[12],ymm1[13],ymm0[13],ymm1[14],ymm0[14],ymm1[15],ymm0[15] 120e6482fabd20a2a5b4f81aff55812782f3b617514Craig Toppervpunpckhwd (%rax), %ymm1, %ymm2 121e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: ymm2 = ymm1[4],mem[4],ymm1[5],mem[5],ymm1[6],mem[6],ymm1[7],mem[7],ymm1[12],mem[12],ymm1[13],mem[13],ymm1[14],mem[14],ymm1[15],mem[15] 122e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper 123e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topperpunpckldq %xmm0, %xmm1 124e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1] 125e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topperpunpckldq (%rax), %xmm1 126e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: xmm1 = xmm1[0],mem[0],xmm1[1],mem[1] 127e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper 128e6482fabd20a2a5b4f81aff55812782f3b617514Craig Toppervpunpckldq %xmm0, %xmm1, %xmm2 129e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: xmm2 = xmm1[0],xmm0[0],xmm1[1],xmm0[1] 130e6482fabd20a2a5b4f81aff55812782f3b617514Craig Toppervpunpckldq (%rax), %xmm1, %xmm2 131e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: xmm2 = xmm1[0],mem[0],xmm1[1],mem[1] 132e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper 133e6482fabd20a2a5b4f81aff55812782f3b617514Craig Toppervpunpckldq %ymm0, %ymm1, %ymm2 134e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: ymm2 = ymm1[0],ymm0[0],ymm1[1],ymm0[1],ymm1[4],ymm0[4],ymm1[5],ymm0[5] 135e6482fabd20a2a5b4f81aff55812782f3b617514Craig Toppervpunpckldq (%rax), %ymm1, %ymm2 136e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: ymm2 = ymm1[0],mem[0],ymm1[1],mem[1],ymm1[4],mem[4],ymm1[5],mem[5] 137e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper 138e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topperpunpckhdq %xmm0, %xmm1 139e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: xmm1 = xmm1[2],xmm0[2],xmm1[3],xmm0[3] 140e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topperpunpckhdq (%rax), %xmm1 141e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: xmm1 = xmm1[2],mem[2],xmm1[3],mem[3] 142e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper 143e6482fabd20a2a5b4f81aff55812782f3b617514Craig Toppervpunpckhdq %xmm0, %xmm1, %xmm2 144e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: xmm2 = xmm1[2],xmm0[2],xmm1[3],xmm0[3] 145e6482fabd20a2a5b4f81aff55812782f3b617514Craig Toppervpunpckhdq (%rax), %xmm1, %xmm2 146e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: xmm2 = xmm1[2],mem[2],xmm1[3],mem[3] 147e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper 148e6482fabd20a2a5b4f81aff55812782f3b617514Craig Toppervpunpckhdq %ymm0, %ymm1, %ymm2 149e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: ymm2 = ymm1[2],ymm0[2],ymm1[3],ymm0[3],ymm1[6],ymm0[6],ymm1[7],ymm0[7] 150e6482fabd20a2a5b4f81aff55812782f3b617514Craig Toppervpunpckhdq (%rax), %ymm1, %ymm2 151e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: ymm2 = ymm1[2],mem[2],ymm1[3],mem[3],ymm1[6],mem[6],ymm1[7],mem[7] 152e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper 153e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topperpunpcklqdq %xmm0, %xmm1 154e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: xmm1 = xmm1[0],xmm0[0] 155e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topperpunpcklqdq (%rax), %xmm1 156e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: xmm1 = xmm1[0],mem[0] 157e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper 158e6482fabd20a2a5b4f81aff55812782f3b617514Craig Toppervpunpcklqdq %xmm0, %xmm1, %xmm2 159e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: xmm2 = xmm1[0],xmm0[0] 160e6482fabd20a2a5b4f81aff55812782f3b617514Craig Toppervpunpcklqdq (%rax), %xmm1, %xmm2 161e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: xmm2 = xmm1[0],mem[0] 162e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper 163e6482fabd20a2a5b4f81aff55812782f3b617514Craig Toppervpunpcklqdq %ymm0, %ymm1, %ymm2 164e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: ymm2 = ymm1[0],ymm0[0],ymm1[2],ymm0[2] 165e6482fabd20a2a5b4f81aff55812782f3b617514Craig Toppervpunpcklqdq (%rax), %ymm1, %ymm2 166e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: ymm2 = ymm1[0],mem[0],ymm1[2],mem[2] 167e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper 168e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topperpunpckhqdq %xmm0, %xmm1 169e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: xmm1 = xmm1[1],xmm0[1] 170e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topperpunpckhqdq (%rax), %xmm1 171e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: xmm1 = xmm1[1],mem[1] 172e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper 173e6482fabd20a2a5b4f81aff55812782f3b617514Craig Toppervpunpckhqdq %xmm0, %xmm1, %xmm2 174e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: xmm2 = xmm1[1],xmm0[1] 175e6482fabd20a2a5b4f81aff55812782f3b617514Craig Toppervpunpckhqdq (%rax), %xmm1, %xmm2 176e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: xmm2 = xmm1[1],mem[1] 177e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper 178e6482fabd20a2a5b4f81aff55812782f3b617514Craig Toppervpunpckhqdq %ymm0, %ymm1, %ymm2 179e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: ymm2 = ymm1[1],ymm0[1],ymm1[3],ymm0[3] 180e6482fabd20a2a5b4f81aff55812782f3b617514Craig Toppervpunpckhqdq (%rax), %ymm1, %ymm2 181e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: ymm2 = ymm1[1],mem[1],ymm1[3],mem[3] 182e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper 183e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topperunpcklps %xmm0, %xmm1 184e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1] 185e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topperunpcklps (%rax), %xmm1 186e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: xmm1 = xmm1[0],mem[0],xmm1[1],mem[1] 187e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper 188e6482fabd20a2a5b4f81aff55812782f3b617514Craig Toppervunpcklps %xmm0, %xmm1, %xmm2 189e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: xmm2 = xmm1[0],xmm0[0],xmm1[1],xmm0[1] 190e6482fabd20a2a5b4f81aff55812782f3b617514Craig Toppervunpcklps (%rax), %xmm1, %xmm2 191e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: xmm2 = xmm1[0],mem[0],xmm1[1],mem[1] 192e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper 193e6482fabd20a2a5b4f81aff55812782f3b617514Craig Toppervunpcklps %ymm0, %ymm1, %ymm2 194e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: ymm2 = ymm1[0],ymm0[0],ymm1[1],ymm0[1],ymm1[4],ymm0[4],ymm1[5],ymm0[5] 195e6482fabd20a2a5b4f81aff55812782f3b617514Craig Toppervunpcklps (%rax), %ymm1, %ymm2 196e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: ymm2 = ymm1[0],mem[0],ymm1[1],mem[1],ymm1[4],mem[4],ymm1[5],mem[5] 197e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper 198e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topperunpckhps %xmm0, %xmm1 199e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: xmm1 = xmm1[2],xmm0[2],xmm1[3],xmm0[3] 200e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topperunpckhps (%rax), %xmm1 201e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: xmm1 = xmm1[2],mem[2],xmm1[3],mem[3] 202e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper 203e6482fabd20a2a5b4f81aff55812782f3b617514Craig Toppervunpckhps %xmm0, %xmm1, %xmm2 204e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: xmm2 = xmm1[2],xmm0[2],xmm1[3],xmm0[3] 205e6482fabd20a2a5b4f81aff55812782f3b617514Craig Toppervunpckhps (%rax), %xmm1, %xmm2 206e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: xmm2 = xmm1[2],mem[2],xmm1[3],mem[3] 207e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper 208e6482fabd20a2a5b4f81aff55812782f3b617514Craig Toppervunpckhps %ymm0, %ymm1, %ymm2 209e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: ymm2 = ymm1[2],ymm0[2],ymm1[3],ymm0[3],ymm1[6],ymm0[6],ymm1[7],ymm0[7] 210e6482fabd20a2a5b4f81aff55812782f3b617514Craig Toppervunpckhps (%rax), %ymm1, %ymm2 211e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: ymm2 = ymm1[2],mem[2],ymm1[3],mem[3],ymm1[6],mem[6],ymm1[7],mem[7] 212e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper 213e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topperunpcklpd %xmm0, %xmm1 214e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: xmm1 = xmm1[0],xmm0[0] 215e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topperunpcklpd (%rax), %xmm1 216e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: xmm1 = xmm1[0],mem[0] 217e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper 218e6482fabd20a2a5b4f81aff55812782f3b617514Craig Toppervunpcklpd %xmm0, %xmm1, %xmm2 219e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: xmm2 = xmm1[0],xmm0[0] 220e6482fabd20a2a5b4f81aff55812782f3b617514Craig Toppervunpcklpd (%rax), %xmm1, %xmm2 221e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: xmm2 = xmm1[0],mem[0] 222e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper 223e6482fabd20a2a5b4f81aff55812782f3b617514Craig Toppervunpcklpd %ymm0, %ymm1, %ymm2 224e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: ymm2 = ymm1[0],ymm0[0],ymm1[2],ymm0[2] 225e6482fabd20a2a5b4f81aff55812782f3b617514Craig Toppervunpcklpd (%rax), %ymm1, %ymm2 226e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: ymm2 = ymm1[0],mem[0],ymm1[2],mem[2] 227e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper 228e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topperunpckhpd %xmm0, %xmm1 229e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: xmm1 = xmm1[1],xmm0[1] 230e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topperunpckhpd (%rax), %xmm1 231e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: xmm1 = xmm1[1],mem[1] 232e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper 233e6482fabd20a2a5b4f81aff55812782f3b617514Craig Toppervunpckhpd %xmm0, %xmm1, %xmm2 234e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: xmm2 = xmm1[1],xmm0[1] 235e6482fabd20a2a5b4f81aff55812782f3b617514Craig Toppervunpckhpd (%rax), %xmm1, %xmm2 236e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: xmm2 = xmm1[1],mem[1] 237e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper 238e6482fabd20a2a5b4f81aff55812782f3b617514Craig Toppervunpckhpd %ymm0, %ymm1, %ymm2 239e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: ymm2 = ymm1[1],ymm0[1],ymm1[3],ymm0[3] 240e6482fabd20a2a5b4f81aff55812782f3b617514Craig Toppervunpckhpd (%rax), %ymm1, %ymm2 241e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: ymm2 = ymm1[1],mem[1],ymm1[3],mem[3] 242e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper 243e6482fabd20a2a5b4f81aff55812782f3b617514Craig Toppershufps $27, %xmm0, %xmm1 244e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: xmm1 = xmm1[3,2],xmm0[1,0] 245e6482fabd20a2a5b4f81aff55812782f3b617514Craig Toppershufps $27, (%rax), %xmm1 246e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: xmm1 = xmm1[3,2],mem[1,0] 247e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper 248e6482fabd20a2a5b4f81aff55812782f3b617514Craig Toppervshufps $27, %xmm0, %xmm1, %xmm2 249e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: xmm2 = xmm1[3,2],xmm0[1,0] 250e6482fabd20a2a5b4f81aff55812782f3b617514Craig Toppervshufps $27, (%rax), %xmm1, %xmm2 251e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: xmm2 = xmm1[3,2],mem[1,0] 252e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper 253e6482fabd20a2a5b4f81aff55812782f3b617514Craig Toppervshufps $27, %ymm0, %ymm1, %ymm2 254e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: ymm2 = ymm1[3,2],ymm0[1,0],ymm1[7,6],ymm0[5,4] 255e6482fabd20a2a5b4f81aff55812782f3b617514Craig Toppervshufps $27, (%rax), %ymm1, %ymm2 256e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: ymm2 = ymm1[3,2],mem[1,0],ymm1[7,6],mem[5,4] 257e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper 258e6482fabd20a2a5b4f81aff55812782f3b617514Craig Toppershufpd $3, %xmm0, %xmm1 259e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: xmm1 = xmm1[1],xmm0[1] 260e6482fabd20a2a5b4f81aff55812782f3b617514Craig Toppershufpd $3, (%rax), %xmm1 261e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: xmm1 = xmm1[1],mem[1] 262e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper 263e6482fabd20a2a5b4f81aff55812782f3b617514Craig Toppervshufpd $3, %xmm0, %xmm1, %xmm2 264e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: xmm2 = xmm1[1],xmm0[1] 265e6482fabd20a2a5b4f81aff55812782f3b617514Craig Toppervshufpd $3, (%rax), %xmm1, %xmm2 266e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: xmm2 = xmm1[1],mem[1] 267e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper 268e6482fabd20a2a5b4f81aff55812782f3b617514Craig Toppervshufpd $11, %ymm0, %ymm1, %ymm2 269e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: ymm2 = ymm1[1],ymm0[1],ymm1[2],ymm0[3] 270e6482fabd20a2a5b4f81aff55812782f3b617514Craig Toppervshufpd $11, (%rax), %ymm1, %ymm2 271e6482fabd20a2a5b4f81aff55812782f3b617514Craig Topper# CHECK: ymm2 = ymm1[1],mem[1],ymm1[2],mem[3] 272ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines 273ebe69fe11e48d322045d5949c83283927a0d790bStephen Hinesvinsertps $16, %xmm0, %xmm1, %xmm2 274ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines# CHECK: xmm2 = xmm1[0],xmm0[0],xmm1[2,3] 275ebe69fe11e48d322045d5949c83283927a0d790bStephen Hinesvinsertps $16, (%rax), %xmm1, %xmm2 276ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines# CHECK: xmm2 = xmm1[0],mem[0],xmm1[2,3] 277