1//RUN: llvm-mc -triple x86_64-unknown-unknown --show-encoding < %s | FileCheck %s 2 3// CHECK: vaesenc %xmm3, %xmm2, %xmm21 4// CHECK: encoding: [0x62,0xe2,0x6d,0x08,0xdc,0xeb] 5 vaesenc %xmm3, %xmm2, %xmm21 6 7// CHECK: vaesenclast %xmm3, %xmm2, %xmm21 8// CHECK: encoding: [0x62,0xe2,0x6d,0x08,0xdd,0xeb] 9 vaesenclast %xmm3, %xmm2, %xmm21 10 11// CHECK: vaesdec %xmm3, %xmm2, %xmm21 12// CHECK: encoding: [0x62,0xe2,0x6d,0x08,0xde,0xeb] 13 vaesdec %xmm3, %xmm2, %xmm21 14 15// CHECK: vaesdeclast %xmm3, %xmm2, %xmm21 16// CHECK: encoding: [0x62,0xe2,0x6d,0x08,0xdf,0xeb] 17 vaesdeclast %xmm3, %xmm2, %xmm21 18 19// CHECK: vaesenc (%rcx), %xmm2, %xmm21 20// CHECK: encoding: [0x62,0xe2,0x6d,0x08,0xdc,0x29] 21 vaesenc (%rcx), %xmm2, %xmm21 22 23// CHECK: vaesenc -64(%rsp), %xmm2, %xmm21 24// CHECK: encoding: [0x62,0xe2,0x6d,0x08,0xdc,0x6c,0x24,0xfc] 25 vaesenc -64(%rsp), %xmm2, %xmm21 26 27// CHECK: vaesenc 64(%rsp), %xmm2, %xmm21 28// CHECK: encoding: [0x62,0xe2,0x6d,0x08,0xdc,0x6c,0x24,0x04] 29 vaesenc 64(%rsp), %xmm2, %xmm21 30 31// CHECK: vaesenc 268435456(%rcx,%r14,8), %xmm2, %xmm21 32// CHECK: encoding: [0x62,0xa2,0x6d,0x08,0xdc,0xac,0xf1,0x00,0x00,0x00,0x10] 33 vaesenc 268435456(%rcx,%r14,8), %xmm2, %xmm21 34 35// CHECK: vaesenc -536870912(%rcx,%r14,8), %xmm2, %xmm21 36// CHECK: encoding: [0x62,0xa2,0x6d,0x08,0xdc,0xac,0xf1,0x00,0x00,0x00,0xe0] 37 vaesenc -536870912(%rcx,%r14,8), %xmm2, %xmm21 38 39// CHECK: vaesenc -536870910(%rcx,%r14,8), %xmm2, %xmm21 40// CHECK: encoding: [0x62,0xa2,0x6d,0x08,0xdc,0xac,0xf1,0x02,0x00,0x00,0xe0] 41 vaesenc -536870910(%rcx,%r14,8), %xmm2, %xmm21 42 43// CHECK: vaesenclast (%rcx), %xmm2, %xmm21 44// CHECK: encoding: [0x62,0xe2,0x6d,0x08,0xdd,0x29] 45 vaesenclast (%rcx), %xmm2, %xmm21 46 47// CHECK: vaesenclast -64(%rsp), %xmm2, %xmm21 48// CHECK: encoding: [0x62,0xe2,0x6d,0x08,0xdd,0x6c,0x24,0xfc] 49 vaesenclast -64(%rsp), %xmm2, %xmm21 50 51// CHECK: vaesenclast 64(%rsp), %xmm2, %xmm21 52// CHECK: encoding: [0x62,0xe2,0x6d,0x08,0xdd,0x6c,0x24,0x04] 53 vaesenclast 64(%rsp), %xmm2, %xmm21 54 55// CHECK: vaesenclast 268435456(%rcx,%r14,8), %xmm2, %xmm21 56// CHECK: encoding: [0x62,0xa2,0x6d,0x08,0xdd,0xac,0xf1,0x00,0x00,0x00,0x10] 57 vaesenclast 268435456(%rcx,%r14,8), %xmm2, %xmm21 58 59// CHECK: vaesenclast -536870912(%rcx,%r14,8), %xmm2, %xmm21 60// CHECK: encoding: [0x62,0xa2,0x6d,0x08,0xdd,0xac,0xf1,0x00,0x00,0x00,0xe0] 61 vaesenclast -536870912(%rcx,%r14,8), %xmm2, %xmm21 62 63// CHECK: vaesenclast -536870910(%rcx,%r14,8), %xmm2, %xmm21 64// CHECK: encoding: [0x62,0xa2,0x6d,0x08,0xdd,0xac,0xf1,0x02,0x00,0x00,0xe0] 65 vaesenclast -536870910(%rcx,%r14,8), %xmm2, %xmm21 66 67// CHECK: vaesdec (%rcx), %xmm2, %xmm21 68// CHECK: encoding: [0x62,0xe2,0x6d,0x08,0xde,0x29] 69 vaesdec (%rcx), %xmm2, %xmm21 70 71// CHECK: vaesdec -64(%rsp), %xmm2, %xmm21 72// CHECK: encoding: [0x62,0xe2,0x6d,0x08,0xde,0x6c,0x24,0xfc] 73 vaesdec -64(%rsp), %xmm2, %xmm21 74 75// CHECK: vaesdec 64(%rsp), %xmm2, %xmm21 76// CHECK: encoding: [0x62,0xe2,0x6d,0x08,0xde,0x6c,0x24,0x04] 77 vaesdec 64(%rsp), %xmm2, %xmm21 78 79// CHECK: vaesdec 268435456(%rcx,%r14,8), %xmm2, %xmm21 80// CHECK: encoding: [0x62,0xa2,0x6d,0x08,0xde,0xac,0xf1,0x00,0x00,0x00,0x10] 81 vaesdec 268435456(%rcx,%r14,8), %xmm2, %xmm21 82 83// CHECK: vaesdec -536870912(%rcx,%r14,8), %xmm2, %xmm21 84// CHECK: encoding: [0x62,0xa2,0x6d,0x08,0xde,0xac,0xf1,0x00,0x00,0x00,0xe0] 85 vaesdec -536870912(%rcx,%r14,8), %xmm2, %xmm21 86 87// CHECK: vaesdec -536870910(%rcx,%r14,8), %xmm2, %xmm21 88// CHECK: encoding: [0x62,0xa2,0x6d,0x08,0xde,0xac,0xf1,0x02,0x00,0x00,0xe0] 89 vaesdec -536870910(%rcx,%r14,8), %xmm2, %xmm21 90 91// CHECK: vaesdeclast (%rcx), %xmm2, %xmm21 92// CHECK: encoding: [0x62,0xe2,0x6d,0x08,0xdf,0x29] 93 vaesdeclast (%rcx), %xmm2, %xmm21 94 95// CHECK: vaesdeclast -64(%rsp), %xmm2, %xmm21 96// CHECK: encoding: [0x62,0xe2,0x6d,0x08,0xdf,0x6c,0x24,0xfc] 97 vaesdeclast -64(%rsp), %xmm2, %xmm21 98 99// CHECK: vaesdeclast 64(%rsp), %xmm2, %xmm21 100// CHECK: encoding: [0x62,0xe2,0x6d,0x08,0xdf,0x6c,0x24,0x04] 101 vaesdeclast 64(%rsp), %xmm2, %xmm21 102 103// CHECK: vaesdeclast 268435456(%rcx,%r14,8), %xmm2, %xmm21 104// CHECK: encoding: [0x62,0xa2,0x6d,0x08,0xdf,0xac,0xf1,0x00,0x00,0x00,0x10] 105 vaesdeclast 268435456(%rcx,%r14,8), %xmm2, %xmm21 106 107// CHECK: vaesdeclast -536870912(%rcx,%r14,8), %xmm2, %xmm21 108// CHECK: encoding: [0x62,0xa2,0x6d,0x08,0xdf,0xac,0xf1,0x00,0x00,0x00,0xe0] 109 vaesdeclast -536870912(%rcx,%r14,8), %xmm2, %xmm21 110 111// CHECK: vaesdeclast -536870910(%rcx,%r14,8), %xmm2, %xmm21 112// CHECK: encoding: [0x62,0xa2,0x6d,0x08,0xdf,0xac,0xf1,0x02,0x00,0x00,0xe0] 113 vaesdeclast -536870910(%rcx,%r14,8), %xmm2, %xmm21 114 115// CHECK: vaesenc %ymm3, %ymm2, %ymm21 116// CHECK: encoding: [0x62,0xe2,0x6d,0x28,0xdc,0xeb] 117 vaesenc %ymm3, %ymm2, %ymm21 118 119// CHECK: vaesenclast %ymm3, %ymm2, %ymm21 120// CHECK: encoding: [0x62,0xe2,0x6d,0x28,0xdd,0xeb] 121 vaesenclast %ymm3, %ymm2, %ymm21 122 123// CHECK: vaesdec %ymm3, %ymm2, %ymm21 124// CHECK: encoding: [0x62,0xe2,0x6d,0x28,0xde,0xeb] 125 vaesdec %ymm3, %ymm2, %ymm21 126 127// CHECK: vaesdeclast %ymm3, %ymm2, %ymm21 128// CHECK: encoding: [0x62,0xe2,0x6d,0x28,0xdf,0xeb] 129 vaesdeclast %ymm3, %ymm2, %ymm21 130 131// CHECK: vaesenc (%rcx), %ymm2, %ymm21 132// CHECK: encoding: [0x62,0xe2,0x6d,0x28,0xdc,0x29] 133 vaesenc (%rcx), %ymm2, %ymm21 134 135// CHECK: vaesenc -128(%rsp), %ymm2, %ymm21 136// CHECK: encoding: [0x62,0xe2,0x6d,0x28,0xdc,0x6c,0x24,0xfc] 137 vaesenc -128(%rsp), %ymm2, %ymm21 138 139// CHECK: vaesenc 128(%rsp), %ymm2, %ymm21 140// CHECK: encoding: [0x62,0xe2,0x6d,0x28,0xdc,0x6c,0x24,0x04] 141 vaesenc 128(%rsp), %ymm2, %ymm21 142 143// CHECK: vaesenc 268435456(%rcx,%r14,8), %ymm2, %ymm21 144// CHECK: encoding: [0x62,0xa2,0x6d,0x28,0xdc,0xac,0xf1,0x00,0x00,0x00,0x10] 145 vaesenc 268435456(%rcx,%r14,8), %ymm2, %ymm21 146 147// CHECK: vaesenc -536870912(%rcx,%r14,8), %ymm2, %ymm21 148// CHECK: encoding: [0x62,0xa2,0x6d,0x28,0xdc,0xac,0xf1,0x00,0x00,0x00,0xe0] 149 vaesenc -536870912(%rcx,%r14,8), %ymm2, %ymm21 150 151// CHECK: vaesenc -536870910(%rcx,%r14,8), %ymm2, %ymm21 152// CHECK: encoding: [0x62,0xa2,0x6d,0x28,0xdc,0xac,0xf1,0x02,0x00,0x00,0xe0] 153 vaesenc -536870910(%rcx,%r14,8), %ymm2, %ymm21 154 155// CHECK: vaesenclast (%rcx), %ymm2, %ymm21 156// CHECK: encoding: [0x62,0xe2,0x6d,0x28,0xdd,0x29] 157 vaesenclast (%rcx), %ymm2, %ymm21 158 159// CHECK: vaesenclast -128(%rsp), %ymm2, %ymm21 160// CHECK: encoding: [0x62,0xe2,0x6d,0x28,0xdd,0x6c,0x24,0xfc] 161 vaesenclast -128(%rsp), %ymm2, %ymm21 162 163// CHECK: vaesenclast 128(%rsp), %ymm2, %ymm21 164// CHECK: encoding: [0x62,0xe2,0x6d,0x28,0xdd,0x6c,0x24,0x04] 165 vaesenclast 128(%rsp), %ymm2, %ymm21 166 167// CHECK: vaesenclast 268435456(%rcx,%r14,8), %ymm2, %ymm21 168// CHECK: encoding: [0x62,0xa2,0x6d,0x28,0xdd,0xac,0xf1,0x00,0x00,0x00,0x10] 169 vaesenclast 268435456(%rcx,%r14,8), %ymm2, %ymm21 170 171// CHECK: vaesenclast -536870912(%rcx,%r14,8), %ymm2, %ymm21 172// CHECK: encoding: [0x62,0xa2,0x6d,0x28,0xdd,0xac,0xf1,0x00,0x00,0x00,0xe0] 173 vaesenclast -536870912(%rcx,%r14,8), %ymm2, %ymm21 174 175// CHECK: vaesenclast -536870910(%rcx,%r14,8), %ymm2, %ymm21 176// CHECK: encoding: [0x62,0xa2,0x6d,0x28,0xdd,0xac,0xf1,0x02,0x00,0x00,0xe0] 177 vaesenclast -536870910(%rcx,%r14,8), %ymm2, %ymm21 178 179// CHECK: vaesdec (%rcx), %ymm2, %ymm21 180// CHECK: encoding: [0x62,0xe2,0x6d,0x28,0xde,0x29] 181 vaesdec (%rcx), %ymm2, %ymm21 182 183// CHECK: vaesdec -128(%rsp), %ymm2, %ymm21 184// CHECK: encoding: [0x62,0xe2,0x6d,0x28,0xde,0x6c,0x24,0xfc] 185 vaesdec -128(%rsp), %ymm2, %ymm21 186 187// CHECK: vaesdec 128(%rsp), %ymm2, %ymm21 188// CHECK: encoding: [0x62,0xe2,0x6d,0x28,0xde,0x6c,0x24,0x04] 189 vaesdec 128(%rsp), %ymm2, %ymm21 190 191// CHECK: vaesdec 268435456(%rcx,%r14,8), %ymm2, %ymm21 192// CHECK: encoding: [0x62,0xa2,0x6d,0x28,0xde,0xac,0xf1,0x00,0x00,0x00,0x10] 193 vaesdec 268435456(%rcx,%r14,8), %ymm2, %ymm21 194 195// CHECK: vaesdec -536870912(%rcx,%r14,8), %ymm2, %ymm21 196// CHECK: encoding: [0x62,0xa2,0x6d,0x28,0xde,0xac,0xf1,0x00,0x00,0x00,0xe0] 197 vaesdec -536870912(%rcx,%r14,8), %ymm2, %ymm21 198 199// CHECK: vaesdec -536870910(%rcx,%r14,8), %ymm2, %ymm21 200// CHECK: encoding: [0x62,0xa2,0x6d,0x28,0xde,0xac,0xf1,0x02,0x00,0x00,0xe0] 201 vaesdec -536870910(%rcx,%r14,8), %ymm2, %ymm21 202 203// CHECK: vaesdeclast (%rcx), %ymm2, %ymm21 204// CHECK: encoding: [0x62,0xe2,0x6d,0x28,0xdf,0x29] 205 vaesdeclast (%rcx), %ymm2, %ymm21 206 207// CHECK: vaesdeclast -128(%rsp), %ymm2, %ymm21 208// CHECK: encoding: [0x62,0xe2,0x6d,0x28,0xdf,0x6c,0x24,0xfc] 209 vaesdeclast -128(%rsp), %ymm2, %ymm21 210 211// CHECK: vaesdeclast 128(%rsp), %ymm2, %ymm21 212// CHECK: encoding: [0x62,0xe2,0x6d,0x28,0xdf,0x6c,0x24,0x04] 213 vaesdeclast 128(%rsp), %ymm2, %ymm21 214 215// CHECK: vaesdeclast 268435456(%rcx,%r14,8), %ymm2, %ymm21 216// CHECK: encoding: [0x62,0xa2,0x6d,0x28,0xdf,0xac,0xf1,0x00,0x00,0x00,0x10] 217 vaesdeclast 268435456(%rcx,%r14,8), %ymm2, %ymm21 218 219// CHECK: vaesdeclast -536870912(%rcx,%r14,8), %ymm2, %ymm21 220// CHECK: encoding: [0x62,0xa2,0x6d,0x28,0xdf,0xac,0xf1,0x00,0x00,0x00,0xe0] 221 vaesdeclast -536870912(%rcx,%r14,8), %ymm2, %ymm21 222 223// CHECK: vaesdeclast -536870910(%rcx,%r14,8), %ymm2, %ymm21 224// CHECK: encoding: [0x62,0xa2,0x6d,0x28,0xdf,0xac,0xf1,0x02,0x00,0x00,0xe0] 225 vaesdeclast -536870910(%rcx,%r14,8), %ymm2, %ymm21 226 227