| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364 |
- # 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
|