1// RUN: llvm-mc -triple i386-unknown-unknown %s | FileCheck %s 2 3# Immediates 4# CHECK: addl $1, %eax 5 addl $1, %eax 6# CHECK: addl $3, %eax 7 addl $(1+2), %eax 8# CHECK: addl $a, %eax 9 addl $a, %eax 10# CHECK: addl $3, %eax 11 addl $1 + 2, %eax 12 13# Disambiguation 14 15# CHECK: addl $1, 8 16 addl $1, 4+4 17# CHECK: addl $1, 8 18 addl $1, (4+4) 19# CHECK: addl $1, 8(%eax) 20 addl $1, 4+4(%eax) 21# CHECK: addl $1, 8(%eax) 22 addl $1, (4+4)(%eax) 23# CHECK: addl $1, 8(%eax) 24 addl $1, 8(%eax) 25# CHECK: addl $1, (%eax) 26 addl $1, (%eax) 27# CHECK: addl $1, 8(,%eax) 28 addl $1, (4+4)(,%eax) 29 30# Indirect Memory Operands 31# CHECK: addl $1, 1(%eax) 32 addl $1, 1(%eax) 33# CHECK: addl $1, 1(%eax,%ebx) 34 addl $1, 1(%eax,%ebx) 35# CHECK: addl $1, 1(%eax,%ebx) 36 addl $1, 1(%eax,%ebx,) 37# CHECK: addl $1, 1(%eax,%ebx,4) 38 addl $1, 1(%eax,%ebx,4) 39# CHECK: addl $1, 1(,%ebx) 40 addl $1, 1(,%ebx) 41# CHECK: addl $1, 1(,%ebx) 42 addl $1, 1(,%ebx,) 43# CHECK: addl $1, 1(,%ebx,4) 44 addl $1, 1(,%ebx,4) 45# CHECK: addl $1, 1(,%ebx,4) 46 addl $1, 1(,%ebx,(2+2)) 47 48# '*' 49# CHECK: calll a 50 call a 51# CHECK: calll *%eax 52 call *%eax 53# CHECK: calll *4(%eax) 54 call *4(%eax) 55foo: 56 calll foo() 57# CHECK: calll foo{{$}} 58 calll foo(,) 59# CHECK: calll foo{{$}} 60 61# CHECK: movl %gs:8, %eax 62movl %gs:8, %eax 63 64