# RUN: llvm-mc -triple i386-unknown-unknown %s | FileCheck %s .macro A add $1\@, %eax .endm .macro B sub $1\@, %eax .endm A # CHECK: addl $10, %eax A # CHECK: addl $11, %eax B # CHECK: subl $12, %eax B # CHECK: subl $13, %eax # The following uses of \@ are undocumented, but valid: .irpc foo,234 add $\foo\@, %eax .endr # CHECK: addl $24, %eax # CHECK: addl $34, %eax # CHECK: addl $44, %eax .irp reg,%eax,%ebx sub $2\@, \reg .endr # CHECK: subl $24, %eax # CHECK: subl $24, %ebx # Test that .irp(c) and .rep(t) do not increase \@. # Only the use of A should increase \@, so we can test that it increases by 1 # each time. .irpc foo,123 sub $\foo, %eax .endr A # CHECK: addl $14, %eax .irp reg,%eax,%ebx sub $4, \reg .endr A # CHECK: addl $15, %eax .rept 2 sub $5, %eax .endr A # CHECK: addl $16, %eax .rep 3 sub $6, %eax .endr A # CHECK: addl $17, %eax