2 /* { dg-do compile } */
4 /* Check for ice when exceededing the max #
5 of parameters to inline asm. */
9 label01
: label02
: label03
: label04
: label05
:
10 label06
: label07
: label08
: label09
: label10
:
11 label11
: label12
: label13
: label14
: label15
:
12 label16
: label17
: label18
: label19
: label20
:
13 label21
: label22
: label23
: label24
: label25
:
14 label26
: label27
: label28
: label29
: label30
:
17 __asm__
goto ("" /* Works. */
21 : label01
, label02
, label03
, label04
, label05
,
22 label06
, label07
, label08
, label09
, label10
,
23 label11
, label12
, label13
, label14
, label15
,
24 label16
, label17
, label18
, label19
, label20
,
25 label21
, label22
, label23
, label24
, label25
,
26 label26
, label27
, label28
, label29
, label30
);
28 __asm__
goto ("" /* { dg-error "more than 30 operands" } */
32 : label01
, label02
, label03
, label04
, label05
,
33 label06
, label07
, label08
, label09
, label10
,
34 label11
, label12
, label13
, label14
, label15
,
35 label16
, label17
, label18
, label19
, label20
,
36 label21
, label22
, label23
, label24
, label25
,
37 label26
, label27
, label28
, label29
, label30
,
43 int Labels_and_Inputs()
45 int b01
, b02
, b03
, b04
, b05
, b06
, b07
, b08
, b09
, b10
;
46 int b11
, b12
, b13
, b14
, b15
, b16
, b17
, b18
, b19
, b20
;
47 int b21
, b22
, b23
, b24
, b25
, b26
, b27
, b28
, b29
, b30
;
50 label01
: label02
: label03
: label04
: label05
:
51 label06
: label07
: label08
: label09
: label10
:
52 label11
: label12
: label13
: label14
: label15
:
53 label16
: label17
: label18
: label19
: label20
:
54 label21
: label22
: label23
: label24
: label25
:
55 label26
: label27
: label28
: label29
: label30
:
58 b01
= b02
= b03
= b04
= b05
= b06
= b07
= b08
= b09
= b10
= 0;
59 b11
= b12
= b13
= b14
= b15
= b16
= b17
= b18
= b19
= b20
= 0;
60 b21
= b22
= b23
= b24
= b25
= b26
= b27
= b28
= b29
= b30
= 0;
63 __asm__
goto ("" /* Works. */
65 : "m" (b01
), "m" (b02
), "m" (b03
), "m" (b04
), "m" (b05
),
66 "m" (b06
), "m" (b07
), "m" (b08
), "m" (b09
), "m" (b10
),
67 "m" (b11
), "m" (b12
), "m" (b13
), "m" (b14
), "m" (b15
),
68 "m" (b16
), "m" (b17
), "m" (b18
), "m" (b19
), "m" (b20
),
69 "m" (b21
), "m" (b22
), "m" (b23
), "m" (b24
), "m" (b25
),
70 "m" (b26
), "m" (b27
), "m" (b28
), "m" (b29
)
74 __asm__
goto ("" /* { dg-error "more than 30 operands" } */
76 : "m" (b01
), "m" (b02
), "m" (b03
), "m" (b04
), "m" (b05
),
77 "m" (b06
), "m" (b07
), "m" (b08
), "m" (b09
), "m" (b10
),
78 "m" (b11
), "m" (b12
), "m" (b13
), "m" (b14
), "m" (b15
),
79 "m" (b16
), "m" (b17
), "m" (b18
), "m" (b19
), "m" (b20
),
80 "m" (b21
), "m" (b22
), "m" (b23
), "m" (b24
), "m" (b25
),
81 "m" (b26
), "m" (b27
), "m" (b28
), "m" (b29
), "m" (b30
)
90 int b01
, b02
, b03
, b04
, b05
, b06
, b07
, b08
, b09
, b10
;
91 int b11
, b12
, b13
, b14
, b15
, b16
, b17
, b18
, b19
, b20
;
92 int b21
, b22
, b23
, b24
, b25
, b26
, b27
, b28
, b29
, b30
;
96 __asm__
volatile ("" /* Works. */
97 : "=m" (b01
), "=m" (b02
), "=m" (b03
), "=m" (b04
), "=m" (b05
),
98 "=m" (b06
), "=m" (b07
), "=m" (b08
), "=m" (b09
), "=m" (b10
),
99 "=m" (b11
), "=m" (b12
), "=m" (b13
), "=m" (b14
), "=m" (b15
),
100 "=m" (b16
), "=m" (b17
), "=m" (b18
), "=m" (b19
), "=m" (b20
),
101 "=m" (b21
), "=m" (b22
), "=m" (b23
), "=m" (b24
), "=m" (b25
),
102 "=m" (b26
), "=m" (b27
), "=m" (b28
), "=m" (b29
), "=m" (b30
));
104 __asm__
volatile ("" /* { dg-error "more than 30 operands" } */
105 : "=m" (b01
), "=m" (b02
), "=m" (b03
), "=m" (b04
), "=m" (b05
),
106 "=m" (b06
), "=m" (b07
), "=m" (b08
), "=m" (b09
), "=m" (b10
),
107 "=m" (b11
), "=m" (b12
), "=m" (b13
), "=m" (b14
), "=m" (b15
),
108 "=m" (b16
), "=m" (b17
), "=m" (b18
), "=m" (b19
), "=m" (b20
),
109 "=m" (b21
), "=m" (b22
), "=m" (b23
), "=m" (b24
), "=m" (b25
),
110 "=m" (b26
), "=m" (b27
), "=m" (b28
), "=m" (b29
), "=m" (b30
),
118 int b01
, b02
, b03
, b04
, b05
, b06
, b07
, b08
, b09
, b10
;
119 int b11
, b12
, b13
, b14
, b15
, b16
, b17
, b18
, b19
, b20
;
120 int b21
, b22
, b23
, b24
, b25
, b26
, b27
, b28
, b29
, b30
;
123 b01
= b02
= b03
= b04
= b05
= b06
= b07
= b08
= b09
= b10
= 0;
124 b11
= b12
= b13
= b14
= b15
= b16
= b17
= b18
= b19
= b20
= 0;
125 b21
= b22
= b23
= b24
= b25
= b26
= b27
= b28
= b29
= b30
= 0;
128 __asm__
volatile ("" /* Works. */
130 : "m" (b01
), "m" (b02
), "m" (b03
), "m" (b04
), "m" (b05
),
131 "m" (b06
), "m" (b07
), "m" (b08
), "m" (b09
), "m" (b10
),
132 "m" (b11
), "m" (b12
), "m" (b13
), "m" (b14
), "m" (b15
),
133 "m" (b16
), "m" (b17
), "m" (b18
), "m" (b19
), "m" (b20
),
134 "m" (b21
), "m" (b22
), "m" (b23
), "m" (b24
), "m" (b25
),
135 "m" (b26
), "m" (b27
), "m" (b28
), "m" (b29
), "m" (b30
));
137 __asm__
volatile ("" /* { dg-error "more than 30 operands" } */
139 : "m" (b01
), "m" (b02
), "m" (b03
), "m" (b04
), "m" (b05
),
140 "m" (b06
), "m" (b07
), "m" (b08
), "m" (b09
), "m" (b10
),
141 "m" (b11
), "m" (b12
), "m" (b13
), "m" (b14
), "m" (b15
),
142 "m" (b16
), "m" (b17
), "m" (b18
), "m" (b19
), "m" (b20
),
143 "m" (b21
), "m" (b22
), "m" (b23
), "m" (b24
), "m" (b25
),
144 "m" (b26
), "m" (b27
), "m" (b28
), "m" (b29
), "m" (b30
),
152 int b01
, b02
, b03
, b04
, b05
, b06
, b07
, b08
, b09
, b10
;
153 int b11
, b12
, b13
, b14
, b15
, b16
, b17
, b18
, b19
, b20
;
154 int b21
, b22
, b23
, b24
, b25
, b26
, b27
, b28
, b29
, b30
;
157 b01
= b02
= b03
= b04
= b05
= b06
= b07
= b08
= b09
= b10
= 0;
158 b11
= b12
= b13
= b14
= b15
= b16
= b17
= b18
= b19
= b20
= 0;
159 b21
= b22
= b23
= b24
= b25
= b26
= b27
= b28
= b29
= b30
= 0;
162 __asm__
volatile ("" /* Works. */
163 : "+m" (b01
), "+m" (b02
), "+m" (b03
), "+m" (b04
), "+m" (b05
),
164 "+m" (b06
), "+m" (b07
), "+m" (b08
), "+m" (b09
), "+m" (b10
),
165 "+m" (b11
), "+m" (b12
), "+m" (b13
), "+m" (b14
), "+m" (b15
));
167 __asm__
volatile ("" /* { dg-error "more than 30 operands" } */
168 : "+m" (b01
), "+m" (b02
), "+m" (b03
), "+m" (b04
), "+m" (b05
),
169 "+m" (b06
), "+m" (b07
), "+m" (b08
), "+m" (b09
), "+m" (b10
),
170 "+m" (b11
), "+m" (b12
), "+m" (b13
), "+m" (b14
), "+m" (b15
),