1 // RUN
: not llvm-mc
-triple i686-unknown-unknown
%s
-o
/dev
/null
2>&1 | FileCheck
%s
5 // Basic case of ambiguity for inc.
8 // CHECK
: error
: ambiguous operand size for instruction
'inc'
14 // Other ambiguous instructions. Anything that doesn
't take a register,
18 // CHECK: error: ambiguous operand size for instruction 'dec'
20 // CHECK: error: ambiguous operand size for instruction 'mov
'
22 // CHECK: error: ambiguous operand size for instruction 'and'
24 // CHECK: error: ambiguous operand size for instruction 'or'
26 // CHECK: error: ambiguous operand size for instruction 'add'
28 // CHECK: error: ambiguous operand size for instruction 'sub'
30 // gas assumes these instructions are pointer-sized by default, and we follow
38 add byte ptr [eax], eax
39 // CHECK: error: invalid operand for instruction
41 add byte ptr [eax], eax
42 // CHECK: error: invalid operand for instruction
45 // CHECK: error: register %rax is only available in 64-bit mode
47 fadd "?half@?0??bar@@YAXXZ@4NA"
48 // CHECK: error: ambiguous operand size for instruction 'fadd'
50 // Instruction line with PTR inside check that they don't accept register as memory.
52 // CHECK
: error
: expected memory operand after
'ptr', found register operand instead
53 // CHECK
: andps xmm1
, xmmword ptr xmm1
54 andps xmm1
, xmmword ptr xmm1
55 // CHECK
: error
: expected memory operand after
'ptr', found register operand instead
56 // CHECK
: andps xmmword ptr xmm1
, xmm1
57 andps xmmword ptr xmm1
, xmm1
58 // CHECK
: error
: expected memory operand after
'ptr', found register operand instead
59 // CHECK
: mov dword ptr eax
, ebx
60 mov dword ptr eax
, ebx