]> granicus.if.org Git - php/commitdiff
mfb #24025 fix
authorSascha Schumann <sas@php.net>
Fri, 6 Jun 2003 12:12:25 +0000 (12:12 +0000)
committerSascha Schumann <sas@php.net>
Fri, 6 Jun 2003 12:12:25 +0000 (12:12 +0000)
Zend/zend_multiply.h

index be41e588c329d9e1009d5033f6c7fd70774e83ae..30433d77d84eb3809d83f345fd3f8b256c099fcc 100644 (file)
 #if defined(__i386__) && defined(__GNUC__)
 
 #define ZEND_SIGNED_MULTIPLY_LONG(a, b, lval, dval, usedval) do {      \
+       long __tmpvar;                                                                                                  \
        __asm__ ("imul %3,%0\n"                                                                                 \
                "adc $0,%1"                                                                                             \
-                       : "=r"(lval),"=r"(usedval)                                                              \
+                       : "=r"(__tmpvar),"=r"(usedval)                                                  \
                        : "0"(a), "r"(b), "1"(0));                                                              \
        if (usedval) (dval) = (double) (a) * (double) (b);                              \
+       else (lval) = __tmpvar;                                                                                 \
 } while (0)
 
 #else