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
37 add byte ptr [eax], eax
38 // CHECK: error: invalid operand for instruction
40 add byte ptr [eax], eax
41 // CHECK: error: invalid operand for instruction
44 // CHECK: error: register %rax is only available in 64-bit mode
46 fadd "?half@?0??bar@@YAXXZ@4NA"
47 // CHECK: error: ambiguous operand size for instruction 'fadd'
49 // Instruction line with PTR inside check that they don't accept register as memory.
51 // CHECK: error: expected memory operand after 'ptr', found register operand instead
52 // CHECK: andps xmm1, xmmword ptr xmm1
53 andps xmm1, xmmword ptr xmm1
54 // CHECK: error: expected memory operand after 'ptr', found register operand instead
55 // CHECK: andps xmmword ptr xmm1, xmm1
56 andps xmmword ptr xmm1, xmm1
57 // CHECK: error: expected memory operand after 'ptr', found register operand instead
58 // CHECK: mov dword ptr eax, ebx
59 mov dword ptr eax, ebx