xref: /minix3/external/bsd/llvm/dist/llvm/test/MC/AsmParser/macros-argument-parsing.s (revision 0a6a1f1d05b60e214de2f05a7310ddd1f0e590e7)
1*0a6a1f1dSLionel Sambuc# RUN: llvm-mc -triple i386 -filetype asm -o - %s | FileCheck %s
2*0a6a1f1dSLionel Sambuc
3*0a6a1f1dSLionel Sambuc	.macro	it, cond
4*0a6a1f1dSLionel Sambuc	.endm
5*0a6a1f1dSLionel Sambuc
6*0a6a1f1dSLionel Sambuc	it ne
7*0a6a1f1dSLionel Sambuc	.long 1
8*0a6a1f1dSLionel Sambuc
9*0a6a1f1dSLionel Sambuc# CHECK: .long 1
10*0a6a1f1dSLionel Sambuc
11*0a6a1f1dSLionel Sambuc	.macro double first = -1, second = -1
12*0a6a1f1dSLionel Sambuc		# begin entry
13*0a6a1f1dSLionel Sambuc		.long \first
14*0a6a1f1dSLionel Sambuc		.long \second
15*0a6a1f1dSLionel Sambuc		# end entry
16*0a6a1f1dSLionel Sambuc	.endm
17*0a6a1f1dSLionel Sambuc
18*0a6a1f1dSLionel Sambuc	double
19*0a6a1f1dSLionel Sambuc# CHECK: .long -1
20*0a6a1f1dSLionel Sambuc# CHECK: .long -1
21*0a6a1f1dSLionel Sambuc
22*0a6a1f1dSLionel Sambuc	double 1
23*0a6a1f1dSLionel Sambuc# CHECK: .long 1
24*0a6a1f1dSLionel Sambuc# CHECK: .long -1
25*0a6a1f1dSLionel Sambuc
26*0a6a1f1dSLionel Sambuc	double 2, 3
27*0a6a1f1dSLionel Sambuc# CHECK: .long 2
28*0a6a1f1dSLionel Sambuc# CHECK: .long 3
29*0a6a1f1dSLionel Sambuc
30*0a6a1f1dSLionel Sambuc	double , 4
31*0a6a1f1dSLionel Sambuc# CHECK: .long -1
32*0a6a1f1dSLionel Sambuc# CHECK: .long 4
33*0a6a1f1dSLionel Sambuc
34*0a6a1f1dSLionel Sambuc	double 5, second = 6
35*0a6a1f1dSLionel Sambuc# CHECK: .long 5
36*0a6a1f1dSLionel Sambuc# CHECK: .long 6
37*0a6a1f1dSLionel Sambuc
38*0a6a1f1dSLionel Sambuc	double first = 7
39*0a6a1f1dSLionel Sambuc# CHECK: .long 7
40*0a6a1f1dSLionel Sambuc# CHECK: .long -1
41*0a6a1f1dSLionel Sambuc
42*0a6a1f1dSLionel Sambuc	double second = 8
43*0a6a1f1dSLionel Sambuc# CHECK: .long -1
44*0a6a1f1dSLionel Sambuc# CHECK: .long 8
45*0a6a1f1dSLionel Sambuc
46*0a6a1f1dSLionel Sambuc	double second = 9, first = 10
47*0a6a1f1dSLionel Sambuc# CHECK: .long 10
48*0a6a1f1dSLionel Sambuc# CHECK: .long 9
49*0a6a1f1dSLionel Sambuc
50*0a6a1f1dSLionel Sambuc	double second + 11
51*0a6a1f1dSLionel Sambuc# CHECK: .long second+11
52*0a6a1f1dSLionel Sambuc# CHECK: .long -1
53*0a6a1f1dSLionel Sambuc
54*0a6a1f1dSLionel Sambuc	double , second + 12
55*0a6a1f1dSLionel Sambuc# CHECK: .long -1
56*0a6a1f1dSLionel Sambuc# CHECK: .long second+12
57*0a6a1f1dSLionel Sambuc
58*0a6a1f1dSLionel Sambuc	double second
59*0a6a1f1dSLionel Sambuc# CHECK: .long second
60*0a6a1f1dSLionel Sambuc# CHECK: .long -1
61*0a6a1f1dSLionel Sambuc
62*0a6a1f1dSLionel Sambuc	.macro mixed arg0 = 0, arg1 = 1 arg2 = 2, arg3 = 3
63*0a6a1f1dSLionel Sambuc		# begin entry
64*0a6a1f1dSLionel Sambuc		.long \arg0
65*0a6a1f1dSLionel Sambuc		.long \arg1
66*0a6a1f1dSLionel Sambuc		.long \arg2
67*0a6a1f1dSLionel Sambuc		.long \arg3
68*0a6a1f1dSLionel Sambuc		# end entry
69*0a6a1f1dSLionel Sambuc	.endm
70*0a6a1f1dSLionel Sambuc
71*0a6a1f1dSLionel Sambucmixed 1, 2 3
72*0a6a1f1dSLionel Sambuc
73*0a6a1f1dSLionel Sambuc# CHECK: .long 1
74*0a6a1f1dSLionel Sambuc# CHECK: .long 2
75*0a6a1f1dSLionel Sambuc# CHECK: .long 3
76*0a6a1f1dSLionel Sambuc# CHECK: .long 3
77*0a6a1f1dSLionel Sambuc
78*0a6a1f1dSLionel Sambucmixed 1 2, 3
79*0a6a1f1dSLionel Sambuc
80*0a6a1f1dSLionel Sambuc# CHECK: .long 1
81*0a6a1f1dSLionel Sambuc# CHECK: .long 2
82*0a6a1f1dSLionel Sambuc# CHECK: .long 3
83*0a6a1f1dSLionel Sambuc# CHECK: .long 3
84*0a6a1f1dSLionel Sambuc
85*0a6a1f1dSLionel Sambucmixed 1 2, 3 4
86*0a6a1f1dSLionel Sambuc
87*0a6a1f1dSLionel Sambuc# CHECK: .long 1
88*0a6a1f1dSLionel Sambuc# CHECK: .long 2
89*0a6a1f1dSLionel Sambuc# CHECK: .long 3
90*0a6a1f1dSLionel Sambuc# CHECK: .long 4
91*0a6a1f1dSLionel Sambuc
92