1// RUN: not llvm-mc -triple=amdgcn -mcpu=gfx900 -show-encoding %s | FileCheck %s --check-prefix=GFX9 2// RUN: not llvm-mc -triple=amdgcn -mcpu=gfx1010 -show-encoding %s | FileCheck %s --check-prefix=GFX10 3 4// RUN: not llvm-mc -triple=amdgcn -mcpu=gfx900 %s 2>&1 | FileCheck %s -check-prefix=NOGFX9 --implicit-check-not=error: 5// RUN: not llvm-mc -triple=amdgcn -mcpu=gfx1010 %s 2>&1 | FileCheck %s -check-prefix=NOGFX10 --implicit-check-not=error: 6 7//===----------------------------------------------------------------------===// 8// Inline constants 9//===----------------------------------------------------------------------===// 10 11v_pk_add_f16 v1, 0, v2 12// GFX9: v_pk_add_f16 v1, 0, v2 ; encoding: [0x01,0x40,0x8f,0xd3,0x80,0x04,0x02,0x18] 13// GFX10: v_pk_add_f16 v1, 0, v2 ; encoding: [0x01,0x40,0x0f,0xcc,0x80,0x04,0x02,0x18] 14 15v_pk_add_f16 v1, 0.0, v2 16// GFX9: v_pk_add_f16 v1, 0, v2 ; encoding: [0x01,0x40,0x8f,0xd3,0x80,0x04,0x02,0x18] 17// GFX10: v_pk_add_f16 v1, 0, v2 ; encoding: [0x01,0x40,0x0f,0xcc,0x80,0x04,0x02,0x18] 18 19v_pk_add_f16 v1, v2, 0 20// GFX9: v_pk_add_f16 v1, v2, 0 ; encoding: [0x01,0x40,0x8f,0xd3,0x02,0x01,0x01,0x18] 21// GFX10: v_pk_add_f16 v1, v2, 0 ; encoding: [0x01,0x40,0x0f,0xcc,0x02,0x01,0x01,0x18] 22 23v_pk_add_f16 v1, v2, 0.0 24// GFX9: v_pk_add_f16 v1, v2, 0 ; encoding: [0x01,0x40,0x8f,0xd3,0x02,0x01,0x01,0x18] 25// GFX10: v_pk_add_f16 v1, v2, 0 ; encoding: [0x01,0x40,0x0f,0xcc,0x02,0x01,0x01,0x18] 26 27v_pk_add_f16 v1, 1.0, v2 28// GFX9: v_pk_add_f16 v1, 1.0, v2 ; encoding: [0x01,0x40,0x8f,0xd3,0xf2,0x04,0x02,0x18] 29// GFX10: v_pk_add_f16 v1, 1.0, v2 ; encoding: [0x01,0x40,0x0f,0xcc,0xf2,0x04,0x02,0x18] 30 31v_pk_add_f16 v1, -1.0, v2 32// GFX9: v_pk_add_f16 v1, -1.0, v2 ; encoding: [0x01,0x40,0x8f,0xd3,0xf3,0x04,0x02,0x18] 33// GFX10: v_pk_add_f16 v1, -1.0, v2 ; encoding: [0x01,0x40,0x0f,0xcc,0xf3,0x04,0x02,0x18] 34 35v_pk_add_f16 v1, -0.5, v2 36// GFX9: v_pk_add_f16 v1, -0.5, v2 ; encoding: [0x01,0x40,0x8f,0xd3,0xf1,0x04,0x02,0x18] 37// GFX10: v_pk_add_f16 v1, -0.5, v2 ; encoding: [0x01,0x40,0x0f,0xcc,0xf1,0x04,0x02,0x18] 38 39v_pk_add_f16 v1, 0.5, v2 40// GFX9: v_pk_add_f16 v1, 0.5, v2 ; encoding: [0x01,0x40,0x8f,0xd3,0xf0,0x04,0x02,0x18] 41// GFX10: v_pk_add_f16 v1, 0.5, v2 ; encoding: [0x01,0x40,0x0f,0xcc,0xf0,0x04,0x02,0x18] 42 43v_pk_add_f16 v1, 2.0, v2 44// GFX9: v_pk_add_f16 v1, 2.0, v2 ; encoding: [0x01,0x40,0x8f,0xd3,0xf4,0x04,0x02,0x18] 45// GFX10: v_pk_add_f16 v1, 2.0, v2 ; encoding: [0x01,0x40,0x0f,0xcc,0xf4,0x04,0x02,0x18] 46 47v_pk_add_f16 v1, -2.0, v2 48// GFX9: v_pk_add_f16 v1, -2.0, v2 ; encoding: [0x01,0x40,0x8f,0xd3,0xf5,0x04,0x02,0x18] 49// GFX10: v_pk_add_f16 v1, -2.0, v2 ; encoding: [0x01,0x40,0x0f,0xcc,0xf5,0x04,0x02,0x18] 50 51v_pk_add_f16 v1, 4.0, v2 52// GFX9: v_pk_add_f16 v1, 4.0, v2 ; encoding: [0x01,0x40,0x8f,0xd3,0xf6,0x04,0x02,0x18] 53// GFX10: v_pk_add_f16 v1, 4.0, v2 ; encoding: [0x01,0x40,0x0f,0xcc,0xf6,0x04,0x02,0x18] 54 55v_pk_add_f16 v1, -4.0, v2 56// GFX9: v_pk_add_f16 v1, -4.0, v2 ; encoding: [0x01,0x40,0x8f,0xd3,0xf7,0x04,0x02,0x18] 57// GFX10: v_pk_add_f16 v1, -4.0, v2 ; encoding: [0x01,0x40,0x0f,0xcc,0xf7,0x04,0x02,0x18] 58 59v_pk_add_f16 v1, 0.15915494, v2 60// GFX9: v_pk_add_f16 v1, 0.15915494, v2 ; encoding: [0x01,0x40,0x8f,0xd3,0xf8,0x04,0x02,0x18] 61// GFX10: v_pk_add_f16 v1, 0.15915494, v2 ; encoding: [0x01,0x40,0x0f,0xcc,0xf8,0x04,0x02,0x18] 62 63v_pk_add_f16 v1, -1, v2 64// GFX9: v_pk_add_f16 v1, -1, v2 ; encoding: [0x01,0x40,0x8f,0xd3,0xc1,0x04,0x02,0x18] 65// GFX10: v_pk_add_f16 v1, -1, v2 ; encoding: [0x01,0x40,0x0f,0xcc,0xc1,0x04,0x02,0x18] 66 67v_pk_add_f16 v1, -2, v2 68// GFX9: v_pk_add_f16 v1, -2, v2 ; encoding: [0x01,0x40,0x8f,0xd3,0xc2,0x04,0x02,0x18] 69// GFX10: v_pk_add_f16 v1, -2, v2 ; encoding: [0x01,0x40,0x0f,0xcc,0xc2,0x04,0x02,0x18] 70 71v_pk_add_f16 v1, -3, v2 72// GFX9: v_pk_add_f16 v1, -3, v2 ; encoding: [0x01,0x40,0x8f,0xd3,0xc3,0x04,0x02,0x18] 73// GFX10: v_pk_add_f16 v1, -3, v2 ; encoding: [0x01,0x40,0x0f,0xcc,0xc3,0x04,0x02,0x18] 74 75v_pk_add_f16 v1, -16, v2 76// GFX9: v_pk_add_f16 v1, -16, v2 ; encoding: [0x01,0x40,0x8f,0xd3,0xd0,0x04,0x02,0x18] 77// GFX10: v_pk_add_f16 v1, -16, v2 ; encoding: [0x01,0x40,0x0f,0xcc,0xd0,0x04,0x02,0x18] 78 79v_pk_add_f16 v1, 1, v2 80// GFX9: v_pk_add_f16 v1, 1, v2 ; encoding: [0x01,0x40,0x8f,0xd3,0x81,0x04,0x02,0x18] 81// GFX10: v_pk_add_f16 v1, 1, v2 ; encoding: [0x01,0x40,0x0f,0xcc,0x81,0x04,0x02,0x18] 82 83v_pk_add_f16 v1, 2, v2 84// GFX9: v_pk_add_f16 v1, 2, v2 ; encoding: [0x01,0x40,0x8f,0xd3,0x82,0x04,0x02,0x18] 85// GFX10: v_pk_add_f16 v1, 2, v2 ; encoding: [0x01,0x40,0x0f,0xcc,0x82,0x04,0x02,0x18] 86 87v_pk_add_f16 v1, 3, v2 88// GFX9: v_pk_add_f16 v1, 3, v2 ; encoding: [0x01,0x40,0x8f,0xd3,0x83,0x04,0x02,0x18] 89// GFX10: v_pk_add_f16 v1, 3, v2 ; encoding: [0x01,0x40,0x0f,0xcc,0x83,0x04,0x02,0x18] 90 91v_pk_add_f16 v1, 4, v2 92// GFX9: v_pk_add_f16 v1, 4, v2 ; encoding: [0x01,0x40,0x8f,0xd3,0x84,0x04,0x02,0x18] 93// GFX10: v_pk_add_f16 v1, 4, v2 ; encoding: [0x01,0x40,0x0f,0xcc,0x84,0x04,0x02,0x18] 94 95v_pk_add_f16 v1, 15, v2 96// GFX9: v_pk_add_f16 v1, 15, v2 ; encoding: [0x01,0x40,0x8f,0xd3,0x8f,0x04,0x02,0x18] 97// GFX10: v_pk_add_f16 v1, 15, v2 ; encoding: [0x01,0x40,0x0f,0xcc,0x8f,0x04,0x02,0x18] 98 99v_pk_add_f16 v1, 16, v2 100// GFX9: v_pk_add_f16 v1, 16, v2 ; encoding: [0x01,0x40,0x8f,0xd3,0x90,0x04,0x02,0x18] 101// GFX10: v_pk_add_f16 v1, 16, v2 ; encoding: [0x01,0x40,0x0f,0xcc,0x90,0x04,0x02,0x18] 102 103v_pk_add_f16 v1, 63, v2 104// GFX9: v_pk_add_f16 v1, 63, v2 ; encoding: [0x01,0x40,0x8f,0xd3,0xbf,0x04,0x02,0x18] 105// GFX10: v_pk_add_f16 v1, 63, v2 ; encoding: [0x01,0x40,0x0f,0xcc,0xbf,0x04,0x02,0x18] 106 107v_pk_add_f16 v1, 64, v2 108// GFX9: v_pk_add_f16 v1, 64, v2 ; encoding: [0x01,0x40,0x8f,0xd3,0xc0,0x04,0x02,0x18] 109// GFX10: v_pk_add_f16 v1, 64, v2 ; encoding: [0x01,0x40,0x0f,0xcc,0xc0,0x04,0x02,0x18] 110 111v_pk_add_f16 v1, 0x0001, v2 112// GFX9: v_pk_add_f16 v1, 1, v2 ; encoding: [0x01,0x40,0x8f,0xd3,0x81,0x04,0x02,0x18] 113// GFX10: v_pk_add_f16 v1, 1, v2 ; encoding: [0x01,0x40,0x0f,0xcc,0x81,0x04,0x02,0x18] 114 115v_pk_add_f16 v1, 0xffff, v2 116// NOGFX9: :[[@LINE-1]]:{{[0-9]+}}: error: literal operands are not supported 117// GFX10: v_pk_add_f16 v1, 0xffff, v2 ; encoding: [0x01,0x40,0x0f,0xcc,0xff,0x04,0x02,0x18,0xff,0xff,0x00,0x00] 118 119v_pk_add_f16 v1, 0xffffffff, v2 120// GFX9: v_pk_add_f16 v1, -1, v2 ; encoding: [0x01,0x40,0x8f,0xd3,0xc1,0x04,0x02,0x18] 121// GFX10: v_pk_add_f16 v1, -1, v2 ; encoding: [0x01,0x40,0x0f,0xcc,0xc1,0x04,0x02,0x18] 122 123v_pk_add_f16 v1, 0x3c00, v2 124// GFX9: v_pk_add_f16 v1, 1.0, v2 ; encoding: [0x01,0x40,0x8f,0xd3,0xf2,0x04,0x02,0x18] 125// GFX10: v_pk_add_f16 v1, 1.0, v2 ; encoding: [0x01,0x40,0x0f,0xcc,0xf2,0x04,0x02,0x18] 126 127v_pk_add_f16 v1, 0xbc00, v2 128// GFX9: v_pk_add_f16 v1, -1.0, v2 ; encoding: [0x01,0x40,0x8f,0xd3,0xf3,0x04,0x02,0x18] 129// GFX10: v_pk_add_f16 v1, -1.0, v2 ; encoding: [0x01,0x40,0x0f,0xcc,0xf3,0x04,0x02,0x18] 130 131v_pk_add_f16 v1, 0x3800, v2 132// GFX9: v_pk_add_f16 v1, 0.5, v2 ; encoding: [0x01,0x40,0x8f,0xd3,0xf0,0x04,0x02,0x18] 133// GFX10: v_pk_add_f16 v1, 0.5, v2 ; encoding: [0x01,0x40,0x0f,0xcc,0xf0,0x04,0x02,0x18] 134 135v_pk_add_f16 v1, 0xb800, v2 136// GFX9: v_pk_add_f16 v1, -0.5, v2 ; encoding: [0x01,0x40,0x8f,0xd3,0xf1,0x04,0x02,0x18] 137// GFX10: v_pk_add_f16 v1, -0.5, v2 ; encoding: [0x01,0x40,0x0f,0xcc,0xf1,0x04,0x02,0x18] 138 139v_pk_add_f16 v1, 0x4000, v2 140// GFX9: v_pk_add_f16 v1, 2.0, v2 ; encoding: [0x01,0x40,0x8f,0xd3,0xf4,0x04,0x02,0x18] 141// GFX10: v_pk_add_f16 v1, 2.0, v2 ; encoding: [0x01,0x40,0x0f,0xcc,0xf4,0x04,0x02,0x18] 142 143v_pk_add_f16 v1, 0xc000, v2 144// GFX9: v_pk_add_f16 v1, -2.0, v2 ; encoding: [0x01,0x40,0x8f,0xd3,0xf5,0x04,0x02,0x18] 145// GFX10: v_pk_add_f16 v1, -2.0, v2 ; encoding: [0x01,0x40,0x0f,0xcc,0xf5,0x04,0x02,0x18] 146 147v_pk_add_f16 v1, 0x4400, v2 148// GFX9: v_pk_add_f16 v1, 4.0, v2 ; encoding: [0x01,0x40,0x8f,0xd3,0xf6,0x04,0x02,0x18] 149// GFX10: v_pk_add_f16 v1, 4.0, v2 ; encoding: [0x01,0x40,0x0f,0xcc,0xf6,0x04,0x02,0x18] 150 151v_pk_add_f16 v1, 0xc400, v2 152// GFX9: v_pk_add_f16 v1, -4.0, v2 ; encoding: [0x01,0x40,0x8f,0xd3,0xf7,0x04,0x02,0x18] 153// GFX10: v_pk_add_f16 v1, -4.0, v2 ; encoding: [0x01,0x40,0x0f,0xcc,0xf7,0x04,0x02,0x18] 154 155v_pk_add_f16 v1, 0x3118, v2 156// GFX9: v_pk_add_f16 v1, 0.15915494, v2 ; encoding: [0x01,0x40,0x8f,0xd3,0xf8,0x04,0x02,0x18] 157// GFX10: v_pk_add_f16 v1, 0.15915494, v2 ; encoding: [0x01,0x40,0x0f,0xcc,0xf8,0x04,0x02,0x18] 158 159v_pk_add_f16 v1, 65535, v2 160// NOGFX9: :[[@LINE-1]]:{{[0-9]+}}: error: literal operands are not supported 161// GFX10: v_pk_add_f16 v1, 0xffff, v2 ; encoding: [0x01,0x40,0x0f,0xcc,0xff,0x04,0x02,0x18,0xff,0xff,0x00,0x00] 162 163v_pk_add_f16 v1, 4294967295, v2 164// GFX9: v_pk_add_f16 v1, -1, v2 ; encoding: [0x01,0x40,0x8f,0xd3,0xc1,0x04,0x02,0x18] 165// GFX10: v_pk_add_f16 v1, -1, v2 ; encoding: [0x01,0x40,0x0f,0xcc,0xc1,0x04,0x02,0x18] 166 167//===----------------------------------------------------------------------===// 168// Integer literals 169//===----------------------------------------------------------------------===// 170 171v_pk_add_f16 v5, v1, 0x12345678 172// NOGFX9: :[[@LINE-1]]:{{[0-9]+}}: error: literal operands are not supported 173// GFX10: v_pk_add_f16 v5, v1, 0x12345678 ; encoding: [0x05,0x40,0x0f,0xcc,0x01,0xff,0x01,0x18,0x78,0x56,0x34,0x12] 174 175v_pk_add_f16 v5, 0x12345678, v2 176// NOGFX9: :[[@LINE-1]]:{{[0-9]+}}: error: literal operands are not supported 177// GFX10: v_pk_add_f16 v5, 0x12345678, v2 ; encoding: [0x05,0x40,0x0f,0xcc,0xff,0x04,0x02,0x18,0x78,0x56,0x34,0x12] 178 179v_pk_add_f16 v5, -256, v2 180// NOGFX9: :[[@LINE-1]]:{{[0-9]+}}: error: literal operands are not supported 181// GFX10: v_pk_add_f16 v5, 0xffffff00, v2 ; encoding: [0x05,0x40,0x0f,0xcc,0xff,0x04,0x02,0x18,0x00,0xff,0xff,0xff] 182 183v_pk_add_f16 v5, v1, 256 184// NOGFX9: :[[@LINE-1]]:{{[0-9]+}}: error: literal operands are not supported 185// GFX10: v_pk_add_f16 v5, v1, 0x100 ; encoding: [0x05,0x40,0x0f,0xcc,0x01,0xff,0x01,0x18,0x00,0x01,0x00,0x00] 186 187v_pk_add_u16 v5, v1, 0x12345678 188// NOGFX9: :[[@LINE-1]]:{{[0-9]+}}: error: literal operands are not supported 189// GFX10: v_pk_add_u16 v5, v1, 0x12345678 ; encoding: [0x05,0x40,0x0a,0xcc,0x01,0xff,0x01,0x18,0x78,0x56,0x34,0x12] 190 191v_pk_add_u16 v5, 0x12345678, v2 192// NOGFX9: :[[@LINE-1]]:{{[0-9]+}}: error: literal operands are not supported 193// GFX10: v_pk_add_u16 v5, 0x12345678, v2 ; encoding: [0x05,0x40,0x0a,0xcc,0xff,0x04,0x02,0x18,0x78,0x56,0x34,0x12] 194 195v_pk_add_u16 v5, -256, v2 196// NOGFX9: :[[@LINE-1]]:{{[0-9]+}}: error: literal operands are not supported 197// GFX10: v_pk_add_u16 v5, 0xffffff00, v2 ; encoding: [0x05,0x40,0x0a,0xcc,0xff,0x04,0x02,0x18,0x00,0xff,0xff,0xff] 198 199v_pk_add_u16 v5, v1, 256 200// NOGFX9: :[[@LINE-1]]:{{[0-9]+}}: error: literal operands are not supported 201// GFX10: v_pk_add_u16 v5, v1, 0x100 ; encoding: [0x05,0x40,0x0a,0xcc,0x01,0xff,0x01,0x18,0x00,0x01,0x00,0x00] 202 203v_pk_add_f16 v5, v1, 0x123456780 204// NOGFX9: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 205// NOGFX10: :[[@LINE-2]]:{{[0-9]+}}: error: invalid operand for instruction 206 207v_pk_add_u16 v5, v1, 0x123456780 208// NOGFX9: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 209// NOGFX10: :[[@LINE-2]]:{{[0-9]+}}: error: invalid operand for instruction 210 211v_pk_fma_f16 v5, 0xaf123456, v2, v3 212// NOGFX9: :[[@LINE-1]]:{{[0-9]+}}: error: literal operands are not supported 213// GFX10: v_pk_fma_f16 v5, 0xaf123456, v2, v3 ; encoding: [0x05,0x40,0x0e,0xcc,0xff,0x04,0x0e,0x1c,0x56,0x34,0x12,0xaf] 214 215v_pk_fma_f16 v5, v1, 0xaf123456, v3 216// NOGFX9: :[[@LINE-1]]:{{[0-9]+}}: error: literal operands are not supported 217// GFX10: v_pk_fma_f16 v5, v1, 0xaf123456, v3 ; encoding: [0x05,0x40,0x0e,0xcc,0x01,0xff,0x0d,0x1c,0x56,0x34,0x12,0xaf] 218 219v_pk_fma_f16 v5, v1, v2, 0xaf123456 220// NOGFX9: :[[@LINE-1]]:{{[0-9]+}}: error: literal operands are not supported 221// GFX10: v_pk_fma_f16 v5, v1, v2, 0xaf123456 ; encoding: [0x05,0x40,0x0e,0xcc,0x01,0x05,0xfe,0x1b,0x56,0x34,0x12,0xaf] 222 223v_pk_mad_i16 v5, 0xaf123456, v2, v3 224// NOGFX9: :[[@LINE-1]]:{{[0-9]+}}: error: literal operands are not supported 225// GFX10: v_pk_mad_i16 v5, 0xaf123456, v2, v3 ; encoding: [0x05,0x40,0x00,0xcc,0xff,0x04,0x0e,0x1c,0x56,0x34,0x12,0xaf] 226 227v_pk_mad_i16 v5, v1, 0xaf123456, v3 228// NOGFX9: :[[@LINE-1]]:{{[0-9]+}}: error: literal operands are not supported 229// GFX10: v_pk_mad_i16 v5, v1, 0xaf123456, v3 ; encoding: [0x05,0x40,0x00,0xcc,0x01,0xff,0x0d,0x1c,0x56,0x34,0x12,0xaf] 230 231v_pk_mad_i16 v5, v1, v2, 0xaf123456 232// NOGFX9: :[[@LINE-1]]:{{[0-9]+}}: error: literal operands are not supported 233// GFX10: v_pk_mad_i16 v5, v1, v2, 0xaf123456 ; encoding: [0x05,0x40,0x00,0xcc,0x01,0x05,0xfe,0x1b,0x56,0x34,0x12,0xaf] 234 235v_pk_ashrrev_i16 v5, 0x12345678, v2 236// NOGFX9: :[[@LINE-1]]:{{[0-9]+}}: error: literal operands are not supported 237// GFX10: v_pk_ashrrev_i16 v5, 0x12345678, v2 ; encoding: [0x05,0x40,0x06,0xcc,0xff,0x04,0x02,0x18,0x78,0x56,0x34,0x12] 238 239v_pk_ashrrev_i16 v5, v1, 0x12345678 240// NOGFX9: :[[@LINE-1]]:{{[0-9]+}}: error: literal operands are not supported 241// GFX10: v_pk_ashrrev_i16 v5, v1, 0x12345678 ; encoding: [0x05,0x40,0x06,0xcc,0x01,0xff,0x01,0x18,0x78,0x56,0x34,0x12] 242 243//===----------------------------------------------------------------------===// 244// Floating-point literals (allowed if lossless conversion to f16 is possible) 245//===----------------------------------------------------------------------===// 246 247v_pk_add_f16 v5, v1, 0.1234 248// NOGFX9: :[[@LINE-1]]:{{[0-9]+}}: error: literal operands are not supported 249// GFX10: v_pk_add_f16 v5, v1, 0x2fe6 ; encoding: [0x05,0x40,0x0f,0xcc,0x01,0xff,0x01,0x18,0xe6,0x2f,0x00,0x00] 250 251v_pk_add_u16 v5, v1, 0.1234 252// NOGFX9: :[[@LINE-1]]:{{[0-9]+}}: error: literal operands are not supported 253// GFX10: v_pk_add_u16 v5, v1, 0x3dfcb924 ; encoding: [0x05,0x40,0x0a,0xcc,0x01,0xff,0x01,0x18,0x24,0xb9,0xfc,0x3d] 254 255v_pk_fma_f16 v5, 0.1234, v2, v3 256// NOGFX9: :[[@LINE-1]]:{{[0-9]+}}: error: literal operands are not supported 257// GFX10: v_pk_fma_f16 v5, 0x2fe6, v2, v3 ; encoding: [0x05,0x40,0x0e,0xcc,0xff,0x04,0x0e,0x1c,0xe6,0x2f,0x00,0x00] 258 259v_pk_fma_f16 v5, v1, 0.1234, v3 260// NOGFX9: :[[@LINE-1]]:{{[0-9]+}}: error: literal operands are not supported 261// GFX10: v_pk_fma_f16 v5, v1, 0x2fe6, v3 ; encoding: [0x05,0x40,0x0e,0xcc,0x01,0xff,0x0d,0x1c,0xe6,0x2f,0x00,0x00] 262 263v_pk_fma_f16 v5, v1, v2, 0.1234 264// NOGFX9: :[[@LINE-1]]:{{[0-9]+}}: error: literal operands are not supported 265// GFX10: v_pk_fma_f16 v5, v1, v2, 0x2fe6 ; encoding: [0x05,0x40,0x0e,0xcc,0x01,0x05,0xfe,0x1b,0xe6,0x2f,0x00,0x00] 266 267v_pk_mad_i16 v5, 0.1234, v2, v3 268// NOGFX9: :[[@LINE-1]]:{{[0-9]+}}: error: literal operands are not supported 269// GFX10: v_pk_mad_i16 v5, 0x3dfcb924, v2, v3 ; encoding: [0x05,0x40,0x00,0xcc,0xff,0x04,0x0e,0x1c,0x24,0xb9,0xfc,0x3d] 270 271v_pk_mad_i16 v5, v1, 0.1234, v3 272// NOGFX9: :[[@LINE-1]]:{{[0-9]+}}: error: literal operands are not supported 273// GFX10: v_pk_mad_i16 v5, v1, 0x3dfcb924, v3 ; encoding: [0x05,0x40,0x00,0xcc,0x01,0xff,0x0d,0x1c,0x24,0xb9,0xfc,0x3d] 274 275v_pk_mad_i16 v5, v1, v2, 0.1234 276// NOGFX9: :[[@LINE-1]]:{{[0-9]+}}: error: literal operands are not supported 277// GFX10: v_pk_mad_i16 v5, v1, v2, 0x3dfcb924 ; encoding: [0x05,0x40,0x00,0xcc,0x01,0x05,0xfe,0x1b,0x24,0xb9,0xfc,0x3d] 278 279v_pk_add_f16 v5, v1, 123456.0 280// NOGFX9: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 281// NOGFX10: :[[@LINE-2]]:{{[0-9]+}}: error: invalid operand for instruction 282 283v_pk_add_u16 v5, v1, 123456.0 284// NOGFX9: :[[@LINE-1]]:{{[0-9]+}}: error: literal operands are not supported 285// GFX10: v_pk_add_u16 v5, v1, 0x47f12000 ; encoding: [0x05,0x40,0x0a,0xcc,0x01,0xff,0x01,0x18,0x00,0x20,0xf1,0x47] 286 287//===----------------------------------------------------------------------===// 288// Packed VOP2 289//===----------------------------------------------------------------------===// 290 291// FIXME: v_pk_fmac_f16 cannot be promoted to VOP3 so '_e32' suffix is not valid 292v_pk_fmac_f16 v5, 0x12345678, v2 293// NOGFX9: :[[@LINE-1]]:{{[0-9]+}}: error: instruction not supported on this GPU 294// GFX10: v_pk_fmac_f16 v5, 0x12345678, v2 ; encoding: [0xff,0x04,0x0a,0x78,0x78,0x56,0x34,0x12] 295