|
|
| version 1.1, 2012/02/21 23:47:52 | version 1.1.1.3, 2013/07/22 01:32:15 |
|---|---|
| Line 2 | Line 2 |
| +----------------------------------------------------------------------+ | +----------------------------------------------------------------------+ |
| | Zend Engine | | | Zend Engine | |
| +----------------------------------------------------------------------+ | +----------------------------------------------------------------------+ |
| | Copyright (c) 1998-2012 Zend Technologies Ltd. (http://www.zend.com) | | | Copyright (c) 1998-2013 Zend Technologies Ltd. (http://www.zend.com) | |
| +----------------------------------------------------------------------+ | +----------------------------------------------------------------------+ |
| | This source file is subject to version 2.00 of the Zend license, | | | 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 | | | that is bundled with this package in the file LICENSE, and is | |
| Line 27 ZEND_API void zend_init_fpu(TSRMLS_D) /* {{{ */ | Line 27 ZEND_API void zend_init_fpu(TSRMLS_D) /* {{{ */ |
| #if XPFPA_HAVE_CW | #if XPFPA_HAVE_CW |
| XPFPA_DECLARE | XPFPA_DECLARE |
| if (!EG(saved_fpu_cw)) { | if (!EG(saved_fpu_cw_ptr)) { |
| EG(saved_fpu_cw) = emalloc(sizeof(XPFPA_CW_DATATYPE)); | EG(saved_fpu_cw_ptr) = (void*)&EG(saved_fpu_cw); |
| } | } |
| XPFPA_STORE_CW(EG(saved_fpu_cw)); | XPFPA_STORE_CW(EG(saved_fpu_cw_ptr)); |
| XPFPA_SWITCH_DOUBLE(); | XPFPA_SWITCH_DOUBLE(); |
| #else | #else |
| if (EG(saved_fpu_cw)) { | EG(saved_fpu_cw_ptr) = NULL; |
| efree(EG(saved_fpu_cw)); | |
| } | |
| EG(saved_fpu_cw) = NULL; | |
| #endif | #endif |
| } | } |
| /* }}} */ | /* }}} */ |
| Line 44 ZEND_API void zend_init_fpu(TSRMLS_D) /* {{{ */ | Line 41 ZEND_API void zend_init_fpu(TSRMLS_D) /* {{{ */ |
| ZEND_API void zend_shutdown_fpu(TSRMLS_D) /* {{{ */ | ZEND_API void zend_shutdown_fpu(TSRMLS_D) /* {{{ */ |
| { | { |
| #if XPFPA_HAVE_CW | #if XPFPA_HAVE_CW |
| if (EG(saved_fpu_cw)) { | if (EG(saved_fpu_cw_ptr)) { |
| XPFPA_RESTORE_CW(EG(saved_fpu_cw)); | XPFPA_RESTORE_CW(EG(saved_fpu_cw_ptr)); |
| } | } |
| #endif | #endif |
| if (EG(saved_fpu_cw)) { | EG(saved_fpu_cw_ptr) = NULL; |
| efree(EG(saved_fpu_cw)); | |
| EG(saved_fpu_cw) = NULL; | |
| } | |
| } | } |
| /* }}} */ | /* }}} */ |