version 1.4, 2000/12/07 07:06:41 |
version 1.7, 2003/12/24 08:00:38 |
|
|
* DEVELOPER SHALL HAVE NO LIABILITY IN CONNECTION WITH THE USE, |
* DEVELOPER SHALL HAVE NO LIABILITY IN CONNECTION WITH THE USE, |
* PERFORMANCE OR NON-PERFORMANCE OF THE SOFTWARE. |
* PERFORMANCE OR NON-PERFORMANCE OF THE SOFTWARE. |
* |
* |
* $OpenXM: OpenXM_contrib2/asir2000/builtin/math.c,v 1.3 2000/08/22 05:03:59 noro Exp $ |
* $OpenXM: OpenXM_contrib2/asir2000/builtin/math.c,v 1.6 2003/12/11 00:19:24 noro Exp $ |
*/ |
*/ |
#include "ca.h" |
#include "ca.h" |
#include <math.h> |
#include <math.h> |
Line 65 struct ftab math_tab[] = { |
|
Line 65 struct ftab math_tab[] = { |
|
{"dasin",Pdasin,1}, |
{"dasin",Pdasin,1}, |
{"dacos",Pdacos,1}, |
{"dacos",Pdacos,1}, |
{"datan",Pdatan,1}, |
{"datan",Pdatan,1}, |
|
{"floor",Pdfloor,1}, |
{"dfloor",Pdfloor,1}, |
{"dfloor",Pdfloor,1}, |
|
{"ceil",Pdceil,1}, |
{"dceil",Pdceil,1}, |
{"dceil",Pdceil,1}, |
|
{"rint",Pdrint,1}, |
{"drint",Pdrint,1}, |
{"drint",Pdrint,1}, |
{0,0,0}, |
{0,0,0}, |
}; |
}; |
|
|
a = -a; |
a = -a; |
} else |
} else |
sgn = 1; |
sgn = 1; |
#if defined(i386) || defined(__alpha) || defined(VISUAL) |
#if defined(i386) || defined(__alpha) || defined(VISUAL) || defined(__x86_64) |
au = ((unsigned int *)&a)[1]; |
au = ((unsigned int *)&a)[1]; |
al = ((unsigned int *)&a)[0]; |
al = ((unsigned int *)&a)[0]; |
#else |
#else |
|
|
a = -a; |
a = -a; |
} else |
} else |
sgn = 1; |
sgn = 1; |
#if defined(i386) || defined(__alpha) || defined(VISUAL) |
#if defined(i386) || defined(__alpha) || defined(VISUAL) || defined(__x86_64) |
au = ((unsigned int *)&a)[1]; |
au = ((unsigned int *)&a)[1]; |
al = ((unsigned int *)&a)[0]; |
al = ((unsigned int *)&a)[0]; |
#else |
#else |
|
|
a = -a; |
a = -a; |
} else |
} else |
sgn = 1; |
sgn = 1; |
#if defined(i386) || defined(__alpha) || defined(VISUAL) |
#if defined(i386) || defined(__alpha) || defined(VISUAL) || defined(__x86_64) |
au = ((unsigned int *)&a)[1]; |
au = ((unsigned int *)&a)[1]; |
al = ((unsigned int *)&a)[0]; |
al = ((unsigned int *)&a)[0]; |
#else |
#else |
|
|
if ( au ) { |
if ( au ) { |
NEWQ(q); SGN(q) = sgn; NM(q)=NALLOC(2); DN(q)=0; |
NEWQ(q); SGN(q) = sgn; NM(q)=NALLOC(2); DN(q)=0; |
PL(NM(q))=2; BD(NM(q))[0]=al; BD(NM(q))[1] = au; |
PL(NM(q))=2; BD(NM(q))[0]=al; BD(NM(q))[1] = au; |
} else { |
} else if ( al ) { |
UTOQ(al,q); SGN(q) = sgn; |
UTOQ(al,q); SGN(q) = sgn; |
} |
} else |
|
q = 0; |
*rp = q; |
*rp = q; |
} |
} |