1// RUN: not llvm-mc -arch=amdgcn -show-encoding %s 2>&1 | FileCheck %s --check-prefix=GFX67 --check-prefix=GCN
2// RUN: not llvm-mc -arch=amdgcn -mcpu=tahiti -show-encoding %s 2>&1 | FileCheck %s --check-prefix=GFX67 --check-prefix=GCN
3// RUN: not llvm-mc -arch=amdgcn -mcpu=fiji -show-encoding %s 2>&1 | FileCheck %s --check-prefix=GFX89 --check-prefix=GCN
4// RUN: not llvm-mc -arch=amdgcn -mcpu=gfx900 -show-encoding %s 2>&1 | FileCheck %s --check-prefix=GFX89 --check-prefix=GCN
5
6v_add_f32_e64 v0, v1
7// GCN: error: too few operands for instruction
8
9v_div_scale_f32  v24, vcc, v22, 1.1, v22
10// GCN: error: invalid literal operand
11
12v_mqsad_u32_u8 v[0:3], s[2:3], v4, v[0:3]
13// GFX67: error: instruction not supported on this GPU
14// GFX89: error: destination must be different than all sources
15
16v_mqsad_pk_u16_u8 v[0:1], v[1:2], v9, v[4:5]
17// GCN: error: destination must be different than all sources
18
19v_mqsad_pk_u16_u8 v[1:2], v[1:2], v9, v[4:5]
20// GCN: error: destination must be different than all sources
21
22v_mqsad_pk_u16_u8 v[2:3], v[1:2], v9, v[4:5]
23// GCN: error: destination must be different than all sources
24
25v_mqsad_pk_u16_u8 v[3:4], v[0:1], v9, v[4:5]
26// GCN: error: destination must be different than all sources
27
28v_mqsad_pk_u16_u8 v[4:5], v[1:2], v9, v[4:5]
29// GCN: error: destination must be different than all sources
30
31v_mqsad_pk_u16_u8 v[5:6], v[1:2], v9, v[4:5]
32// GCN: error: destination must be different than all sources
33
34v_mqsad_pk_u16_u8 v[8:9], v[1:2], v9, v[4:5]
35// GCN: error: destination must be different than all sources
36
37v_mqsad_pk_u16_u8 v[9:10], v[1:2], v9, v[4:5]
38// GCN: error: destination must be different than all sources
39
40v_cmp_eq_f32_e64 vcc, v0, v1 mul:2
41// GCN: error: invalid operand for instruction
42
43v_cmp_le_f64_e64 vcc, v0, v1 mul:4
44// GCN: error: invalid operand for instruction
45
46v_cvt_u32_f32_e64 v0, v1 div:2
47// GCN: error: invalid operand for instruction
48
49//
50// mul
51//
52
53v_cvt_f64_i32 v[5:6], s1 mul:3
54// GCN: error: invalid mul value.
55
56//
57// v_interp*
58//
59
60v_interp_mov_f32_e64 v5, p10, attr0.x high
61// GCN: error: invalid operand for instruction
62
63v_interp_mov_f32_e64 v5, p10, attr0.x v0
64// GCN: error: invalid operand for instruction
65
66v_interp_p1_f32_e64 v5, v2, attr0.x high
67// GCN: error: invalid operand for instruction
68
69v_interp_p1_f32_e64 v5, v2, attr0.x v0
70// GCN: error: invalid operand for instruction
71
72v_interp_p2_f32_e64 v255, v2, attr0.x high
73// GCN: error: invalid operand for instruction
74
75v_interp_p2_f32_e64 v255, v2, attr0.x v0
76// GCN: error: invalid operand for instruction
77
78v_interp_p1ll_f16 v5, p0, attr31.x
79// GCN: error: invalid operand for instruction
80
81v_interp_p1ll_f16 v5, v2, attr31.x v0
82// GCN: error: invalid operand for instruction
83
84v_interp_p2_f16 v5, v2, attr1.x, v3 mul:2
85// GFX67: error: not a valid operand
86// GFX89: error: invalid operand for instruction
87