/* Generated with C2C (Cedar To C)*/ /* Copyright (C) 1992 by Xerox Corporation. All rights reserved. */ /* time: February 21, 1992 9:06:01 pm PST */ /* C2C version: October 16, 1990 (native) */ /* ref-counting: off */ /* file: FloatingPointImpl, module: FloatingPointImpl */ /* switches: bcfhklnouw */ #include <cedar/InstallationSupport.h> #include <cedar/CedarExtra.h> static char versionStamp[] = "@(#)mob←version [3788192068,898228856] FloatingPointImpl"; typedef unsigned word, *ptr; typedef unsigned char byte, *bPt; typedef unsigned short half, *hPt; #define SOURCE(p, l) /* source p, l */ static void NoName←Q420(); static void FloatingPointImpl←P0(); static word SetState←P60(); static void FloatingSignalHandler←P120(); static word SupportedExceptionErrors←P180(); static word SupportedStickyFlags←P240(); static word GetStickyFlags←P300(); static word SetStickyFlags←P360(); static struct {unsigned f; char r[16];} string1 = {851984, "\257\300\341\313\071\104\300\065\211\342\170\100\150\000\000"}; static struct {unsigned f; char r[16];} string2 = {851984, "\257\300\150\261\123\070\300\276\161\220\062\100\150\000\000"}; static struct {unsigned f; char r[16];} string3 = {851984, "\257\300\161\243\131\157\300\276\230\231\046\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[2]; } globalframe = { {0}, (word) SetStickyFlags←P360, 0, (word) GetStickyFlags←P300, 0, (word) SupportedStickyFlags←P240, 0, (word) SupportedExceptionErrors←P180, 0, (word) FloatingSignalHandler←P120, 0, (word) SetState←P60, 0, (word) FloatingPointImpl←P0, {0} }; static void NoName←Q420() { register ptr gf←c024 = (ptr) &globalframe; word var←c4124; (void) XR←DeclareGlobalFrame((word) "FloatingPointImpl", &globalframe, (word) XR←GetTypeIndexS((word) (&string1)), (word) ( ( (bPt) gf←c024)+72)/* var←c4060 */ ); var←c4124 = (word) XR←ExportInterface((word) "FloatingPointCommon", (word) XR←GetTypeIndexS((word) (&string2)), 5); (* (( (ptr) gf←c024)+20)/* var←c4092 */ ) = var←c4124; (void) XR←ExportVar(var←c4124, 0, (word) (( (bPt) gf←c024)+20)/* var←c3836 */ ); (void) XR←ExportProcS(var←c4124, (word) (( (bPt) gf←c024)+48)/* var←c3964 */ , 67109120); (void) XR←ExportProcS(var←c4124, (word) (( (bPt) gf←c024)+40)/* var←c3932 */ , 67109376); (void) XR←ExportProcS(var←c4124, (word) (( (bPt) gf←c024)+32)/* var←c3900 */ , 67109632); (void) XR←ExportProcS(var←c4124, (word) (( (bPt) gf←c024)+24)/* var←c3868 */ , 67372033); var←c4124 = (word) XR←ExportInterface((word) "FloatingPointPrivate", (word) XR←GetTypeIndexS((word) (&string3)), 2); (* (( (ptr) gf←c024)+20)/* var←c4092 */ ) = var←c4124; (void) XR←ExportVar(var←c4124, 0, (word) (( (bPt) gf←c024)+16)/* currentState←v2436 */ ); (void) XR←ExportProcS(var←c4124, (word) (( (bPt) gf←c024)+64)/* var←c4028 */ , 67371265); } static void FloatingPointImpl←P0(formal←c013, formal←c012) word formal←c013; word formal←c012; { /* FloatingPointImpl: */ } static word SetState←P60(new←v2740) word new←v2740; { register ptr gf←c4156 = (ptr) &globalframe; word old←v2784; /* SetState: */ SOURCE(240, 250) SOURCE(472, 18) old←v2784 = (* (( (ptr) gf←c4156)+4)/* currentState←v2436 */ ); SOURCE(240, 250) return(old←v2784); } static void FloatingSignalHandler←P120(code←v3664) word code←v3664; { register ptr gf←c4188 = (ptr) &globalframe; /* FloatingSignalHandler: */ SOURCE(766, 73) SOURCE(822, 17) { word var←c017; var←c017 = code←v3664; (void) XR←RaiseError((word) (( (bPt) gf←c4188)+20)/* var←c3836 */ , (word) &var←c017); }; } static word SupportedExceptionErrors←P180() { register ptr gf←c4220 = (ptr) &globalframe; word var←c2964; word flags←v3364 = 0; /* SupportedExceptionErrors: */ SOURCE(890, 241) SOURCE(995, 117) if (((* (( (ptr) gf←c4220)+4)/* currentState←v2436 */ ) != 0)) { SOURCE(1028, 30) flags←v3364 = (flags←v3364 & 4294967263) | (((1)) << 5); SOURCE(1060, 22) flags←v3364 = (flags←v3364 & 4294967279) | (((1)) << 4); SOURCE(1084, 28) flags←v3364 = (flags←v3364 & 4294967287) | (((1)) << 3); }; SOURCE(1117, 14) return(flags←v3364); } static word SupportedStickyFlags←P240() { word var←c3024; /* SupportedStickyFlags: */ SOURCE(1136, 84) SOURCE(1199, 21) return(0); } static word GetStickyFlags←P300() { word var←c3084; /* GetStickyFlags: */ SOURCE(1226, 78) SOURCE(1283, 21) return(0); } static word SetStickyFlags←P360(new←v3144) word new←v3144; { word old←v3188; /* SetStickyFlags: */ SOURCE(1310, 120) SOURCE(1310, 120) old←v3188 = 0; SOURCE(1409, 21) return(0); } /* file: FloatingPointImpl, module: FloatingPointImpl, compiled at: February 21, 1992 9:06:01 pm PST */ extern void XR←install←FloatingPointImpl() { NoName←Q420(); } extern void XR←run←FloatingPointImpl() { XR←Start(&globalframe); }