1
2/* Test case for http://bugs.kde.org/show_bug.cgi?id=157748 */
3
4#include <stdio.h>
5
6int arr[3];
7
8int main ( void )
9{
10   /* eax points at arr[0] */
11   __asm__ __volatile__(
12      "movl %%esp,0(%%eax)\n\t"
13      "pushfw\n\t"
14      "movl %%esp,4(%%eax)\n\t"
15      "popfw\n\t"
16      "movl %%esp,8(%%eax)\n"
17      : /*out*/ : /*in*/ "a"(&arr) : /*trash*/ "memory","cc"
18   );
19
20   printf("%x %x %x\n", arr[0]-arr[0], arr[0]-arr[1], arr[0]-arr[2]);
21   return 0;
22}
23