/* Generated with C2C (Cedar To C)*/ /* Copyright (C) 1993 by Xerox Corporation. All rights reserved. */ /* time: May 6, 1993 5:03:05 pm PDT */ /* C2C version: April 20, 1993 (sun4) */ /* ref-counting: off */ /* file: DSupportImpl, module: DSupportImpl */ /* switches: bcfhklnouw */ #include <cedar/InstallationSupport.h> #include <cedar/CedarExtra.h> static char versionStamp[] = "@(#)mob←version [1390064766,3091302834] DSupportImpl"; typedef unsigned word, *ptr; typedef unsigned char byte, *bPt; typedef unsigned short half, *hPt; typedef struct {word f0, f1;} W2; typedef W2 *W2Pt; typedef struct {word f0, f1, f2, f3, f4, f5;} W6; typedef word (*fPt)(); #define SOURCE(p, l) /* source p, l */ static void NoName←Q3204(); static void DSupportImpl←P0(); static void ConversionError←P60(); static void Overflow←P120(); extern void XR←D64SetTestMode(); extern void XR←DCardCard(); extern void XR←DCardInt(); extern void XR←DCardDIntI(); extern void XR←DIntCard(); extern void XR←DIntInt(); extern void XR←DIntDCardI(); extern word XR←CardDIntI(); extern word XR←CardDCardI(); extern word XR←IntDIntI(); extern word XR←IntDCardI(); extern void XR←DCardAddI(); extern void XR←DCardSubI(); extern void XR←DCardMulI(); static void Div2←P1020(); extern void XR←DCardDivI(); extern void XR←DCardModI(); extern void XR←DCardPwrI(); static void MixedPwr←P2856(); extern word XR←DCardGtI(); extern word XR←DCardGeI(); extern word XR←DEqI(); extern void XR←DCardMinI(); extern void XR←DCardMaxI(); static void XDIntNeg←P1620(); static void Neg64←P1680(); extern void XR←DIntNegI(); extern void XR←DIntAddI(); extern void XR←DIntSubI(); extern void XR←DIntMulI(); extern void XR←DIntDivI(); extern void XR←DIntModI(); extern void XR←DIntPwrI(); extern word XR←DIntGtI(); extern word XR←DIntGeI(); extern void XR←DIntAbsI(); extern void XR←DIntMinI(); extern void XR←DIntMaxI(); extern void XR←DFloatDCardI(); extern void XR←DFloatDIntI(); extern word XR←FloatDCardI(); extern word XR←FloatDIntI(); static struct {unsigned f; char r[16];} string1 = {851984, "\257\300\122\332\264\176\300\270\101\211\262\100\164\000\000"}; static struct {unsigned f; char r[16];} string2 = {851984, "\257\300\321\335\027\212\300\103\063\273\041\100\150\000\000"}; static struct {unsigned f; char r[16];} string3 = {851984, "\257\300\275\320\070\317\300\004\110\363\366\100\150\000\000"}; static struct {unsigned f; char r[16];} string4 = {851984, "\257\300\233\213\041\256\300\330\147\331\041\100\150\000\000"}; static struct { word f0[6]; word f6; word f7; word f8; word f9; word f10; word f11; word f12; word f13; word f14; word f15; word f16; word f17; word f18; word f19; word f20; word f21; word f22; word f23; word f24; word f25; word f26; word f27; word f28; word f29; word f30; word f31; word f32; word f33; word f34; word f35; word f36; word f37; word f38; word f39; word f40; word f41; word f42; word f43; word f44; word f45; word f46; word f47; word f48; word f49; word f50; word f51; word f52; word f53; word f54; word f55; word f56; word f57; word f58; word f59; word f60; word f61; word f62; word f63; word f64; word f65; word f66; word f67; word f68; word f69; word f70; word f71; word f72; word f73; word f74; word f75; word f76; word f77; word f78; word f79; word f80; word f81; word f82; word f83; word f84; word f85; word f86; word f87; word f88; word f89; word f90; word f91; word f92; word f93[4]; } globalframe = { {0}, (word) XR←FloatDIntI, 0, (word) XR←FloatDCardI, 0, (word) XR←DFloatDIntI, 0, (word) XR←DFloatDCardI, 0, (word) XR←DIntMaxI, 0, (word) XR←DIntMinI, 0, (word) XR←DIntAbsI, 0, (word) XR←DIntGeI, 0, (word) XR←DIntGtI, 0, (word) XR←DIntPwrI, 0, (word) XR←DIntModI, 0, (word) XR←DIntDivI, 0, (word) XR←DIntMulI, 0, (word) XR←DIntSubI, 0, (word) XR←DIntAddI, 0, (word) XR←DIntNegI, 0, (word) Neg64←P1680, 0, (word) XDIntNeg←P1620, 0, (word) XR←DCardMaxI, 0, (word) XR←DCardMinI, 0, (word) XR←DEqI, 0, (word) XR←DCardGeI, 0, (word) XR←DCardGtI, 0, (word) XR←DCardPwrI, 0, (word) XR←DCardModI, 0, (word) XR←DCardDivI, 0, (word) Div2←P1020, 0, (word) XR←DCardMulI, 0, (word) XR←DCardSubI, 0, (word) XR←DCardAddI, 0, (word) XR←IntDCardI, 0, (word) XR←IntDIntI, 0, (word) XR←CardDCardI, 0, (word) XR←CardDIntI, 0, (word) XR←DIntDCardI, 0, (word) XR←DIntInt, 0, (word) XR←DIntCard, 0, (word) XR←DCardDIntI, 0, (word) XR←DCardInt, 0, (word) XR←DCardCard, 0, (word) XR←D64SetTestMode, 0, (word) Overflow←P120, 0, (word) ConversionError←P60, 0, (word) DSupportImpl←P0, {0} }; static void NoName←Q3204() { register ptr gf←c0224 = (ptr) &globalframe; word var←c14092; (void) XR←DeclareGlobalFrame((word) "DSupportImpl", &globalframe, (word) XR←GetTypeIndexS((word) (&string1)), (word) (( (bPt) gf←c0224)+368) /* var←c13356 */ ); var←c14092 = (word) XR←ImportInterface((word) "RealSupport", (word) XR←GetTypeIndexS((word) (&string2)), 24); (* (( (ptr) gf←c0224)+96)/* var←c14060 */ ) = var←c14092; (void) XR←ImportProcS(var←c14092, 67371777); (void) XR←ImportProcS(var←c14092, 67634690); var←c14092 = (word) XR←ImportInterface((word) "RuntimeError", (word) XR←GetTypeIndexS((word) (&string3)), 27); (* (( (ptr) gf←c0224)+94)/* var←c13388 */ ) = var←c14092; var←c14092 = (word) XR←ImportInterface((word) "DRealSupport", (word) XR←GetTypeIndexS((word) (&string4)), 26); (* (( (ptr) gf←c0224)+95)/* var←c13964 */ ) = var←c14092; (void) XR←ImportProcS(var←c14092, 134480897); (void) XR←ImportProcS(var←c14092, 135006210); } static void DSupportImpl←P0(formal←c052, formal←c051) word formal←c052; word formal←c051; { /* DSupportImpl: */ } static void ConversionError←P60() { register ptr gf←c14124 = (ptr) &globalframe; /* ConversionError: */ SOURCE(1934, 85) SOURCE(1989, 30) (void) XR←RaiseError((* (( (ptr) (* (( (ptr) gf←c14124)+94)/* var←c13388 */ ))+8) ), 0); } static void Overflow←P120() { register ptr gf←c14156 = (ptr) &globalframe; /* Overflow: */ SOURCE(2025, 70) SOURCE(2047, 48) if ((0 != (* (( (ptr) gf←c14156)+4)/* overFlowTests64←v2664 */ ))) { SOURCE(2071, 24) (void) (XR←RaiseSignal((word) (( (bPt) gf←c14156)+20)/* var←c11948 */ , 0, 0)); }; } extern void XR←D64SetTestMode(c←v4976) word c←v4976; { register ptr gf←c14188 = (ptr) &globalframe; /* D64SetTestMode: */ SOURCE(2101, 72) SOURCE(2151, 22) (* (( (ptr) gf←c14188)+4)/* overFlowTests64←v2664 */ ) = (unsigned) (c←v4976 != 0); } extern void XR←DCardCard(res←v5036, c←v5064) word res←v5036; word c←v5064; { /* DCardCard: */ SOURCE(2178, 88) SOURCE(2240, 12) (* (( (ptr) res←v5036)+1) ) = c←v5064; SOURCE(2254, 12) (* (ptr) res←v5036 ) = 0; } extern void XR←DCardInt(res←v5124, i←v5152) word res←v5124; word i←v5152; { /* DCardInt: */ SOURCE(2272, 117) SOURCE(2332, 29) if (( (int)i←v5152 < (int)0)) { SOURCE(2344, 17) (void) ConversionError←P60(); }; SOURCE(2363, 12) (* (( (ptr) res←v5124)+1) ) = i←v5152; SOURCE(2377, 12) (* (ptr) res←v5124 ) = 0; } extern void XR←DCardDIntI(res←v5212, dint←v5240) word res←v5212; word dint←v5240; { /* DCardDInt: */ SOURCE(2395, 108) SOURCE(2452, 37) if (( (int)(* (ptr) dint←v5240 ) < (int)0)) { SOURCE(2472, 17) (void) ConversionError←P60(); }; SOURCE(2491, 12) (* (W2Pt) res←v5212 ) = (* (W2Pt) dint←v5240 ); } extern void XR←DIntCard(res←v5300, c←v5328) word res←v5300; word c←v5328; { /* DIntCard: */ SOURCE(2510, 87) SOURCE(2571, 12) (* (ptr) res←v5300 ) = 0; SOURCE(2585, 12) (* (( (ptr) res←v5300)+1) ) = c←v5328; } extern void XR←DIntInt(res←v5388, i←v5416) word res←v5388; word i←v5416; { /* DIntInt: */ SOURCE(2603, 117) SOURCE(2662, 44) if (( (int)i←v5416 >= (int)0)) { SOURCE(2675, 18) (* (ptr) res←v5388 ) = 0; } else { SOURCE(2693, 13) (* (ptr) res←v5388 ) = (word) -1; }; SOURCE(2708, 12) (* (( (ptr) res←v5388)+1) ) = i←v5416; } extern void XR←DIntDCardI(res←v5476, dcard←v5504) word res←v5476; word dcard←v5504; { /* DIntDCard: */ SOURCE(2726, 112) SOURCE(2785, 38) if (( (int)(* (ptr) dcard←v5504 ) < (int)0)) { SOURCE(2806, 17) (void) ConversionError←P60(); }; SOURCE(2825, 13) (* (W2Pt) res←v5476 ) = (* (W2Pt) dcard←v5504 ); } extern word XR←CardDIntI(dint←v5564) word dint←v5564; { word var←c5608; /* CardDInt: */ SOURCE(2845, 125) SOURCE(2913, 37) if (((* (ptr) dint←v5564 ) != 0)) { SOURCE(2933, 17) (void) ConversionError←P60(); }; SOURCE(2952, 18) return((* (( (ptr) dint←v5564)+1) )); } extern word XR←CardDCardI(dcard←v5668) word dcard←v5668; { word var←c5712; /* CardDCard: */ SOURCE(2976, 130) SOURCE(3047, 38) if (((* (ptr) dcard←v5668 ) != 0)) { SOURCE(3068, 17) (void) ConversionError←P60(); }; SOURCE(3087, 19) return((* (( (ptr) dcard←v5668)+1) )); } extern word XR←IntDIntI(dint←v5772) word dint←v5772; { word var←c5816; /* IntDInt: */ SOURCE(3113, 234) SOURCE(3179, 148) { word var←c13420; var←c13420 = (* (ptr) dint←v5772 ); if ((var←c13420 == 0)) { SOURCE(3206, 37) if (( (int)(* (( (ptr) dint←v5772)+1) ) < (int)0)) { SOURCE(3226, 17) (void) ConversionError←P60(); }; } else { if ((var←c13420 == (word) -1)) { SOURCE(3259, 38) if (( (int)(* (( (ptr) dint←v5772)+1) ) >= (int)0)) { SOURCE(3280, 17) (void) ConversionError←P60(); }; } else { SOURCE(3310, 17) (void) ConversionError←P60(); }; }; }; SOURCE(3329, 18) return((* (( (ptr) dint←v5772)+1) )); } extern word XR←IntDCardI(dcard←v5876) word dcard←v5876; { word var←c5920; /* IntDCard: */ SOURCE(3353, 143) SOURCE(3421, 54) if (((* (ptr) dcard←v5876 ) != 0) || ( (int)(* (( (ptr) dcard←v5876)+1) ) < (int)0)) { SOURCE(3458, 17) (void) ConversionError←P60(); }; SOURCE(3477, 19) return((* (( (ptr) dcard←v5876)+1) )); } extern void XR←DCardAddI(res←v5980, a←v6008, b←v6036) word res←v5980; word a←v6008; word b←v6036; { word over←v9512; /* DCardAdd: */ SOURCE(3504, 281) SOURCE(3560, 60) over←v9512 = ( (( (word) -1 - (* (( (ptr) a←v6008)+1) )) < (* (( (ptr) b←v6036)+1) )) ? 1 : 0 ) ; SOURCE(3622, 97) if ((( (word) -1 - (* (ptr) a←v6008 )) <= (* (ptr) b←v6036 ))) { SOURCE(3662, 57) if ((( (word) -1 - (* (ptr) a←v6008 )) < (* (ptr) b←v6036 )) || (over←v9512 != 0)) { SOURCE(3709, 10) (void) Overflow←P120(); }; }; SOURCE(3724, 26) (* (( (ptr) res←v5980)+1) ) = ((* (( (ptr) a←v6008)+1) ) + (* (( (ptr) b←v6036)+1) )); SOURCE(3752, 33) (* (ptr) res←v5980 ) = (((* (ptr) a←v6008 ) + (* (ptr) b←v6036 )) + over←v9512); } extern void XR←DCardSubI(res←v6096, a←v6124, b←v6152) word res←v6096; word a←v6124; word b←v6152; { word over←v9556; /* DCardSub: */ SOURCE(3791, 236) SOURCE(3847, 45) over←v9556 = ( ((* (( (ptr) a←v6124)+1) ) < (* (( (ptr) b←v6152)+1) )) ? 1 : 0 ) ; SOURCE(3894, 67) if (((* (ptr) a←v6124 ) <= (* (ptr) b←v6152 ))) { SOURCE(3919, 42) if (((* (ptr) a←v6124 ) < (* (ptr) b←v6152 )) || (over←v9556 != 0)) { SOURCE(3951, 10) (void) Overflow←P120(); }; }; SOURCE(3966, 26) (* (( (ptr) res←v6096)+1) ) = ((* (( (ptr) a←v6124)+1) ) - (* (( (ptr) b←v6152)+1) )); SOURCE(3994, 33) (* (ptr) res←v6096 ) = (((* (ptr) a←v6124 ) - (* (ptr) b←v6152 )) - over←v9556); } extern void XR←DCardMulI(res←v6212, a←v6240, b←v6268) word res←v6212; word a←v6240; word b←v6268; { word r0←v9628; word r1←v9656; word r2←v9684; word r3←v9712; word carry3←v9740; word p1a←v9768; word p1b←v9796; word p2a←v9824; word p2b←v9852; word p2c←v9880; word p3a←v9908; word p3b←v9936; word p3c←v9964; word p3d←v9992; /* DCardMul: */ SOURCE(4033, 1088) SOURCE(4205, 14) r0←v9628 = ( (unsigned) (* (( (hPt) a←v6240)+3) ) * (unsigned) (* (( (hPt) b←v6268)+3) )); SOURCE(4221, 15) p1a←v9768 = ( (unsigned) (* (( (hPt) a←v6240)+2) ) * (unsigned) (* (( (hPt) b←v6268)+3) )); SOURCE(4238, 15) p1b←v9796 = ( (unsigned) (* (( (hPt) a←v6240)+3) ) * (unsigned) (* (( (hPt) b←v6268)+2) )); SOURCE(4255, 46) if ((( (word) -1 - p1a←v9768) < p1b←v9796)) { carry3←v9740 = 1; } else { carry3←v9740 = 0; }; SOURCE(4303, 14) r1←v9656 = (p1a←v9768 + p1b←v9796); SOURCE(4319, 15) p2a←v9824 = ( (unsigned) (* (( (hPt) a←v6240)+1) ) * (unsigned) (* (( (hPt) b←v6268)+3) )); SOURCE(4337, 15) p2b←v9852 = ( (unsigned) (* (( (hPt) a←v6240)+2) ) * (unsigned) (* (( (hPt) b←v6268)+2) )); SOURCE(4354, 15) p2c←v9880 = ( (unsigned) (* (( (hPt) a←v6240)+3) ) * (unsigned) (* (( (hPt) b←v6268)+1) )); SOURCE(4371, 39) if ((( (word) -1 - p2a←v9824) < p2b←v9852)) { SOURCE(4400, 10) (void) Overflow←P120(); }; SOURCE(4412, 14) r2←v9684 = (p2a←v9824 + p2b←v9852); SOURCE(4428, 38) if ((( (word) -1 - r2←v9684) < p2c←v9880)) { SOURCE(4456, 10) (void) Overflow←P120(); }; SOURCE(4468, 13) r2←v9684 = (r2←v9684 + p2c←v9880); SOURCE(4483, 24) p3a←v9908 = (( (unsigned) (* (hPt) a←v6240 ) * (unsigned) (* (( (hPt) b←v6268)+3) )) + carry3←v9740); SOURCE(4526, 15) p3b←v9936 = ( (unsigned) (* (( (hPt) a←v6240)+1) ) * (unsigned) (* (( (hPt) b←v6268)+2) )); SOURCE(4543, 15) p3c←v9964 = ( (unsigned) (* (( (hPt) a←v6240)+2) ) * (unsigned) (* (( (hPt) b←v6268)+1) )); SOURCE(4560, 15) p3d←v9992 = ( (unsigned) (* (( (hPt) a←v6240)+3) ) * (unsigned) (* (hPt) b←v6268 )); SOURCE(4577, 63) if ((((p3a←v9908 > 65536) || (p3b←v9936 > 65536)) || (p3c←v9964 > 65536)) || (p3d←v9992 > 65536)) { SOURCE(4630, 10) (void) Overflow←P120(); }; SOURCE(4642, 26) r3←v9712 = (((p3a←v9908 + p3b←v9936) + p3c←v9964) + p3d←v9992); SOURCE(4673, 20) (* (( (hPt) res←v6212)+3) ) = ( (((unsigned)r0←v9628 << 16) >> 16) ); SOURCE(4695, 12) r0←v9628 = ((word) r0←v9628 >> 16); SOURCE(4712, 44) if ((( (word) -1 - r1←v9656) < r0←v9628)) { carry3←v9740 = 1; } else { carry3←v9740 = 0; }; SOURCE(4758, 12) r1←v9656 = (r1←v9656 + r0←v9628); SOURCE(4773, 20) (* (( (hPt) res←v6212)+2) ) = ( (((unsigned)r1←v9656 << 16) >> 16) ); SOURCE(4795, 12) r1←v9656 = ((word) r1←v9656 >> 16); SOURCE(4812, 37) if ((( (word) -1 - r2←v9684) < r1←v9656)) { SOURCE(4839, 10) (void) Overflow←P120(); }; SOURCE(4851, 12) r2←v9684 = (r2←v9684 + r1←v9656); SOURCE(4866, 20) (* (( (hPt) res←v6212)+1) ) = ( (((unsigned)r2←v9684 << 16) >> 16) ); SOURCE(4888, 12) r2←v9684 = ((word) r2←v9684 >> 16); SOURCE(4905, 26) if ((r3←v9712 > 65536)) { SOURCE(4921, 10) (void) Overflow←P120(); }; SOURCE(4933, 21) r3←v9712 = ((r3←v9712 + r2←v9684) + carry3←v9740); SOURCE(4981, 20) (* (hPt) res←v6212 ) = ( (((unsigned)r3←v9712 << 16) >> 16) ); SOURCE(5003, 118) { word tc6; word tc7; word tc8; if ((r3←v9712 >= 65536)) { goto then05;}; if (( (unsigned) (* (hPt) a←v6240 ) > 0)) { tc6 = (word) ((( (unsigned) (* (( (hPt) b←v6268)+2) ) + (unsigned) (* (( (hPt) b←v6268)+1) )) + (unsigned) (* (hPt) b←v6268 )) > 0); } else { tc6 = (word) 0; }; if (tc6) { goto then05;}; if (( (unsigned) (* (hPt) b←v6268 ) > 0)) { tc7 = (word) (( (unsigned) (* (( (hPt) a←v6240)+2) ) + (unsigned) (* (( (hPt) a←v6240)+1) )) > 0); } else { tc7 = (word) 0; }; if (tc7) { goto then05;}; if (( (unsigned) (* (( (hPt) a←v6240)+1) ) > 0)) { tc8 = (word) ( (unsigned) (* (( (hPt) b←v6268)+1) ) > 0); } else { tc8 = (word) 0; }; if (tc8) { then05: ; SOURCE(5111, 10) (void) Overflow←P120(); }; }; } static void Div2←P1020(formal←c0102, a←v6328) word formal←c0102; word a←v6328; { W2 res←v6372; /* Div2: */ SOURCE(5127, 138) SOURCE(5187, 54) res←v6372.f1 = ((((* (ptr) a←v6328 ) & 1) << 31) + ((* (( (ptr) a←v6328)+1) ) >> 1)); SOURCE(5243, 22) res←v6372.f0 = ((* (ptr) a←v6328 ) >> 1); /* removed tail goto */ (* (W2Pt) formal←c0102 ) = res←v6372; return; } extern void XR←DCardDivI(res←v6536, a←v6564, b←v6592) word res←v6536; word a←v6564; word b←v6592; { register ptr gf←c14220 = (ptr) &globalframe; /* DCardDiv: */ SOURCE(5366, 583) SOURCE(5422, 527) if (XR←DCardGtI(b←v6592, a←v6564)) { SOURCE(5442, 17) { W2 D9; XR←DCardCard(&D9, 0); (* (W2Pt) res←v6536 ) = D9; }; } else { SOURCE(5459, 490) if ( ( ((* (ptr) b←v6592 ) == 0) ? ((* (( (ptr) b←v6592)+1) ) <= 2) : 0 ) ) { SOURCE(5492, 92) { word var←c13452; var←c13452 = (* (( (ptr) b←v6592)+1) ); switch (var←c13452) { case 2: SOURCE(5516, 14) (void) Div2←P1020((word) res←v6536, a←v6564); break; case 1: SOURCE(5537, 9) (* (W2Pt) res←v6536 ) = (* (W2Pt) a←v6564 ); break; case 0: SOURCE(5553, 31) (void) (XR←RaiseSignal((* (( (ptr) (* (( (ptr) gf←c14220)+94)/* var←c13388 */ ))+27) ), 0, 0)); break; default: SOURCE(5597, 5) (void) XR←RaiseUnnamedError(); break; }; }; } else { SOURCE(5611, 340) { W2 result←v10036; W2 d←v10064; word count←v10092 = 1; W2 rest←v10120; SOURCE(5613, 26) { W2 D10; XR←DCardCard(&D10, 0); result←v10036 = D10; }; SOURCE(5641, 15) d←v10064 = (* (W2Pt) b←v6592 ); SOURCE(5674, 23) (void) Div2←P1020((word) &rest←v10120, a←v6564); SOURCE(5699, 64) lab←L100003: ; if (XR←DCardGeI(&rest←v10120, &d←v10064)) { } else { goto lab←L100001; }; SOURCE(5724, 12) { W2 var←c13516; W2 res←v11900; SOURCE(5338, 24) { W2 D11; XR←DCardAddI(&D11, &d←v10064, &d←v10064); res←v11900 = D11; }; SOURCE(5271, 91) var←c13516 = res←v11900; d←v10064 = var←c13516; }; SOURCE(5738, 25) count←v10092 = (count←v10092 + 1); goto lab←L100003; lab←L100001: ; SOURCE(5765, 9) rest←v10120 = (* (W2Pt) a←v6564 ); SOURCE(5776, 148) { register word i←v10164 = 0; register word noName←c13548; noName←c13548 = count←v10092; if ((i←v10164 >= noName←c13548)) { goto lab←L100005; }; lab←L100008: ; SOURCE(5804, 22) { W2 var←c13580; W2 res←v11852; SOURCE(5338, 24) { W2 D12; XR←DCardAddI(&D12, &result←v10036, &result←v10036); res←v11852 = D12; }; SOURCE(5271, 91) var←c13580 = res←v11852; result←v10036 = var←c13580; }; SOURCE(5828, 81) if (XR←DCardGeI(&rest←v10120, &d←v10064)) { SOURCE(5853, 27) { W2 D13; XR←DCardSubI(&D13, &rest←v10120, &d←v10064); rest←v10120 = D13; }; SOURCE(5882, 27) { W2 D14; W2 D15; XR←DCardCard(&D15, 1); XR←DCardAddI(&D14, &result←v10036, &D15); result←v10036 = D14; }; }; SOURCE(5912, 12) (void) Div2←P1020((word) &d←v10064, (word) &d←v10064); i←v10164 = (i←v10164 + 1); if ((i←v10164 < noName←c13548)) { goto lab←L100008; }; lab←L100005: ; }; SOURCE(5936, 13) (* (W2Pt) res←v6536 ) = result←v10036; }; }; }; } extern void XR←DCardModI(res←v6652, a←v6680, b←v6708) word res←v6652; word a←v6680; word b←v6708; { /* DCardMod: */ SOURCE(5958, 97) SOURCE(6014, 41) { W2 D16; W2 D17; W2 D18; XR←DCardDivI(&D18, a←v6680, b←v6708); XR←DCardMulI(&D17, &D18, b←v6708); XR←DCardSubI(&D16, a←v6680, &D17); (* (W2Pt) res←v6652 ) = D16; }; } extern void XR←DCardPwrI(res←v6768, a←v6796, b←v6824) word res←v6768; word a←v6796; word b←v6824; { W6 var←c14252; /* declaration of var←c13612 skipped */ /* DCardPwr: */ SOURCE(6061, 463) { word tmpAddr19; tmpAddr19 = (word) (( (ptr) &var←c14252)+4)/* var←c13612 */ ; (* (ptr) tmpAddr19 ) = ( ((word) (fPt) MixedPwr←P2856) ); (* (( (ptr) tmpAddr19) + 1) ) = 1; }; SOURCE(6344, 141) if (((* (ptr) b←v6824 ) > 0)) { SOURCE(6363, 114) if (((* (ptr) a←v6796 ) > 0)) { SOURCE(6381, 16) (void) Overflow←P120(); } else { SOURCE(6397, 80) { word var←c13644; var←c13644 = (* (( (ptr) a←v6796)+1) ); if ((var←c13644 == 0)) { SOURCE(6421, 11) { W2 D20; XR←DCardCard(&D20, 0); (* (W2Pt) res←v6768 ) = D20; }; } else { if ((var←c13644 == 1)) { SOURCE(6439, 15) (* (W2Pt) res←v6768 ) = (* (W2Pt) a←v6796 ); } else { SOURCE(6467, 10) (void) Overflow←P120(); }; }; }; }; SOURCE(6479, 6) return; }; SOURCE(6490, 34) (void) MixedPwr←P2856((word) res←v6768, (* (W2Pt) a←v6796 ), (* (( (ptr) b←v6824)+1) ), (word) (( (bPt) &var←c14252)+16) /* var←c13612 */ ); } static void MixedPwr←P2856(formal←c0137, x←v10284, y←v10312, formal←c14284) word formal←c0137; W2 x←v10284; word y←v10312; word formal←c14284; { W2 var←c10356; formal←c14284 = (formal←c14284 - 16); /* MixedPwr: */ SOURCE(6117, 221) SOURCE(6191, 147) { word var←c13676; var←c13676 = y←v10312; if ((var←c13676 == 0)) { SOURCE(6210, 10) { W2 D21; XR←DCardCard(&D21, 1); var←c10356 = D21; }; /* removed tail goto */ } else { if ((var←c13676 == 1)) { SOURCE(6227, 10) var←c10356 = x←v10284; /* removed tail goto */ } else { SOURCE(6250, 88) if (((y←v10312 & 1) != 0)) { SOURCE(6270, 39) { W2 var←c13740; { W2 var←c0134; { W2 D22; XR←DCardMulI(&D22, &x←v10284, &x←v10284); (void) MixedPwr←P2856((word) &var←c0134, D22, ((word) y←v10312 >> 1), (word) (( (bPt) formal←c14284)+16)); }; { W2 D23; XR←DCardMulI(&D23, &x←v10284, &var←c0134); var←c13740 = D23; }; }; var←c10356 = var←c13740; /* removed tail goto */ }; } else { SOURCE(6309, 29) { W2 var←c13804; { W2 D24; XR←DCardMulI(&D24, &x←v10284, &x←v10284); (void) MixedPwr←P2856((word) &var←c13804, D24, ((word) y←v10312 >> 1), (word) (( (bPt) formal←c14284)+16)); }; var←c10356 = var←c13804; /* removed tail goto */ }; }; }; }; }; (* (W2Pt) formal←c0137 ) = var←c10356; return; } extern word XR←DCardGtI(a←v6884, b←v6912) word a←v6884; word b←v6912; { word var←c6956; /* DCardGt: */ SOURCE(6528, 181) if (((* (ptr) a←v6884 ) > (* (ptr) b←v6912 ))) { SOURCE(6627, 13) return(1); } else { if (((* (ptr) a←v6884 ) < (* (ptr) b←v6912 ))) { SOURCE(6659, 14) return(0); } else { SOURCE(6686, 23) return( (unsigned) ((* (( (ptr) a←v6884)+1) ) > (* (( (ptr) b←v6912)+1) ))); }; }; } extern word XR←DCardGeI(a←v7016, b←v7044) word a←v7016; word b←v7044; { word var←c7088; /* DCardGe: */ SOURCE(6713, 182) if (((* (ptr) a←v7016 ) > (* (ptr) b←v7044 ))) { SOURCE(6812, 13) return(1); } else { if (((* (ptr) a←v7016 ) < (* (ptr) b←v7044 ))) { SOURCE(6844, 14) return(0); } else { SOURCE(6871, 24) return( (unsigned) ((* (( (ptr) a←v7016)+1) ) >= (* (( (ptr) b←v7044)+1) ))); }; }; } extern word XR←DEqI(a←v7148, b←v7176) word a←v7148; word b←v7176; { word var←c7220; /* DEq: */ SOURCE(6899, 102) SOURCE(6960, 41) { word tc25; if (((* (( (ptr) a←v7148)+1) ) == (* (( (ptr) b←v7176)+1) ))) { tc25 = (word) (unsigned) ((* (ptr) a←v7148 ) == (* (ptr) b←v7176 )); } else { tc25 = (word) (unsigned) 0; }; return(tc25); }; } extern void XR←DCardMinI(res←v7280, a←v7308, b←v7336) word res←v7280; word a←v7308; word b←v7336; { /* DCardMin: */ SOURCE(7005, 103) SOURCE(7061, 47) if ((0 != (word) XR←DCardGtI(a←v7308, b←v7336))) { SOURCE(7083, 15) (* (W2Pt) res←v7280 ) = (* (W2Pt) b←v7336 ); } else { SOURCE(7098, 10) (* (W2Pt) res←v7280 ) = (* (W2Pt) a←v7308 ); }; } extern void XR←DCardMaxI(res←v7396, a←v7424, b←v7452) word res←v7396; word a←v7424; word b←v7452; { /* DCardMax: */ SOURCE(7112, 103) SOURCE(7168, 47) if ((0 != (word) XR←DCardGtI(a←v7424, b←v7452))) { SOURCE(7190, 15) (* (W2Pt) res←v7396 ) = (* (W2Pt) a←v7424 ); } else { SOURCE(7205, 10) (* (W2Pt) res←v7396 ) = (* (W2Pt) b←v7452 ); }; } static void XDIntNeg←P1620(res←v7512, a←v7540) word res←v7512; word a←v7540; { W2 n1←v10384; W2 p1←v10412; W2 t←v10440; /* XDIntNeg: */ SOURCE(7220, 183) SOURCE(7273, 47) n1←v10384.f0 = (word) -1; n1←v10384.f1 = (word) -1; SOURCE(7322, 25) p1←v10412.f0 = 0; p1←v10412.f1 = 1; SOURCE(7361, 19) (void) XR←DIntSubI((word) &t←v10440, (word) &n1←v10384, a←v7540); SOURCE(7382, 21) (void) XR←DIntSubI(res←v7512, (word) &t←v10440, (word) &p1←v10412); } static void Neg64←P1680(res←v7600, n←v7628) word res←v7600; word n←v7628; { /* Neg64: */ SOURCE(7409, 219) SOURCE(7459, 32) (* (( (ptr) res←v7600)+1) ) = ( (word) -1 - (* (( (ptr) n←v7628)+1) )); SOURCE(7493, 32) (* (ptr) res←v7600 ) = ( (word) -1 - (* (ptr) n←v7628 )); SOURCE(7527, 101) if (((* (( (ptr) res←v7600)+1) ) == (word) -1)) { SOURCE(7559, 23) (* (ptr) res←v7600 ) = ((* (ptr) res←v7600 ) + 1); SOURCE(7584, 12) (* (( (ptr) res←v7600)+1) ) = 0; } else { SOURCE(7603, 25) (* (( (ptr) res←v7600)+1) ) = ((* (( (ptr) res←v7600)+1) ) + 1); }; } extern void XR←DIntNegI(res←v7792, a←v7820) word res←v7792; word a←v7820; { /* DIntNeg: */ SOURCE(7745, 100) SOURCE(7797, 33) if ( ( ((* (( (ptr) a←v7820)+1) ) == 0) ? ( (int)(* (ptr) a←v7820 ) == (int)2147483648) : 0 ) ) { SOURCE(7820, 10) (void) Overflow←P120(); }; SOURCE(7832, 13) (void) Neg64←P1680(res←v7792, a←v7820); } extern void XR←DIntAddI(res←v7880, a←v7908, b←v7936) word res←v7880; word a←v7908; word b←v7936; { word over←v10484; word h←v10512; /* DIntAdd: */ SOURCE(7851, 320) SOURCE(7906, 60) over←v10484 = ( (( (word) -1 - (* (( (ptr) a←v7908)+1) )) < (* (( (ptr) b←v7936)+1) )) ? 1 : 0 ) ; SOURCE(7968, 34) h←v10512 = (((* (ptr) a←v7908 ) + (* (ptr) b←v7936 )) + over←v10484); SOURCE(8004, 124) if ( ( ( ( (int)h←v10512 < (int)0) ? ( (int)(* (ptr) a←v7908 ) >= (int)0) : 0 ) ? ( (int)(* (ptr) b←v7936 ) >= (int)0) : 0 ) || ( ( ( (int)h←v10512 >= (int)0) ? ( (int)(* (ptr) a←v7908 ) < (int)0) : 0 ) ? ( (int)(* (ptr) b←v7936 ) < (int)0) : 0 ) ) { SOURCE(8118, 10) (void) Overflow←P120(); }; SOURCE(8131, 26) (* (( (ptr) res←v7880)+1) ) = ((* (( (ptr) a←v7908)+1) ) + (* (( (ptr) b←v7936)+1) )); SOURCE(8159, 12) (* (ptr) res←v7880 ) = h←v10512; } extern void XR←DIntSubI(res←v7996, a←v8024, b←v8052) word res←v7996; word a←v8024; word b←v8052; { word over←v10556; word h←v10584; /* DIntSub: */ SOURCE(8177, 305) SOURCE(8232, 45) over←v10556 = ( ((* (( (ptr) a←v8024)+1) ) < (* (( (ptr) b←v8052)+1) )) ? 1 : 0 ) ; SOURCE(8279, 34) h←v10584 = (((* (ptr) a←v8024 ) - (* (ptr) b←v8052 )) - over←v10556); SOURCE(8315, 124) if ( ( ( ( (int)(* (ptr) a←v8024 ) < (int)0) ? ( (int)h←v10584 >= (int)0) : 0 ) ? ( (int)(* (ptr) b←v8052 ) >= (int)0) : 0 ) || ( ( ( (int)(* (ptr) a←v8024 ) >= (int)0) ? ( (int)h←v10584 < (int)0) : 0 ) ? ( (int)(* (ptr) b←v8052 ) < (int)0) : 0 ) ) { SOURCE(8429, 10) (void) Overflow←P120(); }; SOURCE(8442, 26) (* (( (ptr) res←v7996)+1) ) = ((* (( (ptr) a←v8024)+1) ) - (* (( (ptr) b←v8052)+1) )); SOURCE(8470, 12) (* (ptr) res←v7996 ) = h←v10584; } extern void XR←DIntMulI(res←v8112, a←v8140, b←v8168) word res←v8112; word a←v8140; word b←v8168; { W2 x←v10628; W2 y←v10656; word invert←v10684 = 0; /* DIntMul: */ SOURCE(8488, 323) SOURCE(8580, 66) if (( (int)(* (ptr) a←v8140 ) >= (int)0)) { SOURCE(8599, 13) x←v10628 = (* (W2Pt) a←v8140 ); } else { SOURCE(8613, 12) (void) Neg64←P1680((word) &x←v10628, a←v8140); SOURCE(8627, 19) invert←v10684 = (unsigned) (0 == invert←v10684); }; SOURCE(8649, 66) if (( (int)(* (ptr) b←v8168 ) >= (int)0)) { SOURCE(8668, 13) y←v10656 = (* (W2Pt) b←v8168 ); } else { SOURCE(8682, 12) (void) Neg64←P1680((word) &y←v10656, b←v8168); SOURCE(8696, 19) invert←v10684 = (unsigned) (0 == invert←v10684); }; SOURCE(8718, 19) { W2 D26; XR←DCardMulI(&D26, &x←v10628, &y←v10656); x←v10628 = D26; }; SOURCE(8739, 27) if (( (int)x←v10628.f0 < (int)0)) { SOURCE(8756, 10) (void) Overflow←P120(); }; SOURCE(8768, 43) if ((0 != invert←v10684)) { SOURCE(8783, 20) (void) Neg64←P1680(res←v8112, (word) &x←v10628); } else { SOURCE(8803, 8) (* (W2Pt) res←v8112 ) = x←v10628; }; } extern void XR←DIntDivI(res←v8228, a←v8256, b←v8284) word res←v8228; word a←v8256; word b←v8284; { W2 x←v10728; W2 y←v10756; word invert←v10784 = 0; /* DIntDiv: */ SOURCE(8817, 325) SOURCE(8909, 66) if (( (int)(* (ptr) a←v8256 ) >= (int)0)) { SOURCE(8928, 13) x←v10728 = (* (W2Pt) a←v8256 ); } else { SOURCE(8942, 12) (void) Neg64←P1680((word) &x←v10728, a←v8256); SOURCE(8956, 19) invert←v10784 = (unsigned) (0 == invert←v10784); }; SOURCE(8978, 66) if (( (int)(* (ptr) b←v8284 ) >= (int)0)) { SOURCE(8997, 13) y←v10756 = (* (W2Pt) b←v8284 ); } else { SOURCE(9011, 12) (void) Neg64←P1680((word) &y←v10756, b←v8284); SOURCE(9025, 19) invert←v10784 = (unsigned) (0 == invert←v10784); }; SOURCE(9047, 21) { W2 D27; XR←DCardDivI(&D27, &x←v10728, &y←v10756); x←v10728 = D27; }; SOURCE(9070, 27) if (( (int)x←v10728.f0 < (int)0)) { SOURCE(9087, 10) (void) Overflow←P120(); }; SOURCE(9099, 43) if ((0 != invert←v10784)) { SOURCE(9114, 20) (void) Neg64←P1680(res←v8228, (word) &x←v10728); } else { SOURCE(9134, 8) (* (W2Pt) res←v8228 ) = x←v10728; }; } extern void XR←DIntModI(res←v8344, a←v8372, b←v8400) word res←v8344; word a←v8372; word b←v8400; { /* DIntMod: */ SOURCE(9148, 472) SOURCE(9203, 417) if (( (int)(* (ptr) b←v8400 ) >= (int)0)) { SOURCE(9224, 174) if (( (int)(* (ptr) a←v8372 ) >= (int)0)) { SOURCE(9244, 26) { W2 D28; XR←DCardModI(&D28, a←v8372, b←v8400); (* (W2Pt) res←v8344 ) = D28; }; } else { SOURCE(9277, 121) { W2 m←v10828; SOURCE(9291, 12) (void) Neg64←P1680((word) &m←v10828, a←v8372); SOURCE(9305, 23) { W2 D29; XR←DCardModI(&D29, &m←v10828, b←v8400); m←v10828 = D29; }; SOURCE(9330, 68) if ( ( (m←v10828.f0 == 0) ? (m←v10828.f1 == 0) : 0 ) ) { SOURCE(9360, 14) (* (W2Pt) res←v8344 ) = m←v10828; } else { SOURCE(9374, 24) { W2 D30; XR←DCardSubI(&D30, b←v8400, &m←v10828); (* (W2Pt) res←v8344 ) = D30; }; }; }; }; } else { SOURCE(9407, 215) { W2 bb←v10872; W2 m←v10900; SOURCE(9426, 13) (void) Neg64←P1680((word) &bb←v10872, b←v8400); SOURCE(9441, 179) if (( (int)(* (ptr) a←v8372 ) >= (int)0)) { SOURCE(9461, 24) { W2 D31; XR←DCardModI(&D31, a←v8372, &bb←v10872); m←v10900 = D31; }; SOURCE(9487, 69) if ( ( (m←v10900.f0 == 0) ? (m←v10900.f1 == 0) : 0 ) ) { SOURCE(9517, 14) (* (W2Pt) res←v8344 ) = m←v10900; } else { SOURCE(9531, 25) { W2 D32; XR←DCardSubI(&D32, &m←v10900, &bb←v10872); (* (W2Pt) res←v8344 ) = D32; }; }; } else { SOURCE(9565, 12) (void) Neg64←P1680((word) &m←v10900, a←v8372); SOURCE(9579, 24) { W2 D33; XR←DCardModI(&D33, &m←v10900, &bb←v10872); m←v10900 = D33; }; SOURCE(9605, 15) (void) Neg64←P1680(res←v8344, (word) &m←v10900); }; }; }; } extern void XR←DIntPwrI(res←v8460, a←v8488, b←v8516) word res←v8460; word a←v8488; word b←v8516; { W2 x←v10944; /* DIntPwr: */ SOURCE(9628, 301) SOURCE(9696, 27) if (( (int)(* (ptr) b←v8516 ) < (int)0)) { SOURCE(9713, 10) (void) Overflow←P120(); }; SOURCE(9725, 190) if (( (int)(* (ptr) a←v8488 ) >= (int)0)) { SOURCE(9746, 22) { W2 D34; XR←DCardPwrI(&D34, a←v8488, b←v8516); x←v10944 = D34; }; SOURCE(9771, 28) if (( (int)x←v10944.f0 < (int)0)) { SOURCE(9788, 11) (void) Overflow←P120(); }; } else { SOURCE(9808, 12) (void) Neg64←P1680((word) &x←v10944, a←v8488); SOURCE(9823, 22) { W2 D35; XR←DCardPwrI(&D35, &x←v10944, b←v8516); x←v10944 = D35; }; SOURCE(9848, 27) if (( (int)x←v10944.f0 < (int)0)) { SOURCE(9865, 10) (void) Overflow←P120(); }; SOURCE(9877, 38) if ((((* (( (ptr) b←v8516)+1) ) & 1) != 0)) { SOURCE(9902, 13) (void) Neg64←P1680((word) &x←v10944, (word) &x←v10944); }; }; SOURCE(9921, 8) (* (W2Pt) res←v8460 ) = x←v10944; } extern word XR←DIntGtI(a←v8576, b←v8604) word a←v8576; word b←v8604; { word var←c8648; /* DIntGt: */ SOURCE(9935, 216) if (( (int)(* (ptr) a←v8576 ) > (int)(* (ptr) b←v8604 ))) { SOURCE(10033, 13) return(1); } else { if (( (int)(* (ptr) a←v8576 ) < (int)(* (ptr) b←v8604 ))) { SOURCE(10065, 14) return(0); } else { if (( (int)(* (ptr) a←v8576 ) < (int)0)) { SOURCE(10093, 22) return( (unsigned) ((* (( (ptr) a←v8576)+1) ) < (* (( (ptr) b←v8604)+1) ))); } else { SOURCE(10128, 23) return( (unsigned) ((* (( (ptr) a←v8576)+1) ) > (* (( (ptr) b←v8604)+1) ))); }; }; }; } extern word XR←DIntGeI(a←v8708, b←v8736) word a←v8708; word b←v8736; { word var←c8780; /* DIntGe: */ SOURCE(10155, 218) if (( (int)(* (ptr) a←v8708 ) > (int)(* (ptr) b←v8736 ))) { SOURCE(10253, 13) return(1); } else { if (( (int)(* (ptr) a←v8708 ) < (int)(* (ptr) b←v8736 ))) { SOURCE(10285, 14) return(0); } else { if (( (int)(* (ptr) a←v8708 ) < (int)0)) { SOURCE(10313, 23) return( (unsigned) ((* (( (ptr) a←v8708)+1) ) <= (* (( (ptr) b←v8736)+1) ))); } else { SOURCE(10349, 24) return( (unsigned) ((* (( (ptr) a←v8708)+1) ) >= (* (( (ptr) b←v8736)+1) ))); }; }; }; } extern void XR←DIntAbsI(res←v8840, a←v8868) word res←v8840; word a←v8868; { /* DIntAbs: */ SOURCE(10377, 127) SOURCE(10429, 75) if (( (int)(* (ptr) a←v8868 ) >= (int)0)) { SOURCE(10448, 15) (* (W2Pt) res←v8840 ) = (* (W2Pt) a←v8868 ); } else { SOURCE(10463, 41) (void) Neg64←P1680(res←v8840, a←v8868); }; } extern void XR←DIntMinI(res←v8928, a←v8956, b←v8984) word res←v8928; word a←v8956; word b←v8984; { /* DIntMin: */ SOURCE(10508, 101) SOURCE(10563, 46) if ((0 != (word) XR←DIntGtI(a←v8956, b←v8984))) { SOURCE(10584, 15) (* (W2Pt) res←v8928 ) = (* (W2Pt) b←v8984 ); } else { SOURCE(10599, 10) (* (W2Pt) res←v8928 ) = (* (W2Pt) a←v8956 ); }; } extern void XR←DIntMaxI(res←v9044, a←v9072, b←v9100) word res←v9044; word a←v9072; word b←v9100; { /* DIntMax: */ SOURCE(10613, 101) SOURCE(10668, 46) if ((0 != (word) XR←DIntGtI(a←v9072, b←v9100))) { SOURCE(10689, 15) (* (W2Pt) res←v9044 ) = (* (W2Pt) a←v9072 ); } else { SOURCE(10704, 10) (* (W2Pt) res←v9044 ) = (* (W2Pt) b←v9100 ); }; } extern void XR←DFloatDCardI(res←v9160, a←v9188) word res←v9160; word a←v9188; { register ptr gf←c14316 = (ptr) &globalframe; /* DFloatDCard: */ SOURCE(10719, 159) SOURCE(10775, 103) { W2 var←c13900; { W2 var←c13932; W2 var←c0213; W2 var←c0232; W2 var←c0214; { word pd36; pd36 = (* (( (ptr) (* (( (ptr) gf←c14316)+95)/* var←c13964 */ ))+8) ); (void) ( *( (fPt) ((* (ptr) pd36 ))))((word) &var←c13932, (* (ptr) a←v9188 ), pd36); }; { word pd37; pd37 = (* (( (ptr) (* (( (ptr) gf←c14316)+95)/* var←c13964 */ ))+12) ); (void) ( *( (fPt) ((* (ptr) pd37 ))))((word) &var←c0213, var←c13932, 32, pd37); }; var←c0232 = var←c0213; { word pd38; pd38 = (* (( (ptr) (* (( (ptr) gf←c14316)+95)/* var←c13964 */ ))+8) ); (void) ( *( (fPt) ((* (ptr) pd38 ))))((word) &var←c0214, (* (( (ptr) a←v9188)+1) ), pd38); }; XR←DRealAddI(&var←c13900, &var←c0232, &var←c0214); }; (* (W2Pt) res←v9160 ) = var←c13900; }; } extern void XR←DFloatDIntI(res←v9248, a←v9276) word res←v9248; word a←v9276; { /* DFloatDInt: */ SOURCE(10882, 170) SOURCE(10947, 105) if (( (int)(* (ptr) a←v9276 ) >= (int)0)) { SOURCE(10965, 21) { W2 D39; XR←DFloatDCardI(&D39, (a←v9276)); (* (W2Pt) res←v9248 ) = D39; }; } else { SOURCE(10986, 66) { W2 aa←v10988; SOURCE(11001, 13) (void) Neg64←P1680((word) &aa←v10988, a←v9276); SOURCE(11016, 15) { W2 D40; XR←DFloatDCardI(&D40, (&aa←v10988)); aa←v10988 = D40; }; SOURCE(11034, 18) XR←DRealNegI(&(* (W2Pt) (res←v9248)), &aa←v10988); }; }; } extern word XR←FloatDCardI(dcard←v9336) word dcard←v9336; { register ptr gf←c14348 = (ptr) &globalframe; word var←c9380; /* FloatDCard: */ SOURCE(11059, 174) SOURCE(11128, 105) { word var←c0234; { word var←c14028; word var←c0233; { word pd41; pd41 = (* (( (ptr) (* (( (ptr) gf←c14348)+96)/* var←c14060 */ ))+7) ); var←c14028 = (word) ( *( (fPt) ((* (ptr) pd41 ))))((* (ptr) (dcard←v9336) ), pd41); }; { word pd42; pd42 = (* (( (ptr) (* (( (ptr) gf←c14348)+96)/* var←c14060 */ ))+10) ); var←c0233 = (word) ( *( (fPt) ((* (ptr) pd42 ))))(var←c14028, 32, pd42); }; { word x43; word pd44; word x45; pd44 = (* (( (ptr) (* (( (ptr) gf←c14348)+96)/* var←c14060 */ ))+7) ); *(float*)&var←c0234 = ( x43 = var←c0233, *(float*)&x43 ) + ( x45 = (word) ( *( (fPt) ((* (ptr) pd44 ))))((* ((( (ptr) dcard←v9336)+1)) ), pd44), *(float*)&x45 ); }; }; return(var←c0234); }; } extern word XR←FloatDIntI(dint←v9440) word dint←v9440; { word r←v9484; /* FloatDInt: */ SOURCE(11237, 162) SOURCE(11307, 92) if (( (int)(* (ptr) dint←v9440 ) >= (int)0)) { SOURCE(11328, 18) r←v9484 = XR←FloatDCardI(dint←v9440); } else { SOURCE(11346, 53) { W2 aa←v11032; SOURCE(11361, 16) (void) Neg64←P1680((word) &aa←v11032, dint←v9440); SOURCE(11379, 10) r←v9484 = XR←FloatDCardI(&aa←v11032); SOURCE(11392, 7) { word x46; *(float*)&r←v9484 = - ( x46 = r←v9484, *(float*)&x46 ); }; }; }; SOURCE(11237, 162) return(r←v9484); } /* file: DSupportImpl, module: DSupportImpl, compiled at: May 6, 1993 5:03:04 pm PDT */ extern void XR←install←DSupportImpl() { NoName←Q3204(); } extern void XR←run←DSupportImpl() { XR←Start(&globalframe); }