From: Richard Stallman Date: Wed, 23 Sep 1992 03:39:59 +0000 (+0000) Subject: (perform_fixdfsi): Copy arg to memory variable. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=8c153768f4f545dd2c50dc016d7def08348cb643;p=gcc.git (perform_fixdfsi): Copy arg to memory variable. From-SVN: r2209 --- diff --git a/gcc/config/i386/mach.h b/gcc/config/i386/mach.h index f87ecf2cc22..6ee7f4aa863 100644 --- a/gcc/config/i386/mach.h +++ b/gcc/config/i386/mach.h @@ -63,15 +63,18 @@ auto unsigned short ostatus; \ auto unsigned short nstatus; \ auto int ret; \ + auto double tmp; \ \ &ostatus; /* guarantee these land in memory */ \ &nstatus; \ &ret; \ + &tmp; \ \ asm volatile ("fnstcw %0" : "=m" (ostatus)); \ nstatus = ostatus | 0x0c00; \ asm volatile ("fldcw %0" : /* no outputs */ : "m" (nstatus)); \ - asm volatile ("fldl %0" : /* no outputs */ : "m" (a)); \ + tmp = a; \ + asm volatile ("fldl %0" : /* no outputs */ : "m" (tmp)); \ asm volatile ("fistpl %0" : "=m" (ret)); \ asm volatile ("fldcw %0" : /* no outputs */ : "m" (ostatus)); \ \