PHP 8.2.30
Preview: zend_multiply.h Size: 2.08 KB
/opt/alt/php52/usr/include/php/Zend/zend_multiply.h

/*
   +----------------------------------------------------------------------+
   | Zend Engine                                                          |
   +----------------------------------------------------------------------+
   | Copyright (c) 1998-2010 Zend Technologies Ltd. (http://www.zend.com) |
   +----------------------------------------------------------------------+
   | This source file is subject to version 2.00 of the Zend license,     |
   | that is bundled with this package in the file LICENSE, and is        |
   | available through the world-wide-web at the following url:           |
   | http://www.zend.com/license/2_00.txt.                                |
   | If you did not receive a copy of the Zend license and are unable to  |
   | obtain it through the world-wide-web, please send a note to          |
   | license@zend.com so we can mail you a copy immediately.              |
   +----------------------------------------------------------------------+
   | Authors: Sascha Schumann <sascha@schumann.cx>                        |
   |          Ard Biesheuvel <ard@ard.nu>                                 |
   +----------------------------------------------------------------------+
*/

/* $Id: zend_multiply.h 293155 2010-01-05 20:46:53Z sebastian $ */

#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"(__tmpvar),"=r"(usedval) 							\
			: "0"(a), "r"(b), "1"(0));								\
	if (usedval) (dval) = (double) (a) * (double) (b);				\
	else (lval) = __tmpvar;											\
} while (0)

#else

#define ZEND_SIGNED_MULTIPLY_LONG(a, b, lval, dval, usedval) do {		\
	long   __lres  = (a) * (b);											\
	long double __dres  = (long double)(a) * (long double)(b);							\
	long double __delta = (long double) __lres - __dres;							\
	if ( ((usedval) = (( __dres + __delta ) != __dres))) {				\
		(dval) = __dres;												\
	} else {															\
		(lval) = __lres;												\
	}																	\
} while (0)

#endif

Directory Contents

Dirs: 0 × Files: 52

Name Size Perms Modified Actions
3.21 KB lrw-r--r-- 2026-03-09 13:49:07
Edit Download
5.53 KB lrw-r--r-- 2026-03-09 13:49:07
Edit Download
21.07 KB lrw-r--r-- 2026-03-09 13:49:07
Edit Download
11.52 KB lrw-r--r-- 2026-03-09 13:49:07
Edit Download
34.03 KB lrw-r--r-- 2026-03-09 13:49:07
Edit Download
1.65 KB lrw-r--r-- 2026-03-09 13:49:07
Edit Download
25.11 KB lrw-r--r-- 2026-03-09 13:49:07
Edit Download
107 B lrw-r--r-- 2026-03-09 13:49:08
Edit Download
2.50 KB lrw-r--r-- 2026-03-09 13:49:07
Edit Download
3.03 KB lrw-r--r-- 2026-03-09 13:49:07
Edit Download
4.16 KB lrw-r--r-- 2026-03-09 13:49:07
Edit Download
1.92 KB lrw-r--r-- 2026-03-09 13:49:07
Edit Download
2.05 KB lrw-r--r-- 2026-03-09 13:49:07
Edit Download
2.79 KB lrw-r--r-- 2026-03-09 13:49:07
Edit Download
8.13 KB lrw-r--r-- 2026-03-09 13:49:07
Edit Download
4.32 KB lrw-r--r-- 2026-03-09 13:49:07
Edit Download
4.08 KB lrw-r--r-- 2026-03-09 13:49:07
Edit Download
6.65 KB lrw-r--r-- 2026-03-09 13:49:07
Edit Download
3.12 KB lrw-r--r-- 2026-03-09 13:49:07
Edit Download
16.25 KB lrw-r--r-- 2026-03-09 13:49:07
Edit Download
2.47 KB lrw-r--r-- 2026-03-09 13:49:07
Edit Download
1.49 KB lrw-r--r-- 2026-03-09 13:49:07
Edit Download
9.52 KB lrw-r--r-- 2026-03-09 13:49:07
Edit Download
2.32 KB lrw-r--r-- 2026-03-09 13:49:08
Edit Download
1.79 KB lrw-r--r-- 2026-03-09 13:49:08
Edit Download
3.47 KB lrw-r--r-- 2026-03-09 13:49:07
Edit Download
1.67 KB lrw-r--r-- 2026-03-09 13:49:07
Edit Download
3.66 KB lrw-r--r-- 2026-03-09 13:49:07
Edit Download
7.39 KB lrw-r--r-- 2026-03-09 13:49:08
Edit Download
2.31 KB lrw-r--r-- 2026-03-09 13:49:08
Edit Download
5.09 KB lrw-r--r-- 2026-03-09 13:49:07
Edit Download
3.94 KB lrw-r--r-- 2026-03-09 13:49:07
Edit Download
5.04 KB lrw-r--r-- 2026-03-09 13:49:07
Edit Download
3.61 KB lrw-r--r-- 2026-03-09 13:49:07
Edit Download
2.08 KB lrw-r--r-- 2026-03-09 13:49:07
Edit Download
2.21 KB lrw-r--r-- 2026-03-09 13:49:07
Edit Download
4.03 KB lrw-r--r-- 2026-03-09 13:49:07
Edit Download
8.01 KB lrw-r--r-- 2026-03-09 13:49:07
Edit Download
14.66 KB lrw-r--r-- 2026-03-09 13:49:07
Edit Download
3.92 KB lrw-r--r-- 2026-03-09 13:49:07
Edit Download
1.48 KB lrw-r--r-- 2026-03-09 13:49:07
Edit Download
2.34 KB lrw-r--r-- 2026-03-09 13:49:07
Edit Download
1.88 KB lrw-r--r-- 2026-03-09 13:49:07
Edit Download
2.48 KB lrw-r--r-- 2026-03-09 13:49:07
Edit Download
1.79 KB lrw-r--r-- 2026-03-09 13:49:07
Edit Download
6.77 KB lrw-r--r-- 2026-03-09 13:49:08
Edit Download
1.96 KB lrw-r--r-- 2026-03-09 13:49:08
Edit Download
4.03 KB lrw-r--r-- 2026-03-09 13:49:08
Edit Download
1.40 KB lrw-r--r-- 2026-03-09 13:49:08
Edit Download
115.13 KB lrw-r--r-- 2026-03-09 13:49:08
Edit Download
920.75 KB lrw-r--r-- 2026-03-09 13:49:08
Edit Download
6.43 KB lrw-r--r-- 2026-03-09 13:49:08
Edit Download

If ZipArchive is unavailable, a .tar will be created (no compression).