Lines Matching refs:X87

22 …mtriple=i386-pc-windows-msvc     -mattr=-sse  | FileCheck %s --check-prefixes=CHECK,X86,X87,X87-WIN
23 …mtriple=i386-unknown-linux-gnu -mattr=-sse | FileCheck %s --check-prefixes=CHECK,X86,X87,X87-LIN
39 ; SSE2 (cvtts[ds]2si) and vanilla X87 (fnstcw+fist, 32-bit only).
229 ; X87-WIN-LABEL: f_to_u64:
230 ; X87-WIN: # %bb.0:
231 ; X87-WIN-NEXT: pushl %ebp
232 ; X87-WIN-NEXT: movl %esp, %ebp
233 ; X87-WIN-NEXT: andl $-8, %esp
234 ; X87-WIN-NEXT: subl $16, %esp
235 ; X87-WIN-NEXT: flds 8(%ebp)
236 ; X87-WIN-NEXT: flds __real@5f000000
237 ; X87-WIN-NEXT: fucom %st(1)
238 ; X87-WIN-NEXT: fnstsw %ax
239 ; X87-WIN-NEXT: xorl %edx, %edx
240 ; X87-WIN-NEXT: # kill: def $ah killed $ah killed $ax
241 ; X87-WIN-NEXT: sahf
242 ; X87-WIN-NEXT: setbe %al
243 ; X87-WIN-NEXT: fldz
244 ; X87-WIN-NEXT: jbe LBB0_2
245 ; X87-WIN-NEXT: # %bb.1:
246 ; X87-WIN-NEXT: fstp %st(1)
247 ; X87-WIN-NEXT: fldz
248 ; X87-WIN-NEXT: LBB0_2:
249 ; X87-WIN-NEXT: fstp %st(0)
250 ; X87-WIN-NEXT: fsubrp %st, %st(1)
251 ; X87-WIN-NEXT: fnstcw {{[0-9]+}}(%esp)
252 ; X87-WIN-NEXT: movzwl {{[0-9]+}}(%esp), %ecx
253 ; X87-WIN-NEXT: orl $3072, %ecx # imm = 0xC00
254 ; X87-WIN-NEXT: movw %cx, {{[0-9]+}}(%esp)
255 ; X87-WIN-NEXT: fldcw {{[0-9]+}}(%esp)
256 ; X87-WIN-NEXT: fistpll {{[0-9]+}}(%esp)
257 ; X87-WIN-NEXT: fldcw {{[0-9]+}}(%esp)
258 ; X87-WIN-NEXT: movb %al, %dl
259 ; X87-WIN-NEXT: shll $31, %edx
260 ; X87-WIN-NEXT: xorl {{[0-9]+}}(%esp), %edx
261 ; X87-WIN-NEXT: movl {{[0-9]+}}(%esp), %eax
262 ; X87-WIN-NEXT: movl %ebp, %esp
263 ; X87-WIN-NEXT: popl %ebp
264 ; X87-WIN-NEXT: retl
266 ; X87-LIN-LABEL: f_to_u64:
267 ; X87-LIN: # %bb.0:
268 ; X87-LIN-NEXT: subl $20, %esp
269 ; X87-LIN-NEXT: flds {{[0-9]+}}(%esp)
270 ; X87-LIN-NEXT: flds {{\.LCPI.*}}
271 ; X87-LIN-NEXT: fucom %st(1)
272 ; X87-LIN-NEXT: fnstsw %ax
273 ; X87-LIN-NEXT: xorl %edx, %edx
274 ; X87-LIN-NEXT: # kill: def $ah killed $ah killed $ax
275 ; X87-LIN-NEXT: sahf
276 ; X87-LIN-NEXT: setbe %al
277 ; X87-LIN-NEXT: fldz
278 ; X87-LIN-NEXT: jbe .LBB0_2
279 ; X87-LIN-NEXT: # %bb.1:
280 ; X87-LIN-NEXT: fstp %st(1)
281 ; X87-LIN-NEXT: fldz
282 ; X87-LIN-NEXT: .LBB0_2:
283 ; X87-LIN-NEXT: fstp %st(0)
284 ; X87-LIN-NEXT: fsubrp %st, %st(1)
285 ; X87-LIN-NEXT: fnstcw {{[0-9]+}}(%esp)
286 ; X87-LIN-NEXT: movzwl {{[0-9]+}}(%esp), %ecx
287 ; X87-LIN-NEXT: orl $3072, %ecx # imm = 0xC00
288 ; X87-LIN-NEXT: movw %cx, {{[0-9]+}}(%esp)
289 ; X87-LIN-NEXT: fldcw {{[0-9]+}}(%esp)
290 ; X87-LIN-NEXT: fistpll {{[0-9]+}}(%esp)
291 ; X87-LIN-NEXT: fldcw {{[0-9]+}}(%esp)
292 ; X87-LIN-NEXT: movb %al, %dl
293 ; X87-LIN-NEXT: shll $31, %edx
294 ; X87-LIN-NEXT: xorl {{[0-9]+}}(%esp), %edx
295 ; X87-LIN-NEXT: movl {{[0-9]+}}(%esp), %eax
296 ; X87-LIN-NEXT: addl $20, %esp
297 ; X87-LIN-NEXT: retl
426 ; X87-WIN-LABEL: f_to_s64:
427 ; X87-WIN: # %bb.0:
428 ; X87-WIN-NEXT: pushl %ebp
429 ; X87-WIN-NEXT: movl %esp, %ebp
430 ; X87-WIN-NEXT: andl $-8, %esp
431 ; X87-WIN-NEXT: subl $16, %esp
432 ; X87-WIN-NEXT: flds 8(%ebp)
433 ; X87-WIN-NEXT: fnstcw {{[0-9]+}}(%esp)
434 ; X87-WIN-NEXT: movzwl {{[0-9]+}}(%esp), %eax
435 ; X87-WIN-NEXT: orl $3072, %eax # imm = 0xC00
436 ; X87-WIN-NEXT: movw %ax, {{[0-9]+}}(%esp)
437 ; X87-WIN-NEXT: fldcw {{[0-9]+}}(%esp)
438 ; X87-WIN-NEXT: fistpll {{[0-9]+}}(%esp)
439 ; X87-WIN-NEXT: fldcw {{[0-9]+}}(%esp)
440 ; X87-WIN-NEXT: movl {{[0-9]+}}(%esp), %eax
441 ; X87-WIN-NEXT: movl {{[0-9]+}}(%esp), %edx
442 ; X87-WIN-NEXT: movl %ebp, %esp
443 ; X87-WIN-NEXT: popl %ebp
444 ; X87-WIN-NEXT: retl
446 ; X87-LIN-LABEL: f_to_s64:
447 ; X87-LIN: # %bb.0:
448 ; X87-LIN-NEXT: subl $20, %esp
449 ; X87-LIN-NEXT: flds {{[0-9]+}}(%esp)
450 ; X87-LIN-NEXT: fnstcw {{[0-9]+}}(%esp)
451 ; X87-LIN-NEXT: movzwl {{[0-9]+}}(%esp), %eax
452 ; X87-LIN-NEXT: orl $3072, %eax # imm = 0xC00
453 ; X87-LIN-NEXT: movw %ax, {{[0-9]+}}(%esp)
454 ; X87-LIN-NEXT: fldcw {{[0-9]+}}(%esp)
455 ; X87-LIN-NEXT: fistpll {{[0-9]+}}(%esp)
456 ; X87-LIN-NEXT: fldcw {{[0-9]+}}(%esp)
457 ; X87-LIN-NEXT: movl {{[0-9]+}}(%esp), %eax
458 ; X87-LIN-NEXT: movl {{[0-9]+}}(%esp), %edx
459 ; X87-LIN-NEXT: addl $20, %esp
460 ; X87-LIN-NEXT: retl
653 ; X87-WIN-LABEL: d_to_u64:
654 ; X87-WIN: # %bb.0:
655 ; X87-WIN-NEXT: pushl %ebp
656 ; X87-WIN-NEXT: movl %esp, %ebp
657 ; X87-WIN-NEXT: andl $-8, %esp
658 ; X87-WIN-NEXT: subl $16, %esp
659 ; X87-WIN-NEXT: fldl 8(%ebp)
660 ; X87-WIN-NEXT: flds __real@5f000000
661 ; X87-WIN-NEXT: fucom %st(1)
662 ; X87-WIN-NEXT: fnstsw %ax
663 ; X87-WIN-NEXT: xorl %edx, %edx
664 ; X87-WIN-NEXT: # kill: def $ah killed $ah killed $ax
665 ; X87-WIN-NEXT: sahf
666 ; X87-WIN-NEXT: setbe %al
667 ; X87-WIN-NEXT: fldz
668 ; X87-WIN-NEXT: jbe LBB2_2
669 ; X87-WIN-NEXT: # %bb.1:
670 ; X87-WIN-NEXT: fstp %st(1)
671 ; X87-WIN-NEXT: fldz
672 ; X87-WIN-NEXT: LBB2_2:
673 ; X87-WIN-NEXT: fstp %st(0)
674 ; X87-WIN-NEXT: fsubrp %st, %st(1)
675 ; X87-WIN-NEXT: fnstcw {{[0-9]+}}(%esp)
676 ; X87-WIN-NEXT: movzwl {{[0-9]+}}(%esp), %ecx
677 ; X87-WIN-NEXT: orl $3072, %ecx # imm = 0xC00
678 ; X87-WIN-NEXT: movw %cx, {{[0-9]+}}(%esp)
679 ; X87-WIN-NEXT: fldcw {{[0-9]+}}(%esp)
680 ; X87-WIN-NEXT: fistpll {{[0-9]+}}(%esp)
681 ; X87-WIN-NEXT: fldcw {{[0-9]+}}(%esp)
682 ; X87-WIN-NEXT: movb %al, %dl
683 ; X87-WIN-NEXT: shll $31, %edx
684 ; X87-WIN-NEXT: xorl {{[0-9]+}}(%esp), %edx
685 ; X87-WIN-NEXT: movl {{[0-9]+}}(%esp), %eax
686 ; X87-WIN-NEXT: movl %ebp, %esp
687 ; X87-WIN-NEXT: popl %ebp
688 ; X87-WIN-NEXT: retl
690 ; X87-LIN-LABEL: d_to_u64:
691 ; X87-LIN: # %bb.0:
692 ; X87-LIN-NEXT: subl $20, %esp
693 ; X87-LIN-NEXT: fldl {{[0-9]+}}(%esp)
694 ; X87-LIN-NEXT: flds {{\.LCPI.*}}
695 ; X87-LIN-NEXT: fucom %st(1)
696 ; X87-LIN-NEXT: fnstsw %ax
697 ; X87-LIN-NEXT: xorl %edx, %edx
698 ; X87-LIN-NEXT: # kill: def $ah killed $ah killed $ax
699 ; X87-LIN-NEXT: sahf
700 ; X87-LIN-NEXT: setbe %al
701 ; X87-LIN-NEXT: fldz
702 ; X87-LIN-NEXT: jbe .LBB2_2
703 ; X87-LIN-NEXT: # %bb.1:
704 ; X87-LIN-NEXT: fstp %st(1)
705 ; X87-LIN-NEXT: fldz
706 ; X87-LIN-NEXT: .LBB2_2:
707 ; X87-LIN-NEXT: fstp %st(0)
708 ; X87-LIN-NEXT: fsubrp %st, %st(1)
709 ; X87-LIN-NEXT: fnstcw {{[0-9]+}}(%esp)
710 ; X87-LIN-NEXT: movzwl {{[0-9]+}}(%esp), %ecx
711 ; X87-LIN-NEXT: orl $3072, %ecx # imm = 0xC00
712 ; X87-LIN-NEXT: movw %cx, {{[0-9]+}}(%esp)
713 ; X87-LIN-NEXT: fldcw {{[0-9]+}}(%esp)
714 ; X87-LIN-NEXT: fistpll {{[0-9]+}}(%esp)
715 ; X87-LIN-NEXT: fldcw {{[0-9]+}}(%esp)
716 ; X87-LIN-NEXT: movb %al, %dl
717 ; X87-LIN-NEXT: shll $31, %edx
718 ; X87-LIN-NEXT: xorl {{[0-9]+}}(%esp), %edx
719 ; X87-LIN-NEXT: movl {{[0-9]+}}(%esp), %eax
720 ; X87-LIN-NEXT: addl $20, %esp
721 ; X87-LIN-NEXT: retl
850 ; X87-WIN-LABEL: d_to_s64:
851 ; X87-WIN: # %bb.0:
852 ; X87-WIN-NEXT: pushl %ebp
853 ; X87-WIN-NEXT: movl %esp, %ebp
854 ; X87-WIN-NEXT: andl $-8, %esp
855 ; X87-WIN-NEXT: subl $16, %esp
856 ; X87-WIN-NEXT: fldl 8(%ebp)
857 ; X87-WIN-NEXT: fnstcw {{[0-9]+}}(%esp)
858 ; X87-WIN-NEXT: movzwl {{[0-9]+}}(%esp), %eax
859 ; X87-WIN-NEXT: orl $3072, %eax # imm = 0xC00
860 ; X87-WIN-NEXT: movw %ax, {{[0-9]+}}(%esp)
861 ; X87-WIN-NEXT: fldcw {{[0-9]+}}(%esp)
862 ; X87-WIN-NEXT: fistpll {{[0-9]+}}(%esp)
863 ; X87-WIN-NEXT: fldcw {{[0-9]+}}(%esp)
864 ; X87-WIN-NEXT: movl {{[0-9]+}}(%esp), %eax
865 ; X87-WIN-NEXT: movl {{[0-9]+}}(%esp), %edx
866 ; X87-WIN-NEXT: movl %ebp, %esp
867 ; X87-WIN-NEXT: popl %ebp
868 ; X87-WIN-NEXT: retl
870 ; X87-LIN-LABEL: d_to_s64:
871 ; X87-LIN: # %bb.0:
872 ; X87-LIN-NEXT: subl $20, %esp
873 ; X87-LIN-NEXT: fldl {{[0-9]+}}(%esp)
874 ; X87-LIN-NEXT: fnstcw {{[0-9]+}}(%esp)
875 ; X87-LIN-NEXT: movzwl {{[0-9]+}}(%esp), %eax
876 ; X87-LIN-NEXT: orl $3072, %eax # imm = 0xC00
877 ; X87-LIN-NEXT: movw %ax, {{[0-9]+}}(%esp)
878 ; X87-LIN-NEXT: fldcw {{[0-9]+}}(%esp)
879 ; X87-LIN-NEXT: fistpll {{[0-9]+}}(%esp)
880 ; X87-LIN-NEXT: fldcw {{[0-9]+}}(%esp)
881 ; X87-LIN-NEXT: movl {{[0-9]+}}(%esp), %eax
882 ; X87-LIN-NEXT: movl {{[0-9]+}}(%esp), %edx
883 ; X87-LIN-NEXT: addl $20, %esp
884 ; X87-LIN-NEXT: retl
1142 ; X87-WIN-LABEL: x_to_u64:
1143 ; X87-WIN: # %bb.0:
1144 ; X87-WIN-NEXT: pushl %ebp
1145 ; X87-WIN-NEXT: movl %esp, %ebp
1146 ; X87-WIN-NEXT: andl $-8, %esp
1147 ; X87-WIN-NEXT: subl $16, %esp
1148 ; X87-WIN-NEXT: fldt 8(%ebp)
1149 ; X87-WIN-NEXT: flds __real@5f000000
1150 ; X87-WIN-NEXT: fucom %st(1)
1151 ; X87-WIN-NEXT: fnstsw %ax
1152 ; X87-WIN-NEXT: xorl %edx, %edx
1153 ; X87-WIN-NEXT: # kill: def $ah killed $ah killed $ax
1154 ; X87-WIN-NEXT: sahf
1155 ; X87-WIN-NEXT: setbe %al
1156 ; X87-WIN-NEXT: fldz
1157 ; X87-WIN-NEXT: jbe LBB4_2
1158 ; X87-WIN-NEXT: # %bb.1:
1159 ; X87-WIN-NEXT: fstp %st(1)
1160 ; X87-WIN-NEXT: fldz
1161 ; X87-WIN-NEXT: LBB4_2:
1162 ; X87-WIN-NEXT: fstp %st(0)
1163 ; X87-WIN-NEXT: fsubrp %st, %st(1)
1164 ; X87-WIN-NEXT: fnstcw {{[0-9]+}}(%esp)
1165 ; X87-WIN-NEXT: movzwl {{[0-9]+}}(%esp), %ecx
1166 ; X87-WIN-NEXT: orl $3072, %ecx # imm = 0xC00
1167 ; X87-WIN-NEXT: movw %cx, {{[0-9]+}}(%esp)
1168 ; X87-WIN-NEXT: fldcw {{[0-9]+}}(%esp)
1169 ; X87-WIN-NEXT: fistpll {{[0-9]+}}(%esp)
1170 ; X87-WIN-NEXT: fldcw {{[0-9]+}}(%esp)
1171 ; X87-WIN-NEXT: movb %al, %dl
1172 ; X87-WIN-NEXT: shll $31, %edx
1173 ; X87-WIN-NEXT: xorl {{[0-9]+}}(%esp), %edx
1174 ; X87-WIN-NEXT: movl {{[0-9]+}}(%esp), %eax
1175 ; X87-WIN-NEXT: movl %ebp, %esp
1176 ; X87-WIN-NEXT: popl %ebp
1177 ; X87-WIN-NEXT: retl
1179 ; X87-LIN-LABEL: x_to_u64:
1180 ; X87-LIN: # %bb.0:
1181 ; X87-LIN-NEXT: subl $20, %esp
1182 ; X87-LIN-NEXT: fldt {{[0-9]+}}(%esp)
1183 ; X87-LIN-NEXT: flds {{\.LCPI.*}}
1184 ; X87-LIN-NEXT: fucom %st(1)
1185 ; X87-LIN-NEXT: fnstsw %ax
1186 ; X87-LIN-NEXT: xorl %edx, %edx
1187 ; X87-LIN-NEXT: # kill: def $ah killed $ah killed $ax
1188 ; X87-LIN-NEXT: sahf
1189 ; X87-LIN-NEXT: setbe %al
1190 ; X87-LIN-NEXT: fldz
1191 ; X87-LIN-NEXT: jbe .LBB4_2
1192 ; X87-LIN-NEXT: # %bb.1:
1193 ; X87-LIN-NEXT: fstp %st(1)
1194 ; X87-LIN-NEXT: fldz
1195 ; X87-LIN-NEXT: .LBB4_2:
1196 ; X87-LIN-NEXT: fstp %st(0)
1197 ; X87-LIN-NEXT: fsubrp %st, %st(1)
1198 ; X87-LIN-NEXT: fnstcw {{[0-9]+}}(%esp)
1199 ; X87-LIN-NEXT: movzwl {{[0-9]+}}(%esp), %ecx
1200 ; X87-LIN-NEXT: orl $3072, %ecx # imm = 0xC00
1201 ; X87-LIN-NEXT: movw %cx, {{[0-9]+}}(%esp)
1202 ; X87-LIN-NEXT: fldcw {{[0-9]+}}(%esp)
1203 ; X87-LIN-NEXT: fistpll {{[0-9]+}}(%esp)
1204 ; X87-LIN-NEXT: fldcw {{[0-9]+}}(%esp)
1205 ; X87-LIN-NEXT: movb %al, %dl
1206 ; X87-LIN-NEXT: shll $31, %edx
1207 ; X87-LIN-NEXT: xorl {{[0-9]+}}(%esp), %edx
1208 ; X87-LIN-NEXT: movl {{[0-9]+}}(%esp), %eax
1209 ; X87-LIN-NEXT: addl $20, %esp
1210 ; X87-LIN-NEXT: retl
1360 ; X87-WIN-LABEL: x_to_s64:
1361 ; X87-WIN: # %bb.0:
1362 ; X87-WIN-NEXT: pushl %ebp
1363 ; X87-WIN-NEXT: movl %esp, %ebp
1364 ; X87-WIN-NEXT: andl $-8, %esp
1365 ; X87-WIN-NEXT: subl $16, %esp
1366 ; X87-WIN-NEXT: fldt 8(%ebp)
1367 ; X87-WIN-NEXT: fnstcw {{[0-9]+}}(%esp)
1368 ; X87-WIN-NEXT: movzwl {{[0-9]+}}(%esp), %eax
1369 ; X87-WIN-NEXT: orl $3072, %eax # imm = 0xC00
1370 ; X87-WIN-NEXT: movw %ax, {{[0-9]+}}(%esp)
1371 ; X87-WIN-NEXT: fldcw {{[0-9]+}}(%esp)
1372 ; X87-WIN-NEXT: fistpll {{[0-9]+}}(%esp)
1373 ; X87-WIN-NEXT: fldcw {{[0-9]+}}(%esp)
1374 ; X87-WIN-NEXT: movl {{[0-9]+}}(%esp), %eax
1375 ; X87-WIN-NEXT: movl {{[0-9]+}}(%esp), %edx
1376 ; X87-WIN-NEXT: movl %ebp, %esp
1377 ; X87-WIN-NEXT: popl %ebp
1378 ; X87-WIN-NEXT: retl
1380 ; X87-LIN-LABEL: x_to_s64:
1381 ; X87-LIN: # %bb.0:
1382 ; X87-LIN-NEXT: subl $20, %esp
1383 ; X87-LIN-NEXT: fldt {{[0-9]+}}(%esp)
1384 ; X87-LIN-NEXT: fnstcw {{[0-9]+}}(%esp)
1385 ; X87-LIN-NEXT: movzwl {{[0-9]+}}(%esp), %eax
1386 ; X87-LIN-NEXT: orl $3072, %eax # imm = 0xC00
1387 ; X87-LIN-NEXT: movw %ax, {{[0-9]+}}(%esp)
1388 ; X87-LIN-NEXT: fldcw {{[0-9]+}}(%esp)
1389 ; X87-LIN-NEXT: fistpll {{[0-9]+}}(%esp)
1390 ; X87-LIN-NEXT: fldcw {{[0-9]+}}(%esp)
1391 ; X87-LIN-NEXT: movl {{[0-9]+}}(%esp), %eax
1392 ; X87-LIN-NEXT: movl {{[0-9]+}}(%esp), %edx
1393 ; X87-LIN-NEXT: addl $20, %esp
1394 ; X87-LIN-NEXT: retl
1467 ; X87-WIN-LABEL: t_to_u64:
1468 ; X87-WIN: # %bb.0:
1469 ; X87-WIN-NEXT: pushl {{[0-9]+}}(%esp)
1470 ; X87-WIN-NEXT: pushl {{[0-9]+}}(%esp)
1471 ; X87-WIN-NEXT: pushl {{[0-9]+}}(%esp)
1472 ; X87-WIN-NEXT: pushl {{[0-9]+}}(%esp)
1473 ; X87-WIN-NEXT: calll ___fixunstfdi
1474 ; X87-WIN-NEXT: addl $16, %esp
1475 ; X87-WIN-NEXT: retl
1477 ; X87-LIN-LABEL: t_to_u64:
1478 ; X87-LIN: # %bb.0:
1479 ; X87-LIN-NEXT: subl $12, %esp
1480 ; X87-LIN-NEXT: pushl {{[0-9]+}}(%esp)
1481 ; X87-LIN-NEXT: pushl {{[0-9]+}}(%esp)
1482 ; X87-LIN-NEXT: pushl {{[0-9]+}}(%esp)
1483 ; X87-LIN-NEXT: pushl {{[0-9]+}}(%esp)
1484 ; X87-LIN-NEXT: calll __fixunstfdi
1485 ; X87-LIN-NEXT: addl $28, %esp
1486 ; X87-LIN-NEXT: retl
1559 ; X87-WIN-LABEL: t_to_s64:
1560 ; X87-WIN: # %bb.0:
1561 ; X87-WIN-NEXT: pushl {{[0-9]+}}(%esp)
1562 ; X87-WIN-NEXT: pushl {{[0-9]+}}(%esp)
1563 ; X87-WIN-NEXT: pushl {{[0-9]+}}(%esp)
1564 ; X87-WIN-NEXT: pushl {{[0-9]+}}(%esp)
1565 ; X87-WIN-NEXT: calll ___fixtfdi
1566 ; X87-WIN-NEXT: addl $16, %esp
1567 ; X87-WIN-NEXT: retl
1569 ; X87-LIN-LABEL: t_to_s64:
1570 ; X87-LIN: # %bb.0:
1571 ; X87-LIN-NEXT: subl $12, %esp
1572 ; X87-LIN-NEXT: pushl {{[0-9]+}}(%esp)
1573 ; X87-LIN-NEXT: pushl {{[0-9]+}}(%esp)
1574 ; X87-LIN-NEXT: pushl {{[0-9]+}}(%esp)
1575 ; X87-LIN-NEXT: pushl {{[0-9]+}}(%esp)
1576 ; X87-LIN-NEXT: calll __fixtfdi
1577 ; X87-LIN-NEXT: addl $28, %esp
1578 ; X87-LIN-NEXT: retl