[ARM] Better OR's for MVE compares
[llvm-core.git] / test / MC / AsmParser / vararg.s
blobdae81dfb78cee44e974fa21f4b189ca173e95302
1 // RUN: llvm-mc -triple x86_64-linux-gnu %s | FileCheck %s
2 .macro ifcc arg:vararg
3 .if cc
4 \arg
5 .endif
6 .endm
8 .macro ifcc2 arg0 arg1:vararg
9 .if cc
10 movl \arg0, \arg1
11 .endif
12 .endm
14 .macro ifcc3 arg0, arg1:vararg
15 .if cc
16 movl \arg0, \arg1
17 .endif
18 .endm
20 .macro ifcc4 arg0, arg1:vararg
21 .if cc
22 movl \arg1, \arg0
23 .endif
24 .endm
26 .text
28 // CHECK: movl %esp, %ebp
29 // CHECK: subl $0, %esp
30 // CHECK: movl %eax, %ebx
31 // CHECK: movl %ecx, %ebx
32 // CHECK: movl %ecx, %eax
33 // CHECK: movl %eax, %ecx
34 // CHECK: movl %ecx, %eax
35 // CHECK: movl %eax, %ecx
36 .set cc,1
37 ifcc movl %esp, %ebp
38 subl $0, %esp
40 ifcc2 %eax %ebx
41 ifcc2 %ecx, %ebx
42 ifcc3 %ecx %eax
43 ifcc3 %eax, %ecx
44 ifcc4 %eax %ecx ## test
45 ifcc4 %ecx, %eax ## test
47 // CHECK-NOT: movl
48 // CHECK: subl $1, %esp
49 .set cc,0
50 ifcc movl %esp, %ebp
51 subl $1, %esp