/* Generated with C2C (Cedar To C)*/ /* Copyright (C) 1992 by Xerox Corporation. All rights reserved. */ /* time: March 3, 1992 1:09:41 pm PST */ /* C2C version: October 16, 1990 (native) */ /* ref-counting: off */ /* file: AtomImpl, module: AtomImpl */ /* switches: bcfhklnouw */ #include <cedar/InstallationSupport.h> #include <cedar/CedarExtra.h> static char versionStamp[] = "@(#)mob←version [3077843471,1975398675] AtomImpl"; typedef unsigned word, *ptr; typedef unsigned char byte, *bPt; typedef unsigned short half, *hPt; typedef word (*fPt)(); typedef struct {word f0, f1, f2, f3, f4, f5, f6, f7;} W8; typedef struct {word f0, f1, f2;} W3; typedef struct {word f0, f1, f2, f3, f4, f5;} W6; typedef struct {word f0, f1, f2, f3, f4, f5, f6;} W7; #define SOURCE(p, l) /* source p, l */ #define NCK(p) ( (void) p) #define BCK(idx, lim) ( ((unsigned) idx) >= ((unsigned) lim) ? (XR←RaiseBoundsFault()) : (idx) ) static void NoName←Q2736(); static void AtomImpl←P0(); static word NewAtom←P60(); static word GetPName←P120(); static void SetLink←P240(); static word GetPropList←P300(); static void SetPropList←P360(); static word EmptyAtom←P420(); static word MakeAtom←P480(); static word NoName←Q2796(); static word UnsafeMakeAtom←P540(); static word NoName←Q2856(); static word UnsafeMakeAtomFromString←P600(); static word MakeAtomFromChar←P660(); static word MakeAtomFromChars←P720(); static word MakeAtomFromRefText←P780(); static word GetPropertyList←P840(); static word NoName←Q2916(); static void PutProp←P900(); static word NoName←Q2976(); static word PutPropOnList←P960(); static word NoName←Q3036(); static word PutPropInternal←P1020(); static word GetProp←P1080(); static word NoName←Q3096(); static word GetPropFromList←P1140(); static word NoName←Q3156(); static void RemProp←P1200(); static word NoName←Q3216(); static word RemPropFromList←P1260(); static word NoName←Q3276(); static word RemPropInternal←P1320(); static void MapAtoms←P1380(); static word FindAtom←P1440(); static word Next←P1500(); static word NoName←Q3336(); static void LookUpAtom←P1560(); static void InsertAtom←P1620(); static void Crash←P1740(); static void NoName←Q3396(); static void NoName←Q3456(); static void NoName←Q3516(); static void NoName←Q3576(); static void NoName←Q3636(); static void NoName←Q3696(); static void NoName←Q3756(); static void NoName←Q3816(); static void NoName←Q3876(); static void NoName←Q3936(); static struct {unsigned f; char r[12];} string1 = {524300, "\205\210\242\000\117\374\216\251\000\000\000"}; static struct {unsigned f; char r[8];} string2 = {393222, "\010\000\004O\375\001\000"}; static struct {unsigned f; char r[4];} string3 = {65540, "\251\000\000"}; static struct {unsigned f; char r[16];} string4 = {851984, "\257\300\363\223\326\161\300\017\164\046\072\104\304\000\000"}; static struct {unsigned f; char r[24];} string5 = {1376277, "\007\000\001\002\007\020\001\002\000\007\036\002\004\003\002\004\014\016\015\003\001\000\000"}; static struct {unsigned f; char r[48];} string6 = {2883632, "\260\006\005\146\151\162\163\164\216\257\300\055\153\222\376\300\327\164\352\142\100\200\005\004\162\145\163\164\214\216\257\300\055\153\222\376\300\327\164\352\142\100\200\261\000\000\000"}; static struct {unsigned f; char r[4];} string7 = {131074, "\004\003\000"}; static struct {unsigned f; char r[16];} string8 = {851984, "\257\300\055\153\222\376\300\327\164\352\142\100\200\000\000"}; static struct {unsigned f; char r[16];} string9 = {851984, "\257\300\267\164\052\017\300\165\276\061\023\100\164\000\000"}; static struct {unsigned f; char r[4];} string10 = {196611, "\004N\000"}; static struct {unsigned f; char r[16];} string11 = {851984, "\257\300\363\223\326\161\300\017\164\046\072\100\150\000\000"}; static struct {unsigned f; char r[16];} string12 = {851984, "\257\300\070\313\200\317\300\150\067\321\062\100\150\000\000"}; static struct {unsigned f; char r[16];} string13 = {851984, "\257\300\055\153\222\376\300\327\164\352\142\100\150\000\000"}; static struct {unsigned f; char r[16];} string14 = {851984, "\257\300\374\377\221\350\300\202\044\047\115\100\150\000\000"}; static struct { word f0[26]; 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[4]; } globalframe = { {0}, (word) Crash←P1740, 0, (word) InsertAtom←P1620, 0, (word) LookUpAtom←P1560, 0, (word) Next←P1500, 0, (word) FindAtom←P1440, 0, (word) MapAtoms←P1380, 0, (word) RemPropInternal←P1320, 0, (word) RemPropFromList←P1260, 0, (word) RemProp←P1200, 0, (word) GetPropFromList←P1140, 0, (word) GetProp←P1080, 0, (word) PutPropInternal←P1020, 0, (word) PutPropOnList←P960, 0, (word) PutProp←P900, 0, (word) GetPropertyList←P840, 0, (word) MakeAtomFromRefText←P780, 0, (word) MakeAtomFromChars←P720, 0, (word) MakeAtomFromChar←P660, 0, (word) UnsafeMakeAtomFromString←P600, 0, (word) UnsafeMakeAtom←P540, 0, (word) MakeAtom←P480, 0, (word) EmptyAtom←P420, 0, (word) SetPropList←P360, 0, (word) GetPropList←P300, 0, (word) SetLink←P240, 0, (word) GetPName←P120, 0, (word) NewAtom←P60, 0, (word) AtomImpl←P0, {0} }; static void NoName←Q2736() { register ptr gf←c0236 = (ptr) &globalframe; word var←c17408; (* (( (ptr) gf←c0236)+14) ) = (word) XR←GetTypeIndex((word) &string1, 0, (word) &string2); (* (( (ptr) gf←c0236)+17) ) = (word) XR←GetTypeIndexS((word) (&string3)); (* (( (ptr) gf←c0236)+18) ) = (word) XR←GetTypeIndex((word) &string4, 0, (word) &string5); (* (( (ptr) gf←c0236)+23) ) = (word) XR←GetTypeIndex((word) &string6, 0, (word) &string7); (* (( (ptr) gf←c0236)+24) ) = (word) XR←GetTypeIndex((word) &string8, 0, (word) &string7); (void) XR←DeclareGlobalFrame((word) "AtomImpl", &globalframe, (word) XR←GetTypeIndex((word) &string9, 0, (word) &string10) , (word) (( (bPt) gf←c0236)+320)/* var←c16192 */ ); var←c17408 = (word) XR←ImportInterface((word) "Rope", (word) XR←GetTypeIndexS((word) (&string11)), 43); (* (( (ptr) gf←c0236)+82)/* var←c16256 */ ) = var←c17408; (void) XR←ImportProcS(var←c17408, 67378177); (void) XR←ImportProcS(var←c17408, 67379457); (void) XR←ImportProcS(var←c17408, 67901955); (void) XR←ImportProcS(var←c17408, 67378689); var←c17408 = (word) XR←ImportInterface((word) "RopeHash", (word) XR←GetTypeIndexS((word) (&string12)), 2); (* (( (ptr) gf←c0236)+83)/* var←c17280 */ ) = var←c17408; (void) XR←ImportProcS(var←c17408, 67633154); var←c17408 = (word) XR←ExportInterface((word) "Atom", (word) XR←GetTypeIndexS((word) (&string13)), 16); (* (( (ptr) gf←c0236)+84)/* var←c17440 */ ) = var←c17408; (void) XR←ExportProcS(var←c17408, (word) (( (bPt) gf←c0236)+272)/* var←c16000 */ , 67108864); (void) XR←ExportProcS(var←c17408, (word) (( (bPt) gf←c0236)+264)/* var←c15968 */ , 67895555); (void) XR←ExportProcS(var←c17408, (word) (( (bPt) gf←c0236)+240)/* var←c15872 */ , 67371521); (void) XR←ExportProcS(var←c17408, (word) (( (bPt) gf←c0236)+232)/* var←c15840 */ , 67371777); (void) XR←ExportProcS(var←c17408, (word) (( (bPt) gf←c0236)+224)/* var←c15808 */ , 67372033); (void) XR←ExportProcS(var←c17408, (word) (( (bPt) gf←c0236)+304)/* var←c16128 */ , 67372289); (void) XR←ExportProcS(var←c17408, (word) (( (bPt) gf←c0236)+216)/* var←c15776 */ , 67372545); (void) XR←ExportProcS(var←c17408, (word) (( (bPt) gf←c0236)+184)/* var←c15648 */ , 67634946); (void) XR←ExportProcS(var←c17408, (word) (( (bPt) gf←c0236)+176)/* var←c15616 */ , 67635202); (void) XR←ExportProcS(var←c17408, (word) (( (bPt) gf←c0236)+208)/* var←c15744 */ , 788739); (void) XR←ExportProcS(var←c17408, (word) (( (bPt) gf←c0236)+200)/* var←c15712 */ , 67897859); (void) XR←ExportProcS(var←c17408, (word) (( (bPt) gf←c0236)+168)/* var←c15584 */ , 527106); (void) XR←ExportProcS(var←c17408, (word) (( (bPt) gf←c0236)+160)/* var←c15552 */ , 67636226); (void) XR←ExportProcS(var←c17408, (word) (( (bPt) gf←c0236)+144)/* var←c15488 */ , 265473); (void) XR←ExportProcS(var←c17408, (word) (( (bPt) gf←c0236)+136)/* var←c15456 */ , 67374593); (void) XR←ExportVar(var←c17408, 15, (word) (( (bPt) gf←c0236)+100)/* var←c15296 */ ); var←c17408 = (word) XR←ExportInterface((word) "AtomPrivate", (word) XR←GetTypeIndexS((word) (&string14)), 2); (* (( (ptr) gf←c0236)+84)/* var←c17440 */ ) = var←c17408; (void) XR←ExportProcS(var←c17408, (word) (( (bPt) gf←c0236)+256)/* var←c15936 */ , 67371009); (void) XR←ExportProcS(var←c17408, (word) (( (bPt) gf←c0236)+248)/* var←c15904 */ , 67371265); } static void AtomImpl←P0(formal←c060, formal←c059) word formal←c060; word formal←c059; { register ptr gf←c17472 = (ptr) &globalframe; /* AtomImpl: */ SOURCE(343, 7778) SOURCE(571, 81) (* (( (ptr) gf←c17472)+8)/* typeOfATOMReferent←v2832 */ ) = (word) XR←GetTypeIndex((word) &string3, 0, 0); SOURCE(975, 57) (* (( (ptr) gf←c17472)+9)/* atomDictionary←v3056 */ ) = XR←NewObject(16372, (* (( (ptr) gf←c17472)+14) )); SOURCE(1071, 38) { word pd15; pd15 = (* (( (ptr) (* (( (ptr) gf←c17472)+82)/* var←c16256 */ ))+34) ); (* (( (ptr) gf←c17472)+10)/* emptyRope←v3112 */ ) = (word) ( *( (fPt) ((* (ptr) pd15 ))))(0, pd15); }; SOURCE(8088, 33) (* (( (ptr) gf←c17472)+11)/* emptyAtom←v3140 */ ) = (word) MakeAtom←P480((* (( (ptr) gf←c17472)+10)/* emptyRope←v3112 */ ), 0, 2147483647) ; } static word NewAtom←P60(pName←v4488) word pName←v4488; { register ptr gf←c17504 = (ptr) &globalframe; word atom←v4548; /* NewAtom: */ SOURCE(1308, 215) SOURCE(1308, 215) atom←v4548 = 0; SOURCE(1360, 98) atom←v4548 = XR←Narrow((word) XR←NewObject(12, (* (( (ptr) gf←c17504)+8)/* typeOfATOMReferent←v2832 */ )), (* (( (ptr) gf←c17504)+17) )); SOURCE(1468, 55) SOURCE(1470, 53) { word var←c16288; { word var←c16320; var←c16320 = XR←Narrow(pName←v4488, (* (( (ptr) gf←c17504)+18) )); if ((var←c16320 == 0)) { goto lab←L100000; }; { word tc16; if (((*(int*)var←c16320<0) == 0)) { tc16 = (word) ((*(( short *)var←c16320 + 1)<0) == 0); } else { tc16 = (word) 0; }; if (tc16) { goto lab←L100000; }; }; (void) XR←RaiseError(XR←NarrowFault, 0); lab←L100000: ; var←c16288 = var←c16320; }; (* (ptr) atom←v4548 ) = var←c16288; (* (( (ptr) atom←v4548)+1) ) = 0; (* (( (ptr) atom←v4548)+2) ) = 0; }; SOURCE(1308, 215) return(atom←v4548); } static word GetPName←P120(atom←v4608) word atom←v4608; { register ptr gf←c17536 = (ptr) &globalframe; word var←c4652; /* GetPName: */ SOURCE(1530, 148) SOURCE(1597, 37) if ((atom←v4608 == 0)) { SOURCE(1616, 18) (void) XR←RaiseError((word) (( (bPt) gf←c17536)+100)/* var←c15296 */ , 0); }; SOURCE(1636, 42) return((* (ptr) atom←v4608 )); } static void SetLink←P240(atom←v4816, link←v4844) word atom←v4816; word link←v4844; { /* SetLink: */ SOURCE(1797, 98) SOURCE(1857, 38) (* (( (ptr) atom←v4816)+2) ) = link←v4844; } static word GetPropList←P300(atom←v4904) word atom←v4904; { word var←c4948; /* GetPropList: */ SOURCE(1901, 115) SOURCE(1971, 45) return((* (( (ptr) atom←v4904)+1) )); } static void SetPropList←P360(atom←v5020, propList←v5048) word atom←v5020; word propList←v5048; { /* SetPropList: */ SOURCE(2020, 119) SOURCE(2092, 47) (* (( (ptr) atom←v5020)+1) ) = propList←v5048; } static word EmptyAtom←P420() { register ptr gf←c17568 = (ptr) &globalframe; word var←c5108; /* EmptyAtom: */ SOURCE(2142, 60) SOURCE(2184, 18) return((* (( (ptr) gf←c17568)+11)/* emptyAtom←v3140 */ )); } static word MakeAtom←P480(formal←c0317, formal←c0318, formal←c0319) word formal←c0317; word formal←c0318; word formal←c0319; { W8 var←c17600; /* declaration of pName←v5168 skipped */ /* declaration of start←v5196 skipped */ /* declaration of len←v5224 skipped */ register ptr gf←c17632 = (ptr) &globalframe; /* declaration of var←c01 skipped */ word var←c5268; var←c17600.f4/* pName←v5168 */ = formal←c0317; var←c17600.f5/* start←v5196 */ = formal←c0318; var←c17600.f6/* len←v5224 */ = formal←c0319; /* MakeAtom: */ SOURCE(2208, 433) (void) (XR←MonitorEntry((word) (( (bPt) gf←c17632)+16)/* LOCK←v2776 */ )); SOURCE(2311, 330) { word var←c02; { word var←c0286; var←c0286 = (word) &var←c17600; var←c02 = (word) XR←Enable(( ((word) (fPt) NoName←Q2796) ), ( ((word) (fPt) NoName←Q3936) ), var←c0286); }; /* removed trivial cond node */ }; return(var←c17600.f7/* var←c01 */ ); } static word NoName←Q2796(formal←c0243) word formal←c0243; { register ptr gf←c0242 = (ptr) &globalframe; SOURCE(2337, 46) { word t←v8112; word this←v8140 = 0; word prev←v8168 = 0; word hash←v8196 = 0; SOURCE(2337, 46) { word pd17; pd17 = (* (( (ptr) (* (( (ptr) gf←c0242)+82)/* var←c16256 */ ))+30) ); t←v8112 = (word) ( *( (fPt) ((* (ptr) pd17 ))))((* (( (ptr) formal←c0243)+4) ), (* (( (ptr) formal←c0243)+5) ), (* (( (ptr) formal←c0243)+6) ), pd17); }; SOURCE(2462, 29) if ((t←v8112 == 0)) { SOURCE(2478, 13) t←v8112 = (* (( (ptr) gf←c0242)+10)/* emptyRope←v3112 */ ); }; SOURCE(2493, 34) { W3 var←c16352; (void) LookUpAtom←P1560((word) &var←c16352, t←v8112); hash←v8196 = var←c16352.f2; prev←v8168 = var←c16352.f1; this←v8140 = var←c16352.f0; }; SOURCE(2529, 93) if ((this←v8140 == 0)) { SOURCE(2550, 24) this←v8140 = (word) NewAtom←P60(t←v8112); SOURCE(2576, 46) (void) InsertAtom←P1620(this←v8140, prev←v8168, hash←v8196); }; SOURCE(2627, 14) (void) (XR←MonitorExit((word) (( (bPt) gf←c0242)+16)/* LOCK←v2776 */ )); (* (( (ptr) formal←c0243)+7) ) = this←v8140; return(1); }; /* c2c skipped dead code */ } static word UnsafeMakeAtom←P540(formal←c0320) word formal←c0320; { W6 var←c17664; /* declaration of pName←v5328 skipped */ register ptr gf←c17696 = (ptr) &globalframe; /* declaration of var←c03 skipped */ word var←c5372; var←c17664.f4/* pName←v5328 */ = formal←c0320; /* UnsafeMakeAtom: */ SOURCE(2645, 592) (void) (XR←MonitorEntry((word) (( (bPt) gf←c17696)+16)/* LOCK←v2776 */ )); SOURCE(2733, 504) { word var←c04; { word var←c0287; var←c0287 = (word) &var←c17664; var←c04 = (word) XR←Enable(( ((word) (fPt) NoName←Q2856) ), ( ((word) (fPt) NoName←Q3876) ), var←c0287); }; /* removed trivial cond node */ }; return(var←c17664.f5/* var←c03 */ ); } static word NoName←Q2856(formal←c0246) word formal←c0246; { register ptr gf←c0245 = (ptr) &globalframe; SOURCE(2759, 16) { word this←v8240 = 0; word prev←v8268 = 0; word hash←v8296; SOURCE(2805, 38) if (((* (( (ptr) formal←c0246)+4) ) == 0)) { SOURCE(2825, 18) { word var←c16384; var←c16384 = (* (( (ptr) gf←c0245)+11)/* emptyAtom←v3140 */ ); (void) (XR←MonitorExit((word) (( (bPt) gf←c0245)+16)/* LOCK←v2776 */ )); (* (( (ptr) formal←c0246)+5) ) = var←c16384; return(1); }; }; SOURCE(2845, 59) { W3 var←c16416; (void) LookUpAtom←P1560((word) &var←c16416, (* (( (ptr) formal←c0246)+4) )); hash←v8296 = var←c16416.f2; prev←v8268 = var←c16416.f1; this←v8240 = var←c16416.f0; }; SOURCE(2906, 312) if ((this←v8240 == 0)) { SOURCE(2925, 295) { word rt←v8340; SOURCE(2927, 42) { word pd18; pd18 = (* (( (ptr) (* (( (ptr) gf←c0245)+82)/* var←c16256 */ ))+34) ); rt←v8340 = (word) ( *( (fPt) ((* (ptr) pd18 ))))((* (hPt) (* (( (ptr) formal←c0246)+4) ) ), pd18); }; SOURCE(2971, 172) (void) Basics←CopyBytes((rt←v8340 + 4), 0, ((* (( (ptr) formal←c0246)+4) ) + 4), 0, (* (hPt) (* (( (ptr) formal←c0246)+4) ) )); SOURCE(3145, 25) this←v8240 = (word) NewAtom←P60(rt←v8340); SOURCE(3172, 46) (void) InsertAtom←P1620(this←v8240, prev←v8268, hash←v8296); }; }; SOURCE(3223, 14) (void) (XR←MonitorExit((word) (( (bPt) gf←c0245)+16)/* LOCK←v2776 */ )); (* (( (ptr) formal←c0246)+5) ) = this←v8240; return(1); }; /* c2c skipped dead code */ } static word UnsafeMakeAtomFromString←P600(pName←v5432) word pName←v5432; { word var←c5476; /* UnsafeMakeAtomFromString: */ SOURCE(3241, 129) SOURCE(3331, 39) return((word) UnsafeMakeAtom←P540(pName←v5432)); } static word MakeAtomFromChar←P660(char←v5536) word char←v5536; { register ptr gf←c17728 = (ptr) &globalframe; word var←c5580; /* MakeAtomFromChar: */ SOURCE(3376, 100) SOURCE(3438, 38) { word var←c16512; { word pd19; pd19 = (* (( (ptr) (* (( (ptr) gf←c17728)+82)/* var←c16256 */ ))+37) ); var←c16512 = (word) ( *( (fPt) ((* (ptr) pd19 ))))(char←v5536, pd19); }; return((word) MakeAtom←P480(var←c16512, 0, 2147483647)); }; } static word MakeAtomFromChars←P720(genChars←v5640) word genChars←v5640; { register ptr gf←c17760 = (ptr) &globalframe; word var←c5804; /* MakeAtomFromChars: */ SOURCE(3482, 124) SOURCE(3563, 43) { word var←c16576; { word pd20; pd20 = (* (( (ptr) (* (( (ptr) gf←c17760)+82)/* var←c16256 */ ))+32) ); var←c16576 = (word) ( *( (fPt) ((* (ptr) pd20 ))))(genChars←v5640, pd20); }; return((word) MakeAtom←P480(var←c16576, 0, 2147483647)); }; } static word MakeAtomFromRefText←P780(rt←v5864) word rt←v5864; { word var←c5920; /* MakeAtomFromRefText: */ SOURCE(3612, 122) SOURCE(3696, 38) return((word) UnsafeMakeAtom←P540(rt←v5864)); } static word GetPropertyList←P840(formal←c0321) word formal←c0321; { W6 var←c17792; /* declaration of atom←v5980 skipped */ register ptr gf←c17824 = (ptr) &globalframe; /* declaration of var←c05 skipped */ word var←c6024; var←c17792.f4/* atom←v5980 */ = formal←c0321; /* GetPropertyList: */ SOURCE(3738, 197) (void) (XR←MonitorEntry((word) (( (bPt) gf←c17824)+16)/* LOCK←v2776 */ )); SOURCE(3738, 197) var←c6024 = 0; SOURCE(3816, 119) { word var←c06; { word var←c0288; var←c0288 = (word) &var←c17792; var←c06 = (word) XR←Enable(( ((word) (fPt) NoName←Q2916) ), ( ((word) (fPt) NoName←Q3816) ), var←c0288); }; if ((var←c06 == 1)) { goto lab←L06; }; }; SOURCE(3738, 197) (void) (XR←MonitorExit((word) (( (bPt) gf←c17824)+16)/* LOCK←v2776 */ )); return(var←c6024); lab←L06: ; return(var←c17792.f5/* var←c05 */ ); } static word NoName←Q2916(formal←c0251) word formal←c0251; { register ptr gf←c0250 = (ptr) &globalframe; SOURCE(3842, 93) if (((* (( (ptr) formal←c0251)+4) ) != 0)) { SOURCE(3861, 74) { word var←c16640; var←c16640 = (word) GetPropList←P300((* ((( (ptr) formal←c0251)+4)) )); if ((var←c16640 == 0)) { goto lab←L100007; }; if (((* (( (ptr) gf←c0250)+23) ) == XR←GetReferentType(var←c16640))) { { word propList←v8384; propList←v8384 = var←c16640; SOURCE(3918, 17) (void) (XR←MonitorExit((word) (( (bPt) gf←c0250)+16)/* LOCK←v2776 */ )); (* (( (ptr) formal←c0251)+5) ) = propList←v8384; return(1); }; } else { lab←L100007: ; }; }; }; return(0); } static void PutProp←P900(formal←c0322, formal←c0323, formal←c0324) word formal←c0322; word formal←c0323; word formal←c0324; { W8 var←c17856; /* declaration of atom←v6084 skipped */ /* declaration of prop←v6112 skipped */ /* declaration of val←v6140 skipped */ register ptr gf←c17888 = (ptr) &globalframe; /* declaration of var←c16672 skipped */ var←c17856.f4/* atom←v6084 */ = formal←c0322; var←c17856.f5/* prop←v6112 */ = formal←c0323; var←c17856.f6/* val←v6140 */ = formal←c0324; /* PutProp: */ SOURCE(3950, 223) (void) (XR←MonitorEntry((word) (( (bPt) gf←c17888)+16)/* LOCK←v2776 */ )); SOURCE(4016, 157) { word var←c07; { word var←c0289; var←c0289 = (word) &var←c17856; var←c07 = (word) XR←Enable(( ((word) (fPt) NoName←Q2976) ), ( ((word) (fPt) NoName←Q3756) ), var←c0289); }; if ((var←c07 == 2)) { goto lab←L100010; }; }; SOURCE(3950, 223) (void) (XR←MonitorExit((word) (( (bPt) gf←c17888)+16)/* LOCK←v2776 */ )); return; /* c2c skipped dead code */ lab←L100010: ; SOURCE(4061, 30) (void) XR←RaiseError(var←c17856.f7/* var←c16672 */ , 0); } static word NoName←Q2976(formal←c0254) word formal←c0254; { register ptr gf←c0253 = (ptr) &globalframe; SOURCE(4042, 49) if (((* (( (ptr) formal←c0254)+4) ) == 0)) { SOURCE(4061, 30) (* (( (ptr) formal←c0254)+7) ) = (word) (( (bPt) gf←c0253)+100)/* var←c15296 */ ; (void) (XR←MonitorExit((word) (( (bPt) gf←c0253)+16)/* LOCK←v2776 */ )); return(2); }; SOURCE(4093, 80) { word var←c16704; { word var←c16736; var←c16736 = (word) GetPropList←P300((* ((( (ptr) formal←c0254)+4)) )); var←c16704 = (word) PutPropInternal←P1020(var←c16736, (* (( (ptr) formal←c0254)+5) ), (* (( (ptr) formal←c0254)+6) )); }; (void) SetPropList←P360((* (( (ptr) formal←c0254)+4) ), var←c16704); }; return(0); } static word PutPropOnList←P960(formal←c0325, formal←c0326, formal←c0327) word formal←c0325; word formal←c0326; word formal←c0327; { W8 var←c17920; /* declaration of propList←v6224 skipped */ /* declaration of prop←v6252 skipped */ /* declaration of val←v6280 skipped */ register ptr gf←c17952 = (ptr) &globalframe; /* declaration of var←c08 skipped */ word var←c6348; var←c17920.f4/* propList←v6224 */ = formal←c0325; var←c17920.f5/* prop←v6252 */ = formal←c0326; var←c17920.f6/* val←v6280 */ = formal←c0327; /* PutPropOnList: */ SOURCE(4179, 170) (void) (XR←MonitorEntry((word) (( (bPt) gf←c17952)+16)/* LOCK←v2776 */ )); SOURCE(4278, 71) { word var←c09; { word var←c0290; var←c0290 = (word) &var←c17920; var←c09 = (word) XR←Enable(( ((word) (fPt) NoName←Q3036) ), ( ((word) (fPt) NoName←Q3696) ), var←c0290); }; /* removed trivial cond node */ }; return(var←c17920.f7/* var←c08 */ ); } static word NoName←Q3036(formal←c0257) word formal←c0257; { register ptr gf←c0256 = (ptr) &globalframe; SOURCE(4304, 45) { word var←c16768; var←c16768 = (word) PutPropInternal←P1020((* (( (ptr) formal←c0257)+4) ), (* (( (ptr) formal←c0257)+5) ), (* (( (ptr) formal←c0257)+6) )); (void) (XR←MonitorExit((word) (( (bPt) gf←c0256)+16)/* LOCK←v2776 */ )); (* (( (ptr) formal←c0257)+7) ) = var←c16768; return(1); }; /* c2c skipped dead code */ } static word PutPropInternal←P1020(ref←v6408, prop←v6436, val←v6464) word ref←v6408; word prop←v6436; word val←v6464; { register ptr gf←c17984 = (ptr) &globalframe; word var←c6544; word propList←v8428 = 0; word lst←v8456 = 0; word lag←v8484 = 0; /* PutPropInternal: */ SOURCE(4355, 517) SOURCE(4510, 228) { word var←c16800; var←c16800 = ref←v6408; if ((var←c16800 == 0)) { goto lab←L100014; }; if (((* (( (ptr) gf←c17984)+23) ) == XR←GetReferentType(var←c16800))) { { word pl←v8528; pl←v8528 = var←c16800; SOURCE(4549, 19) lst←v8456 = pl←v8528; propList←v8428 = pl←v8528; SOURCE(4570, 118) lab←L100017: ; if ((lst←v8456 != 0)) { } else { goto lab←L100015; }; SOURCE(4589, 69) if (((* (ptr) (* (ptr) lst←v8456 ) ) == prop←v6436)) { SOURCE(4620, 19) (* (( (ptr) (* (ptr) lst←v8456 ))+1) ) = val←v6464; SOURCE(4641, 17) return(propList←v8428); }; SOURCE(4663, 9) lag←v8484 = lst←v8456; SOURCE(4674, 14) lst←v8456 = (* (( (ptr) lst←v8456)+1) ); goto lab←L100017; lab←L100015: ; }; } else { lab←L100014: ; SOURCE(4713, 25) if ((ref←v6408 != 0)) { SOURCE(4731, 7) (void) Crash←P1740(); }; }; }; SOURCE(4740, 65) { word var←c16864; word var←c16928; { word var←c16896; var←c16896 = XR←NewObject(8, (* (( (ptr) gf←c17984)+24) )); (* (ptr) var←c16896 ) = prop←v6436; (* (( (ptr) var←c16896)+1) ) = val←v6464; var←c16864 = var←c16896; }; var←c16928 = XR←NewObject(8, (* (( (ptr) gf←c17984)+23) )); (* (ptr) var←c16928 ) = var←c16864; lst←v8456 = var←c16928; }; SOURCE(4807, 30) if ((lag←v8484 == 0)) { SOURCE(4825, 12) return(lst←v8456); }; SOURCE(4839, 14) (* (( (ptr) lag←v8484)+1) ) = lst←v8456; SOURCE(4855, 17) return(propList←v8428); } static word GetProp←P1080(formal←c0328, formal←c0329) word formal←c0328; word formal←c0329; { W7 var←c18016; /* declaration of atom←v6604 skipped */ /* declaration of prop←v6632 skipped */ register ptr gf←c18048 = (ptr) &globalframe; /* declaration of var←c010 skipped */ word var←c6688; var←c18016.f4/* atom←v6604 */ = formal←c0328; var←c18016.f5/* prop←v6632 */ = formal←c0329; /* GetProp: */ SOURCE(4878, 259) (void) (XR←MonitorEntry((word) (( (bPt) gf←c18048)+16)/* LOCK←v2776 */ )); SOURCE(4878, 259) var←c6688 = 0; SOURCE(4953, 184) { word var←c011; { word var←c0291; var←c0291 = (word) &var←c18016; var←c011 = (word) XR←Enable(( ((word) (fPt) NoName←Q3096) ), ( ((word) (fPt) NoName←Q3636) ), var←c0291); }; if ((var←c011 == 1)) { goto lab←L011; }; }; SOURCE(4878, 259) (void) (XR←MonitorExit((word) (( (bPt) gf←c18048)+16)/* LOCK←v2776 */ )); return(var←c6688); lab←L011: ; return(var←c18016.f6/* var←c010 */ ); } static word NoName←Q3096(formal←c0261) word formal←c0261; { register ptr gf←c0260 = (ptr) &globalframe; SOURCE(4979, 158) if (((* (( (ptr) formal←c0261)+4) ) != 0)) { SOURCE(4999, 138) { word var←c16960; var←c16960 = (word) GetPropList←P300((* ((( (ptr) formal←c0261)+4)) )); if ((var←c16960 == 0)) { goto lab←L100020; }; if (((* (( (ptr) gf←c0260)+23) ) == XR←GetReferentType(var←c16960))) { { word lst←v8572; lst←v8572 = var←c16960; SOURCE(5051, 86) lab←L100023: ; if ((lst←v8572 != 0)) { } else { goto lab←L100021; }; SOURCE(5070, 51) if (((* (ptr) (* (ptr) lst←v8572 ) ) == (* (( (ptr) formal←c0261)+5) ))) { SOURCE(5099, 22) { word var←c16992; var←c16992 = (* (( (ptr) (* (ptr) lst←v8572 ))+1) ); (void) (XR←MonitorExit((word) (( (bPt) gf←c0260)+16)/* LOCK←v2776 */ )); (* (( (ptr) formal←c0261)+6) ) = var←c16992; return(1); }; }; SOURCE(5123, 14) lst←v8572 = (* (( (ptr) lst←v8572)+1) ); goto lab←L100023; lab←L100021: ; }; } else { lab←L100020: ; }; }; }; return(0); } static word GetPropFromList←P1140(formal←c0330, formal←c0331) word formal←c0330; word formal←c0331; { W7 var←c18080; /* declaration of propList←v6760 skipped */ /* declaration of prop←v6788 skipped */ register ptr gf←c18112 = (ptr) &globalframe; /* declaration of var←c012 skipped */ word var←c6844; var←c18080.f4/* propList←v6760 */ = formal←c0330; var←c18080.f5/* prop←v6788 */ = formal←c0331; /* GetPropFromList: */ SOURCE(5161, 226) (void) (XR←MonitorEntry((word) (( (bPt) gf←c18112)+16)/* LOCK←v2776 */ )); SOURCE(5161, 226) var←c6844 = 0; SOURCE(5252, 135) { word var←c013; { word var←c0292; var←c0292 = (word) &var←c18080; var←c013 = (word) XR←Enable(( ((word) (fPt) NoName←Q3156) ), ( ((word) (fPt) NoName←Q3576) ), var←c0292); }; if ((var←c013 == 1)) { goto lab←L013; }; }; SOURCE(5161, 226) (void) (XR←MonitorExit((word) (( (bPt) gf←c18112)+16)/* LOCK←v2776 */ )); return(var←c6844); lab←L013: ; return(var←c18080.f6/* var←c012 */ ); } static word NoName←Q3156(formal←c0264) word formal←c0264; { register ptr gf←c0263 = (ptr) &globalframe; SOURCE(5278, 109) { register word lst←v8616; lst←v8616 = (* (( (ptr) formal←c0264)+4) ); lab←L100029: ; if ((lst←v8616 != 0)) { } else { goto lab←L100026; }; SOURCE(5336, 51) if (((* (ptr) (* (ptr) lst←v8616 ) ) == (* (( (ptr) formal←c0264)+5) ))) { SOURCE(5365, 22) { word var←c17024; var←c17024 = (* (( (ptr) (* (ptr) lst←v8616 ))+1) ); (void) (XR←MonitorExit((word) (( (bPt) gf←c0263)+16)/* LOCK←v2776 */ )); (* (( (ptr) formal←c0264)+6) ) = var←c17024; return(1); }; }; lst←v8616 = (* (( (ptr) lst←v8616)+1) ); goto lab←L100029; lab←L100026: ; }; return(0); } static void RemProp←P1200(formal←c0332, formal←c0333) word formal←c0332; word formal←c0333; { W6 var←c18144; /* declaration of atom←v6916 skipped */ /* declaration of prop←v6944 skipped */ register ptr gf←c18176 = (ptr) &globalframe; var←c18144.f4/* atom←v6916 */ = formal←c0332; var←c18144.f5/* prop←v6944 */ = formal←c0333; /* RemProp: */ SOURCE(5402, 159) (void) (XR←MonitorEntry((word) (( (bPt) gf←c18176)+16)/* LOCK←v2776 */ )); SOURCE(5457, 104) { word var←c0293; var←c0293 = (word) &var←c18144; (void) (word) XR←Enable(( ((word) (fPt) NoName←Q3216) ), ( ((word) (fPt) NoName←Q3516) ), var←c0293); }; SOURCE(5402, 159) (void) (XR←MonitorExit((word) (( (bPt) gf←c18176)+16)/* LOCK←v2776 */ )); return; } static word NoName←Q3216(formal←c0266) word formal←c0266; { SOURCE(5483, 78) if (((* (( (ptr) formal←c0266)+4) ) != 0)) { SOURCE(5502, 59) { word var←c17056; { word var←c17088; var←c17088 = (word) GetPropList←P300((* ((( (ptr) formal←c0266)+4)) )); var←c17056 = (word) RemPropInternal←P1320(var←c17088, (* (( (ptr) formal←c0266)+5) )); }; (void) SetPropList←P360((* (( (ptr) formal←c0266)+4) ), var←c17056); }; }; return(0); } static word RemPropFromList←P1260(formal←c0334, formal←c0335) word formal←c0334; word formal←c0335; { W7 var←c18208; /* declaration of propList←v7016 skipped */ /* declaration of prop←v7044 skipped */ register ptr gf←c18240 = (ptr) &globalframe; /* declaration of var←c014 skipped */ word var←c7100; var←c18208.f4/* propList←v7016 */ = formal←c0334; var←c18208.f5/* prop←v7044 */ = formal←c0335; /* RemPropFromList: */ SOURCE(5567, 156) (void) (XR←MonitorEntry((word) (( (bPt) gf←c18240)+16)/* LOCK←v2776 */ )); SOURCE(5657, 66) { word var←c015; { word var←c0294; var←c0294 = (word) &var←c18208; var←c015 = (word) XR←Enable(( ((word) (fPt) NoName←Q3276) ), ( ((word) (fPt) NoName←Q3456) ), var←c0294); }; /* removed trivial cond node */ }; return(var←c18208.f6/* var←c014 */ ); } static word NoName←Q3276(formal←c0269) word formal←c0269; { register ptr gf←c0268 = (ptr) &globalframe; SOURCE(5683, 40) { word var←c17120; var←c17120 = (word) RemPropInternal←P1320((* (( (ptr) formal←c0269)+4) ), (* (( (ptr) formal←c0269)+5) )); (void) (XR←MonitorExit((word) (( (bPt) gf←c0268)+16)/* LOCK←v2776 */ )); (* (( (ptr) formal←c0269)+6) ) = var←c17120; return(1); }; /* c2c skipped dead code */ } static word RemPropInternal←P1320(ref←v7160, prop←v7188) word ref←v7160; word prop←v7188; { register ptr gf←c18272 = (ptr) &globalframe; word var←c7256; /* RemPropInternal: */ SOURCE(5729, 372) SOURCE(5729, 372) var←c7256 = 0; SOURCE(5811, 290) { word var←c17152; var←c17152 = ref←v7160; if ((var←c17152 == 0)) { goto lab←L100034; }; if (((* (( (ptr) gf←c18272)+23) ) == XR←GetReferentType(var←c17152))) { { word propList←v8660; propList←v8660 = var←c17152; SOURCE(5854, 249) { word lst←v8704; word lag←v8732 = 0; SOURCE(5856, 24) lst←v8704 = propList←v8660; SOURCE(5903, 170) lab←L100037: ; if ((lst←v8704 != 0)) { } else { goto lab←L100035; }; { word rest←v8776; SOURCE(5922, 25) rest←v8776 = (* (( (ptr) lst←v8704)+1) ); SOURCE(5949, 98) if (((* (ptr) (* (ptr) lst←v8704 ) ) == prop←v7188)) { SOURCE(5980, 31) if ((lag←v8732 == 0)) { SOURCE(5998, 13) return(rest←v8776); }; SOURCE(6013, 15) (* (( (ptr) lag←v8732)+1) ) = rest←v8776; SOURCE(6030, 17) return(propList←v8660); }; SOURCE(6052, 9) lag←v8732 = lst←v8704; SOURCE(6063, 10) lst←v8704 = rest←v8776; }; goto lab←L100037; lab←L100035: ; SOURCE(6084, 17) return(propList←v8660); }; }; } else { lab←L100034: ; }; }; SOURCE(5729, 372) return(var←c7256); } static void MapAtoms←P1380(proc←v7316) word proc←v7316; { /* MapAtoms: */ SOURCE(6120, 121) SOURCE(6172, 69) { register word atom←v8820; atom←v8820 = (word) Next←P1500(0); lab←L100041: ; if ((atom←v8820 != 0)) { } else { goto lab←L100038; }; SOURCE(6231, 10) (void) ( *( (fPt) ((* (ptr) proc←v7316 ))))(atom←v8820, proc←v7316); atom←v8820 = (word) Next←P1500(atom←v8820); goto lab←L100041; lab←L100038: ; }; } static word FindAtom←P1440(proc←v7436) word proc←v7436; { word var←c7584; /* FindAtom: */ SOURCE(6256, 228) SOURCE(6370, 91) { register word atom←v8864; atom←v8864 = (word) Next←P1500(0); lab←L100045: ; if ((atom←v8864 != 0)) { } else { goto lab←L100042; }; SOURCE(6429, 32) if ((0 != (word) ( *( (fPt) ((* (ptr) proc←v7436 ))))(atom←v8864, proc←v7436))) { SOURCE(6448, 13) return(atom←v8864); }; atom←v8864 = (word) Next←P1500(atom←v8864); goto lab←L100045; lab←L100042: ; }; SOURCE(6472, 12) return(0); } static word Next←P1500(formal←c0336) word formal←c0336; { W7 var←c18304; /* declaration of atom←v7644 skipped */ register ptr gf←c18336 = (ptr) &globalframe; /* declaration of var←c016 skipped */ /* declaration of rtn←v7688 skipped */ var←c18304.f4/* atom←v7644 */ = formal←c0336; /* Next: */ SOURCE(6490, 340) (void) (XR←MonitorEntry((word) (( (bPt) gf←c18336)+16)/* LOCK←v2776 */ )); SOURCE(6490, 340) var←c18304.f6/* rtn←v7688 */ = 0; SOURCE(6564, 266) { word var←c017; { word var←c0295; var←c0295 = (word) &var←c18304; var←c017 = (word) XR←Enable(( ((word) (fPt) NoName←Q3336) ), ( ((word) (fPt) NoName←Q3396) ), var←c0295); }; if ((var←c017 == 1)) { goto lab←L018; }; }; SOURCE(6490, 340) (void) (XR←MonitorExit((word) (( (bPt) gf←c18336)+16)/* LOCK←v2776 */ )); return(var←c18304.f6/* rtn←v7688 */ ); lab←L018: ; return(var←c18304.f5/* var←c016 */ ); } static word NoName←Q3336(formal←c0273) word formal←c0273; { register ptr gf←c0272 = (ptr) &globalframe; SOURCE(6590, 18) { word hash←v8908 = 0; if (((* (( (ptr) formal←c0273)+4) ) == 0)) { } else { if (((* (( (ptr) (* (( (ptr) formal←c0273)+4) ))+2) ) != 0)) { SOURCE(6668, 22) { word var←c17184; var←c17184 = (* (( (ptr) (* (( (ptr) formal←c0273)+4) ))+2) ); (void) (XR←MonitorExit((word) (( (bPt) gf←c0272)+16)/* LOCK←v2776 */ )); (* (( (ptr) formal←c0273)+5) ) = var←c17184; return(1); }; } else { SOURCE(6703, 31) { word var←c17216; word s←v15248; s←v15248 = (word) GetPName←P120((* ((( (ptr) formal←c0273)+4)) )); SOURCE(7941, 55) { word pd21; pd21 = (* (( (ptr) (* (( (ptr) gf←c0272)+83)/* var←c17280 */ ))+4) ); var←c17216 = ((word) ( *( (fPt) ((* (ptr) pd21 ))))(s←v15248, 31415, pd21) % 4093); }; hash←v8908 = (var←c17216 + 1); }; }; }; SOURCE(6736, 94) lab←L100051: ; if ((hash←v8908 < 4093)) { } else { goto lab←L100049; }; SOURCE(6761, 26) { word x22; (* (( (ptr) formal←c0273)+6) ) = (* (( (ptr) ( x22 = (* (( (ptr) gf←c0272)+9)/* atomDictionary←v3056 */ ), NCK((* (bPt) x22 )), x22 ))+BCK(hash←v8908, 4093)) ); }; SOURCE(6789, 24) if (((* (( (ptr) formal←c0273)+6) ) != 0)) { SOURCE(6807, 6) (void) (XR←MonitorExit((word) (( (bPt) gf←c0272)+16)/* LOCK←v2776 */ )); (* (( (ptr) formal←c0273)+5) ) = (* (( (ptr) formal←c0273)+6) ); return(1); }; SOURCE(6815, 15) hash←v8908 = (hash←v8908 + 1); goto lab←L100051; lab←L100049: ; }; return(0); } static void LookUpAtom←P1560(formal←c0182, s←v7748) word formal←c0182; word s←v7748; { register ptr gf←c18368 = (ptr) &globalframe; register word atom←v7792; word prev←v7820; word hash←v7848; word len←v8952; /* LookUpAtom: */ SOURCE(6845, 698) SOURCE(6845, 698) atom←v7792 = 0; SOURCE(6845, 698) prev←v7820 = 0; SOURCE(6970, 24) len←v8952 = ( (((unsigned)(* (hPt) s←v7748 ) << 17) >> 17) ); SOURCE(6996, 14) { word pd23; pd23 = (* (( (ptr) (* (( (ptr) gf←c18368)+83)/* var←c17280 */ ))+4) ); hash←v7848 = ((word) ( *( (fPt) ((* (ptr) pd23 ))))(s←v7748, 31415, pd23) % 4093); }; SOURCE(7012, 531) { word x24; atom←v7792 = (* (( (ptr) ( x24 = (* (( (ptr) gf←c18368)+9)/* atomDictionary←v3056 */ ), NCK((* (bPt) x24 )), x24 ))+hash←v7848) ); }; lab←L100056: ; if ((atom←v7792 != 0)) { } else { goto lab←L100053; }; { word r←v8996; SOURCE(7079, 29) r←v8996 = (word) GetPName←P120(atom←v7792); SOURCE(7110, 419) if ((len←v8952 == ( (((unsigned)(* (hPt) r←v8996 ) << 17) >> 17) ))) { SOURCE(7133, 396) SOURCE(7135, 16) { word excess←v9040; word lp←v9068; word rp←v9096; SOURCE(7153, 50) lp←v9068 = (s←v7748 + 4); SOURCE(7205, 50) rp←v9096 = (r←v8996 + 4); SOURCE(7257, 75) { register word i←v9140 = 0; register word noName←c17312; noName←c17312 = (len←v8952 >> 2); if ((i←v9140 >= noName←c17312)) { goto lab←L100058; }; lab←L100061: ; SOURCE(7310, 22) if (((* (( (ptr) lp←v9068)+i←v9140) ) != (* (( (ptr) rp←v9096)+i←v9140) ))) { SOURCE(7332, 14) goto lab←L100057; }; i←v9140 = (i←v9140 + 1); if ((i←v9140 < noName←c17312)) { goto lab←L100061; }; lab←L100058: ; }; SOURCE(7357, 36) excess←v9040 = (len←v8952 & 3); SOURCE(7395, 93) lab←L100064: ; if ((excess←v9040 != 0)) { } else { goto lab←L100062; }; { word var←c17344; word var←c0296; word var←c17376; SOURCE(7415, 38) { word limit26; var←c17344 = (len←v8952 - excess←v9040); { word limit25; var←c0296 = (word) (* ((( (bPt) s←v7748)+4)+( limit25 = (word) ( (((unsigned)(* (( (hPt) s←v7748)+1) ) << 17) >> 17) ), BCK(var←c17344, limit25) )) ); }; var←c17376 = (len←v8952 - excess←v9040); if ((var←c0296 != (word) (* ((( (bPt) r←v8996)+4)+( limit26 = (word) ( (((unsigned)(* (( (hPt) r←v8996)+1) ) << 17) >> 17) ), BCK(var←c17376, limit26) )) ))) { SOURCE(7453, 14) goto lab←L100057; }; }; SOURCE(7469, 19) excess←v9040 = (excess←v9040 - 1); }; goto lab←L100064; lab←L100062: ; SOURCE(7499, 6) goto lab←L100052; }; /* c2c skipped dead code */ lab←L100057: ; }; SOURCE(7532, 11) prev←v7820 = atom←v7792; }; atom←v7792 = (* (( (ptr) atom←v7792)+2) ); goto lab←L100056; lab←L100053: ; /* removed tail goto */ lab←L100052: ; (* (ptr) formal←c0182 ) = atom←v7792; (* (( (ptr) formal←c0182)+1) ) = prev←v7820; (* (( (ptr) formal←c0182)+2) ) = hash←v7848; return; } static void InsertAtom←P1620(this←v7908, prev←v7936, hash←v7964) word this←v7908; word prev←v7936; word hash←v7964; { register ptr gf←c18400 = (ptr) &globalframe; /* InsertAtom: */ SOURCE(7558, 293) SOURCE(7648, 173) if ((prev←v7936 == 0)) { SOURCE(7669, 35) { word x27; (void) SetLink←P240(this←v7908, (* (( (ptr) ( x27 = (* (( (ptr) gf←c18400)+9)/* atomDictionary←v3056 */ ), NCK((* (bPt) x27 )), x27 ))+hash←v7964) )); }; SOURCE(7706, 28) { word x28; (* (( (ptr) ( x28 = (* (( (ptr) gf←c18400)+9)/* atomDictionary←v3056 */ ), NCK((* (bPt) x28 )), x28 ))+hash←v7964) ) = this←v7908; }; } else { SOURCE(7743, 28) (void) SetLink←P240(this←v7908, (* (( (ptr) prev←v7936)+2) )); SOURCE(7773, 19) (void) SetLink←P240(prev←v7936, this←v7908); SOURCE(7794, 27) (* (( (ptr) gf←c18400)+13)/* collisions←v3196 */ ) = ((* (( (ptr) gf←c18400)+13)/* collisions←v3196 */ ) + 1); }; SOURCE(7826, 25) (* (( (ptr) gf←c18400)+12)/* atomCount←v3168 */ ) = ((* (( (ptr) gf←c18400)+12)/* atomCount←v3168 */ ) + 1); } static void Crash←P1740() { /* Crash: */ SOURCE(8002, 63) SOURCE(8018, 47) (void) XR←RaiseUnnamedError(); } static void NoName←Q3396(formal←c0190, formal←c200036, formal←c200037, formal←c200038, formal←c200039) word formal←c0190; word formal←c200036; word formal←c200037; word formal←c200038; word formal←c200039; { register ptr gf←c0276 = (ptr) &globalframe; if ((formal←c200037 == XR←Unwind)) { SOURCE(6581, 7) (void) Crash←P1740(); (void) (XR←MonitorExit((word) (( (bPt) gf←c0276)+16)/* LOCK←v2776 */ )); }; (* (ptr) formal←c0190 ) = 0; (* (( (ptr) formal←c0190)+1) ) = 0; return; } static void NoName←Q3456(formal←c0195, formal←c200032, formal←c200033, formal←c200034, formal←c200035) word formal←c0195; word formal←c200032; word formal←c200033; word formal←c200034; word formal←c200035; { register ptr gf←c0277 = (ptr) &globalframe; if ((formal←c200033 == XR←Unwind)) { SOURCE(5674, 7) (void) Crash←P1740(); (void) (XR←MonitorExit((word) (( (bPt) gf←c0277)+16)/* LOCK←v2776 */ )); }; (* (ptr) formal←c0195 ) = 0; (* (( (ptr) formal←c0195)+1) ) = 0; return; } static void NoName←Q3516(formal←c0200, formal←c200028, formal←c200029, formal←c200030, formal←c200031) word formal←c0200; word formal←c200028; word formal←c200029; word formal←c200030; word formal←c200031; { register ptr gf←c0278 = (ptr) &globalframe; if ((formal←c200029 == XR←Unwind)) { SOURCE(5474, 7) (void) Crash←P1740(); (void) (XR←MonitorExit((word) (( (bPt) gf←c0278)+16)/* LOCK←v2776 */ )); }; (* (ptr) formal←c0200 ) = 0; (* (( (ptr) formal←c0200)+1) ) = 0; return; } static void NoName←Q3576(formal←c0205, formal←c200024, formal←c200025, formal←c200026, formal←c200027) word formal←c0205; word formal←c200024; word formal←c200025; word formal←c200026; word formal←c200027; { register ptr gf←c0279 = (ptr) &globalframe; if ((formal←c200025 == XR←Unwind)) { SOURCE(5269, 7) (void) Crash←P1740(); (void) (XR←MonitorExit((word) (( (bPt) gf←c0279)+16)/* LOCK←v2776 */ )); }; (* (ptr) formal←c0205 ) = 0; (* (( (ptr) formal←c0205)+1) ) = 0; return; } static void NoName←Q3636(formal←c0210, formal←c200020, formal←c200021, formal←c200022, formal←c200023) word formal←c0210; word formal←c200020; word formal←c200021; word formal←c200022; word formal←c200023; { register ptr gf←c0280 = (ptr) &globalframe; if ((formal←c200021 == XR←Unwind)) { SOURCE(4970, 7) (void) Crash←P1740(); (void) (XR←MonitorExit((word) (( (bPt) gf←c0280)+16)/* LOCK←v2776 */ )); }; (* (ptr) formal←c0210 ) = 0; (* (( (ptr) formal←c0210)+1) ) = 0; return; } static void NoName←Q3696(formal←c0215, formal←c200016, formal←c200017, formal←c200018, formal←c200019) word formal←c0215; word formal←c200016; word formal←c200017; word formal←c200018; word formal←c200019; { register ptr gf←c0281 = (ptr) &globalframe; if ((formal←c200017 == XR←Unwind)) { SOURCE(4295, 7) (void) Crash←P1740(); (void) (XR←MonitorExit((word) (( (bPt) gf←c0281)+16)/* LOCK←v2776 */ )); }; (* (ptr) formal←c0215 ) = 0; (* (( (ptr) formal←c0215)+1) ) = 0; return; } static void NoName←Q3756(formal←c0220, formal←c200012, formal←c200013, formal←c200014, formal←c200015) word formal←c0220; word formal←c200012; word formal←c200013; word formal←c200014; word formal←c200015; { register ptr gf←c0282 = (ptr) &globalframe; if ((formal←c200013 == XR←Unwind)) { SOURCE(4033, 7) (void) Crash←P1740(); (void) (XR←MonitorExit((word) (( (bPt) gf←c0282)+16)/* LOCK←v2776 */ )); }; (* (ptr) formal←c0220 ) = 0; (* (( (ptr) formal←c0220)+1) ) = 0; return; } static void NoName←Q3816(formal←c0225, formal←c200008, formal←c200009, formal←c200010, formal←c200011) word formal←c0225; word formal←c200008; word formal←c200009; word formal←c200010; word formal←c200011; { register ptr gf←c0283 = (ptr) &globalframe; if ((formal←c200009 == XR←Unwind)) { SOURCE(3833, 7) (void) Crash←P1740(); (void) (XR←MonitorExit((word) (( (bPt) gf←c0283)+16)/* LOCK←v2776 */ )); }; (* (ptr) formal←c0225 ) = 0; (* (( (ptr) formal←c0225)+1) ) = 0; return; } static void NoName←Q3876(formal←c0230, formal←c200004, formal←c200005, formal←c200006, formal←c200007) word formal←c0230; word formal←c200004; word formal←c200005; word formal←c200006; word formal←c200007; { register ptr gf←c0284 = (ptr) &globalframe; if ((formal←c200005 == XR←Unwind)) { SOURCE(2750, 7) (void) Crash←P1740(); (void) (XR←MonitorExit((word) (( (bPt) gf←c0284)+16)/* LOCK←v2776 */ )); }; (* (ptr) formal←c0230 ) = 0; (* (( (ptr) formal←c0230)+1) ) = 0; return; } static void NoName←Q3936(formal←c0235, formal←c200000, formal←c200001, formal←c200002, formal←c200003) word formal←c0235; word formal←c200000; word formal←c200001; word formal←c200002; word formal←c200003; { register ptr gf←c0285 = (ptr) &globalframe; if ((formal←c200001 == XR←Unwind)) { SOURCE(2328, 7) (void) Crash←P1740(); (void) (XR←MonitorExit((word) (( (bPt) gf←c0285)+16)/* LOCK←v2776 */ )); }; (* (ptr) formal←c0235 ) = 0; (* (( (ptr) formal←c0235)+1) ) = 0; return; } /* file: AtomImpl, module: AtomImpl, compiled at: March 3, 1992 1:09:40 pm PST */ extern void XR←install←AtomImpl() { NoName←Q2736(); } extern void XR←run←AtomImpl() { XR←Start(&globalframe); }