Changeset 87
- Timestamp:
- 08/08/07 07:17:24 (17 months ago)
- Location:
- trunk/pcc/runtime
- Files:
-
- 2 modified
-
opaque-math-binding.scm (modified) (4 diffs)
-
opaque-math.c (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
trunk/pcc/runtime/opaque-math-binding.scm
r85 r87 44 44 (onum%::onum (a::onum b::onum) "phpmod") 45 45 46 (macro elong->onum::onum (num::elong) "long_to_onum") ;"long_to_phpnum") 46 ;; MS: 5 aug 2007, bigloo2.9a -> bigloo3.0b port 47 ;; (macro elong->onum::onum (num::elong) "LONG_TO_BELONG") 48 (macro elong->onum::onum (num::elong) "ELONG_TO_BELONG") ;"long_to_phpnum") 47 49 (macro float->onum::onum (num::double) "DOUBLE_TO_REAL") ;"double_to_phpnum") 48 50 … … 77 79 (onum->string/g-vardump::bstring a::onum precision::int) 78 80 (phpnum_fail reason::string) 79 ( onum->int::int num::onum)80 (in t->onum::onum num::int)81 ( onum-long? a::onum)82 ( onum-float? a::onum)81 (inline onum->int::int num::onum) 82 (inline int->onum::onum num::int) 83 (inline onum-long? a::onum) 84 (inline onum-float? a::onum) 83 85 (inline onum?::bool ::obj))) 84 86 … … 102 104 (pragma::bool "(ELONGP($1) || REALP($1))" obj)) 103 105 104 (define (onum-long? a::onum)106 (define-inline (onum-long? a::onum) 105 107 (>fx (onum-is-long a) 0)) 106 108 107 (define (onum-float? a::onum)109 (define-inline (onum-float? a::onum) 108 110 (>fx (onum-is-float a) 0)) 109 111 … … 114 116 (define *float-precision* 12) ; might be updated by an INI entry 115 117 116 (define (onum->int::int num::onum)118 (define-inline (onum->int::int num::onum) 117 119 (flonum->fixnum (elong->flonum (onum->elong num)))) 118 120 119 (define (int->onum::onum num::int) 120 (elong->onum (make-elong num))) 121 (define-inline (int->onum::onum num::int) 122 ;; MS: 5 aug 2007, bigloo2.9a -> bigloo3.0b port 123 ;; CARE: I don't understand why using MAKE-ELONG is correct 124 ;; (elong->onum (make-elong num)) 125 (elong->onum ($long->elong ($int->long num)))) 121 126 122 127 ; (define (main argv) -
trunk/pcc/runtime/opaque-math.c
r85 r87 23 23 #include "opaque-math.h" 24 24 /* #include "opaque-piddle.h" */ 25 26 /* MS: 5 aug 2007, bigloo2.9a->bigloo3.0b port */ 27 #if( defined( BGL_2_9a ) ) 28 # define LONG_TO_ONUM(o) (LONG_TO_BELONG(o)) 29 #else 30 # define LONG_TO_ONUM(o) (make_belong(o)) 31 #endif 25 32 26 33
