Annotation of OpenXM_contrib2/asir2000/include/b.h, Revision 1.1.1.1
1.1 noro 1: /* $OpenXM: OpenXM/src/asir99/include/b.h,v 1.1.1.1 1999/11/10 08:12:30 noro Exp $ */
2: #ifdef FBASE
3: #define D_ADDP(x,y,z,u) addp(x,y,z,u)
4: #define D_SUBP(x,y,z,u) subp(x,y,z,u)
5: #define D_MULP(x,y,z,u) mulp(x,y,z,u)
6: #define D_PWRP(x,y,z,u) pwrp(x,y,z,u)
7: #define D_DIVSRP(x,y,z,u,v) divsrp(x,y,z,u,v)
8: #define D_DIVSRDCP(x,y,z,u,v) divsrdcp(x,y,z,u,v)
9: #define D_DIVSP(x,y,z,u) divsp(x,y,z,u)
10: #define D_DIVSDCP(x,y,z,u) divsdcp(x,y,z,u)
11: #define D_CHSGNP(x,y) chsgnp(x,y)
12: #define D_ADDPQ(x,y,z) addpq(x,y,z)
13: #define D_ADDPTOC(x,y,z,u) addptoc(x,y,z,u)
14: #define D_MULPQ(x,y,z) mulpq(x,y,z)
15: #define D_MULPC(x,y,z,u) mulpc(x,y,z,u)
16:
17: #define ADDP(x,y,z,u) addp(x,y,z,u)
18: #define SUBP(x,y,z,u) subp(x,y,z,u)
19: #define MULP(x,y,z,u) mulp(x,y,z,u)
20: #define PWRP(x,y,z,u) pwrp(x,y,z,u)
21: #define DIVSRP(x,y,z,u,v) divsrp(x,y,z,u,v)
22: #define DIVSRDCP(x,y,z,u,v) divsrdcp(x,y,z,u,v)
23: #define DIVSP(x,y,z,u) divsp(x,y,z,u)
24: #define DIVSDCP(x,y,z,u) divsdcp(x,y,z,u)
25: #define CHSGNP(x,y) chsgnp(x,y)
26: #define ADDPQ(x,y,z) addpq(x,y,z)
27: #define ADDPTOC(x,y,z,u) addptoc(x,y,z,u)
28: #define MULPQ(x,y,z) mulpq(x,y,z)
29: #define MULPC(x,y,z,u) mulpc(x,y,z,u)
30: #define ADDNUM(x,y,z) (*addnumt[MAX(NID((Q)x),NID((Q)y))])(x,y,z)
31: #define SUBNUM(x,y,z) (*subnumt[MAX(NID((Q)x),NID((Q)y))])(x,y,z)
32: #define MULNUM(x,y,z) (*mulnumt[MAX(NID((Q)x),NID((Q)y))])(x,y,z)
33: #define DIVNUM(x,y,z) (*divnumt[MAX(NID((Q)x),NID((Q)y))])(x,y,z)
34: #define PWRNUM(x,y,z) (*pwrnumt[NID((Q)x)])(x,y,z)
35: #define CHSGNNUM(x,y) \
36: (NID((Q)x)==N_Q?(DUPQ((Q)x,(Q)y),SGN((Q)y)= -SGN((Q)y),(y))\
37: :NID((Q)x)==N_R?(NEWReal((Real)y),BDY((Real)y)= -BDY((Real)x),(y))\
38: :((*chsgnnumt[NID((Q)x)])(x,&y),(y)))
39: #define ADDQ(x,y,z) addq(x,y,z)
40: #define SUBQ(x,y,z) subq(x,y,z)
41: #define MULQ(x,y,z) mulq(x,y,z)
42: #define DIVQ(x,y,z) divq(x,y,z)
43: #define PWRQ(x,y,z) pwrq(x,y,z)
44: #define INVQ(x,y) invq(x,y)
45: #define REMQ(x,y,z) remq(x,y,z)
46: #define CMPQ(x,y) cmpq(x,y)
47: #define MKBC(x,y) mkbc(x,(Q *)y)
48:
49: #define One ONE
50: #define Uniq(x) UNIQ((Q)x)
51: #define Base BASE
52: #define Dm(x,y,z,u) DM(x,y,z,u)
53: #define Dma(x,y,z,u,v,w) DMA(x,y,z,u,v,w)
54: #endif
55:
56: #ifdef MODULAR
57: #define D_ADDP(x,y,z,u) addmp(x,mod,y,z,u) int mod;
58: #define D_SUBP(x,y,z,u) submp(x,mod,y,z,u) int mod;
59: #define D_MULP(x,y,z,u) mulmp(x,mod,y,z,u) int mod;
60: #define D_PWRP(x,y,z,u) pwrmp(x,mod,y,z,u) int mod;
61: #define D_DIVSRP(x,y,z,u,v) divsrmp(x,mod,y,z,u,v) int mod;
62: #define D_DIVSRDCP(x,y,z,u,v) divsrdcmp(x,mod,y,z,u,v) int mod;
63: #define D_DIVSP(x,y,z,u) divsmp(x,mod,y,z,u) int mod;
64: #define D_DIVSDCP(x,y,z,u) divsdcmp(x,mod,y,z,u) int mod;
65: #define D_CHSGNP(x,y) chsgnmp(mod,x,y) int mod;
66: #define D_ADDPQ(x,y,z) addmpq(mod,x,y,z) int mod;
67: #define D_ADDPTOC(x,y,z,u) addmptoc(x,mod,y,z,u) int mod;
68: #define D_MULPQ(x,y,z) mulmpq(mod,x,y,z) int mod;
69: #define D_MULPC(x,y,z,u) mulmpc(x,mod,y,z,u) int mod;
70:
71: #define ADDP(x,y,z,u) addmp(x,mod,y,z,u)
72: #define SUBP(x,y,z,u) submp(x,mod,y,z,u)
73: #define MULP(x,y,z,u) mulmp(x,mod,y,z,u)
74: #define PWRP(x,y,z,u) pwrmp(x,mod,y,z,u)
75: #define DIVSRP(x,y,z,u,v) divsrmp(x,mod,y,z,u,v)
76: #define DIVSRDCP(x,y,z,u,v) divsrdcmp(x,mod,y,z,u,v)
77: #define DIVSP(x,y,z,u) divsmp(x,mod,y,z,u)
78: #define DIVSDCP(x,y,z,u) divsdcmp(x,mod,y,z,u)
79: #define CHSGNP(x,y) chsgnmp(mod,x,y)
80: #define ADDPQ(x,y,z) addmpq(mod,x,y,z)
81: #define ADDPTOC(x,y,z,u) addmptoc(x,mod,y,z,u)
82: #define MULPQ(x,y,z) mulmpq(mod,x,y,z)
83: #define MULPC(x,y,z,u) mulmpc(x,mod,y,z,u)
84: #define ADDNUM(x,y,z) addmq(mod,(MQ)x,(MQ)y,(MQ *)z)
85: #define SUBNUM(x,y,z) submq(mod,(MQ)x,(MQ)y,(MQ *)z)
86: #define MULNUM(x,y,z) mulmq(mod,(MQ)x,(MQ)y,(MQ *)z)
87: #define DIVNUM(x,y,z) divmq(mod,(MQ)x,(MQ)y,(MQ *)z)
88: #define PWRNUM(x,y,z) pwrmq(mod,(MQ)x,y,(MQ *)z)
89: #define CHSGNNUM(x,y) (NEWMQ((MQ)y),CONT((MQ)(y))=mod-CONT((MQ)(x)))
90: #define ADDQ(x,y,z) addmq(mod,x,y,z)
91: #define SUBQ(x,y,z) submq(mod,x,y,z)
92: #define MULQ(x,y,z) mulmq(mod,x,y,z)
93: #define DIVQ(x,y,z) divmq(mod,x,y,z)
94: #define PWRQ(x,y,z) pwrmq(mod,x,y,z)
95: #define MKBC(x,y) mkbcm(mod,x,(MQ *)y)
96:
97: #define One ONEM
98: #define Uniq(x) UNIMQ((MQ)x)
99: #endif
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>