/* Generated with C2C (Cedar To C)*/ /* Copyright (C) 1992 by Xerox Corporation. All rights reserved. */ /* time: February 21, 1992 11:34:29 pm PST */ /* C2C version: October 16, 1990 (native) */ /* ref-counting: off */ /* file: UnsafeTileImpl, module: UnsafeTileImpl */ /* switches: cfhklnouw */ #include #include #define XRM_BITAND(x, y) (((word)(x)) & ((word)(y))) #define XRM_BITXOR(x, y) (((word)(x)) ^ ((word)(y))) #define XRM_BITLSHIFT(x, y) ((word)(x) << (word)(y)) #define XRM_BITRSHIFT(x, y) ((word)(x) >> (word)(y)) #define XRM_BITNOT(x) (~((word)(x))) #define XRM_BITOR(x, y) (((word)(x)) | ((word)(y))) static char versionStamp[] = "@(#)mob_version [1309050070,1920915394] UnsafeTileImpl"; typedef unsigned word, *ptr; typedef unsigned char byte, *bPt; typedef unsigned short half, *hPt; typedef struct {word f0, f1, f2, f3, f4, f5, f6, f7;} W8; typedef struct {W8 f; W8 r;} W16; typedef struct {word f0, f1;} W2; typedef word (*fPt)(); #define SOURCE(p, l) /* source p, l */ #define IOP2(op, x, y) ( (word) ((x) op (y)) ) static void NoName_Q4620(); static void UnsafeTileImpl_P0(); static void Op_P60(); static void Fast1_P120(); static void Fast2_P180(); static void Fast3_P240(); static void DoLine_P300(); static void WithFunction_P1968(); static void DumbOp_P480(); static word FunnyOp_P540(); static void BadAssertion_P660(); static void InitReplicatorArray_P720(); static struct {unsigned f; char r[16];} string1 = {851984, "\257\300\116\006\204\326\300\162\176\327\302\100\164\000\000"}; static struct {unsigned f; char r[16];} string2 = {851984, "\257\300\047\273\127\037\300\356\271\016\020\100\150\000\000"}; static struct { word f0[71]; 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[2]; } globalframe = { {0}, (word) InitReplicatorArray_P720, 0, (word) BadAssertion_P660, 0, (word) FunnyOp_P540, 0, (word) DumbOp_P480, 0, (word) DoLine_P300, 0, (word) Fast3_P240, 0, (word) Fast2_P180, 0, (word) Fast1_P120, 0, (word) Op_P60, 0, (word) UnsafeTileImpl_P0, {0} }; static void NoName_Q4620() { register ptr gf_c0309 = (ptr) &globalframe; word var_c17152; (void) XR_DeclareGlobalFrame((word) "UnsafeTileImpl", &globalframe, (word) XR_GetTypeIndexS((word) (&string1)), (word) (( (bPt) gf_c0309)+356) /* var_c14624 */ ); var_c17152 = (word) XR_ExportInterface((word) "UnsafeTile", (word) XR_GetTypeIndexS((word) (&string2)), 5); (* (( (ptr) gf_c0309)+91)/* var_c17120 */ ) = var_c17152; (void) XR_ExportProcS(var_c17152, (word) (( (bPt) gf_c0309)+348)/* var_c14592 */ , 262145); (void) XR_ExportProcS(var_c17152, (word) (( (bPt) gf_c0309)+340)/* var_c14560 */ , 262401); (void) XR_ExportProcS(var_c17152, (word) (( (bPt) gf_c0309)+332)/* var_c14528 */ , 262657); (void) XR_ExportProcS(var_c17152, (word) (( (bPt) gf_c0309)+324)/* var_c14496 */ , 262913); (void) XR_ExportProcS(var_c17152, (word) (( (bPt) gf_c0309)+308)/* var_c14432 */ , 263169); } static void UnsafeTileImpl_P0(formal_c017, formal_c016) word formal_c017; word formal_c016; { /* UnsafeTileImpl: */ SOURCE(31, 14375) SOURCE(14385, 21) (void) InitReplicatorArray_P720(); } static void Op_P60(arg_v3528) word arg_v3528; { word fSizeTile_v4792; /* Op: */ SOURCE(513, 420) SOURCE(561, 30) fSizeTile_v4792 = (* (( (ptr) arg_v3528)+8) ); SOURCE(612, 48) if (((* (( (ptr) arg_v3528)+10) ) >= fSizeTile_v4792)) { SOURCE(646, 14) (void) BadAssertion_P660(); }; SOURCE(662, 45) if (((* (( (ptr) arg_v3528)+12) ) >= fSizeTile_v4792)) { SOURCE(693, 14) (void) BadAssertion_P660(); }; SOURCE(709, 53) if (((* (( (ptr) arg_v3528)+11) ) >= (* (( (ptr) arg_v3528)+9) ))) { SOURCE(748, 14) (void) BadAssertion_P660(); }; SOURCE(767, 45) if (((* (( (ptr) arg_v3528)+3) ) == 0) || ((* (( (ptr) arg_v3528)+4) ) == 0)) { SOURCE(806, 6) return; }; SOURCE(814, 104) if ((fSizeTile_v4792 <= 32)) { SOURCE(841, 69) if (((word) XRM_BITAND(fSizeTile_v4792, (fSizeTile_v4792 - 1)) == 0)) { SOURCE(884, 16) (void) Fast1_P120(arg_v3528); } else { SOURCE(900, 10) (void) Fast2_P180(arg_v3528); }; SOURCE(912, 6) return; }; SOURCE(923, 10) (void) Fast3_P240(arg_v3528); } static void Fast1_P120(arg_v3588) word arg_v3588; { word tileLine_v4836; word firstBit_v4864; word srcBpl_v4892; word srcBit_v4920; word src_v4948; word dst_v4976; word dstBit_v5004; word fSize_v5032; word fSizeTile_v5060; word sSizeTile_v5088; word sSize_v5116; word sw_v5144; word invert_v5172; /* Fast1: */ SOURCE(939, 3381) SOURCE(990, 29) tileLine_v4836 = (* (( (ptr) arg_v3588)+11) ); SOURCE(1021, 34) firstBit_v4864 = (* (( (ptr) arg_v3588)+10) ); SOURCE(1057, 24) srcBpl_v4892 = (* (( (ptr) arg_v3588)+7) ); SOURCE(1083, 30) srcBit_v4920 = (* (( (ptr) arg_v3588)+6) ); SOURCE(1115, 26) src_v4948 = (* (( (ptr) arg_v3588)+5) ); SOURCE(1143, 26) dst_v4976 = (* (ptr) arg_v3588 ); SOURCE(1171, 30) dstBit_v5004 = (* (( (ptr) arg_v3588)+1) ); SOURCE(1203, 22) fSize_v5032 = (* (( (ptr) arg_v3588)+3) ); SOURCE(1227, 35) fSizeTile_v5060 = (* (( (ptr) arg_v3588)+8) ); SOURCE(1264, 30) sSizeTile_v5088 = (* (( (ptr) arg_v3588)+9) ); SOURCE(1296, 22) sSize_v5116 = (* (( (ptr) arg_v3588)+4) ); SOURCE(1330, 28) invert_v5172 = (* (( (ptr) arg_v3588)+13) ); SOURCE(3977, 70) if (((word) XRM_BITAND(fSizeTile_v5060, (fSizeTile_v5060 - 1)) != 0)) { SOURCE(4033, 14) (void) BadAssertion_P660(); }; SOURCE(4049, 271) if ((sSize_v5116 != 0)) { SOURCE(4069, 116) if ((tileLine_v4836 != 0)) { SOURCE(4090, 97) { word next_v5524; SOURCE(4092, 36) next_v5524 = (srcBit_v4920 + (tileLine_v4836 * srcBpl_v4892)); SOURCE(4130, 21) srcBit_v4920 = (next_v5524 & 037); SOURCE(4153, 32) src_v4948 = (src_v4948 + ((next_v5524 - srcBit_v4920) >> 3)); }; }; SOURCE(4190, 130) { word var_c14656; var_c14656 = (* (( (ptr) arg_v3588)+14) ); switch (var_c14656) { case 0: SOURCE(4222, 18) SOURCE(3865, 98) lab_L100002: ; SOURCE(3868, 13) { word k_v5568; k_v5568 = fSizeTile_v5060; SOURCE(1414, 25) sw_v5144 = (word) XRM_BITXOR((* (ptr) src_v4948 ), invert_v5172); SOURCE(1441, 131) if ((srcBit_v4920 != 0)) { SOURCE(1462, 26) sw_v5144 = (word) XRM_BITLSHIFT(sw_v5144, srcBit_v4920); SOURCE(1490, 82) if (((srcBit_v4920 + k_v5568) > 32)) { SOURCE(1513, 59) { word var_c14688; word var_c0314; var_c14688 = (word) XRM_BITXOR((* (ptr) (src_v4948 + 4) ), invert_v5172); var_c0314 = (word) XRM_BITRSHIFT(var_c14688, (32 - srcBit_v4920)); sw_v5144 = (sw_v5144 + var_c0314); }; }; }; SOURCE(1577, 122) if ((k_v5568 < 32)) { SOURCE(1595, 44) { word var_c14720; var_c14720 = (word) XRM_BITLSHIFT( (word) -1, (32 - k_v5568)); sw_v5144 = (word) XRM_BITAND(sw_v5144, var_c14720); }; SOURCE(1641, 58) lab_L100005: ; SOURCE(1644, 26) sw_v5144 = (sw_v5144 + (word) XRM_BITRSHIFT(sw_v5144, k_v5568)); SOURCE(1672, 9) k_v5568 = (k_v5568 + k_v5568); SOURCE(1683, 16) if ((k_v5568 == 32)) { SOURCE(1699, 4) goto lab_L100004; }; goto lab_L100005; lab_L100004: ; }; SOURCE(1717, 79) if ((firstBit_v4864 != 0)) { SOURCE(1738, 58) sw_v5144 = ((word) XRM_BITLSHIFT(sw_v5144, firstBit_v4864) + (word) XRM_BITRSHIFT(sw_v5144, (32 - firstBit_v4864))); }; }; SOURCE(3883, 15) SOURCE(1842, 1563) { word rem_v5596; word dwp_v5624; rem_v5596 = fSize_v5032; dwp_v5624 = dst_v4976; SOURCE(1882, 596) if ((dstBit_v5004 != 0)) { { word dw_v5652; word mask_v5680; word rw_v5708; dw_v5652 = (* (ptr) dwp_v5624 ); mask_v5680 = (word) XRM_BITRSHIFT( (word) -1, dstBit_v5004); rw_v5708 = (word) XRM_BITRSHIFT(sw_v5144, dstBit_v5004); SOURCE(1997, 18) rem_v5596 = (rem_v5596 + dstBit_v5004); SOURCE(2017, 64) if ((rem_v5596 < 32)) { SOURCE(2035, 46) { /*1*/ word var_c14752; /*1*/ var_c14752 = (word) XRM_BITRSHIFT( (word) -1, rem_v5596); /*1*/ mask_v5680 = (word) XRM_BITXOR(mask_v5680, var_c14752); /*1*/ }; }; SOURCE(2083, 284) SOURCE(2106, 50) { word var_c14784; { /*1*/ word var_c14816; /*1*/ word var_c0315; /*1*/ var_c14816 = (word) XRM_BITNOT(mask_v5680); /*1*/ var_c0315 = (word) XRM_BITAND(dw_v5652, var_c14816); /*1*/ var_c14784 = (var_c0315 + (word) XRM_BITAND(rw_v5708, mask_v5680)); /*1*/ }; (* (ptr) dwp_v5624 ) = var_c14784; }; SOURCE(2378, 19) if ((rem_v5596 <= 32)) { SOURCE(2397, 10) goto lab_L100006; }; SOURCE(2409, 35) sw_v5144 = ((word) XRM_BITLSHIFT(sw_v5144, (32 - dstBit_v5004)) + rw_v5708); SOURCE(2446, 15) rem_v5596 = (rem_v5596 - 32); SOURCE(2463, 15) dwp_v5624 = (dwp_v5624 + 4); }; }; SOURCE(2483, 330) lab_L100009: ; if ((rem_v5596 >= 64)) { } else { goto lab_L100007; }; SOURCE(2505, 260) SOURCE(2529, 9) (* (ptr) dwp_v5624 ) = sw_v5144; SOURCE(2540, 15) (* (ptr) (dwp_v5624 + 4) ) = sw_v5144; SOURCE(2777, 17) rem_v5596 = (rem_v5596 - 64); SOURCE(2796, 17) dwp_v5624 = (dwp_v5624 + 8); goto lab_L100009; lab_L100007: ; SOURCE(2824, 185) if ((rem_v5596 >= 32)) { SOURCE(2845, 130) SOURCE(2868, 9) (* (ptr) dwp_v5624 ) = sw_v5144; SOURCE(2977, 15) rem_v5596 = (rem_v5596 - 32); SOURCE(2994, 15) dwp_v5624 = (dwp_v5624 + 4); }; SOURCE(3014, 359) if ((rem_v5596 != 0)) { { word mask_v5736; word dw_v5764; mask_v5736 = (word) XRM_BITRSHIFT( (word) -1, rem_v5596); dw_v5764 = (* (ptr) dwp_v5624 ); SOURCE(3089, 284) SOURCE(3112, 50) { word var_c14848; { /*1*/ word var_c14880; /*1*/ word var_c0316; /*1*/ var_c14880 = (word) XRM_BITNOT(mask_v5736); /*1*/ var_c0316 = (word) XRM_BITAND(sw_v5144, var_c14880); /*1*/ var_c14848 = ((word) XRM_BITAND(dw_v5764, mask_v5736) + var_c0316); /*1*/ }; (* (ptr) dwp_v5624 ) = var_c14848; }; }; }; }; goto lab_L100010; lab_L100006: ; lab_L100010: ; SOURCE(3900, 18) if ((sSize_v5116 == 1)) { SOURCE(3918, 4) goto lab_L100001; }; SOURCE(3924, 17) sSize_v5116 = (sSize_v5116 - 1); SOURCE(3943, 9) { word next_v5792; next_v5792 = (dstBit_v5004 + (* (( (ptr) arg_v3588)+2) )); SOURCE(3466, 21) dstBit_v5004 = (next_v5792 & 037); SOURCE(3489, 34) dst_v4976 = (dst_v4976 + ((next_v5792 - dstBit_v5004) >> 3)); }; SOURCE(3954, 9) { word next_v5820; next_v5820 = (srcBit_v4920 + srcBpl_v4892); SOURCE(3582, 21) srcBit_v4920 = (next_v5820 & 037); SOURCE(3605, 34) src_v4948 = (src_v4948 + ((next_v5820 - srcBit_v4920) >> 3)); SOURCE(3641, 21) tileLine_v4836 = (tileLine_v4836 + 1); SOURCE(3664, 149) if ((tileLine_v4836 == sSizeTile_v5088)) { SOURCE(3695, 64) firstBit_v4864 = (word) XRM_BITAND((firstBit_v4864 + (fSizeTile_v5060 - (* (( (ptr) arg_v3588)+12) ))), (fSizeTile_v5060 - 1)) ; SOURCE(3761, 12) tileLine_v4836 = 0; SOURCE(3775, 19) srcBit_v4920 = (* (( (ptr) arg_v3588)+6) ); SOURCE(3796, 17) src_v4948 = (* (( (ptr) arg_v3588)+5) ); }; }; goto lab_L100002; lab_L100001: ; break; case 1: SOURCE(4249, 17) SOURCE(3865, 98) lab_L100013: ; SOURCE(3868, 13) { word k_v11780; k_v11780 = fSizeTile_v5060; SOURCE(1414, 25) sw_v5144 = (word) XRM_BITXOR((* (ptr) src_v4948 ), invert_v5172); SOURCE(1441, 131) if ((srcBit_v4920 != 0)) { SOURCE(1462, 26) sw_v5144 = (word) XRM_BITLSHIFT(sw_v5144, srcBit_v4920); SOURCE(1490, 82) if (((srcBit_v4920 + k_v11780) > 32)) { SOURCE(1513, 59) { word var_c14912; word var_c0317; var_c14912 = (word) XRM_BITXOR((* (ptr) (src_v4948 + 4) ), invert_v5172); var_c0317 = (word) XRM_BITRSHIFT(var_c14912, (32 - srcBit_v4920)); sw_v5144 = (sw_v5144 + var_c0317); }; }; }; SOURCE(1577, 122) if ((k_v11780 < 32)) { SOURCE(1595, 44) { word var_c14944; var_c14944 = (word) XRM_BITLSHIFT( (word) -1, (32 - k_v11780)); sw_v5144 = (word) XRM_BITAND(sw_v5144, var_c14944); }; SOURCE(1641, 58) lab_L100016: ; SOURCE(1644, 26) sw_v5144 = (sw_v5144 + (word) XRM_BITRSHIFT(sw_v5144, k_v11780)); SOURCE(1672, 9) k_v11780 = (k_v11780 + k_v11780); SOURCE(1683, 16) if ((k_v11780 == 32)) { SOURCE(1699, 4) goto lab_L100015; }; goto lab_L100016; lab_L100015: ; }; SOURCE(1717, 79) if ((firstBit_v4864 != 0)) { SOURCE(1738, 58) sw_v5144 = ((word) XRM_BITLSHIFT(sw_v5144, firstBit_v4864) + (word) XRM_BITRSHIFT(sw_v5144, (32 - firstBit_v4864))); }; }; SOURCE(3883, 15) SOURCE(1842, 1563) { word rem_v11868; word dwp_v11896; rem_v11868 = fSize_v5032; dwp_v11896 = dst_v4976; SOURCE(1882, 596) if ((dstBit_v5004 != 0)) { { word dw_v11940; word mask_v11968; word rw_v11996; dw_v11940 = (* (ptr) dwp_v11896 ); mask_v11968 = (word) XRM_BITRSHIFT( (word) -1, dstBit_v5004); rw_v11996 = (word) XRM_BITRSHIFT(sw_v5144, dstBit_v5004); SOURCE(1997, 18) rem_v11868 = (rem_v11868 + dstBit_v5004); SOURCE(2017, 64) if ((rem_v11868 < 32)) { SOURCE(2035, 46) { /*1*/ word var_c14976; /*1*/ var_c14976 = (word) XRM_BITRSHIFT( (word) -1, rem_v11868); /*1*/ mask_v11968 = (word) XRM_BITXOR(mask_v11968, var_c14976); /*1*/ }; }; SOURCE(2083, 284) SOURCE(2165, 62) { word var_c15008; { /*1*/ word var_c15040; /*1*/ word var_c0318; /*1*/ word var_c15072; /*1*/ var_c15040 = (word) XRM_BITNOT(mask_v11968); /*1*/ var_c0318 = (word) XRM_BITAND(dw_v11940, var_c15040); /*1*/ var_c15072 = (word) XRM_BITAND(dw_v11940, rw_v11996); /*1*/ var_c15008 = (var_c0318 + (word) XRM_BITAND(var_c15072, mask_v11968)); /*1*/ }; (* (ptr) dwp_v11896 ) = var_c15008; }; SOURCE(2378, 19) if ((rem_v11868 <= 32)) { SOURCE(2397, 10) goto lab_L100017; }; SOURCE(2409, 35) sw_v5144 = ((word) XRM_BITLSHIFT(sw_v5144, (32 - dstBit_v5004)) + rw_v11996); SOURCE(2446, 15) rem_v11868 = (rem_v11868 - 32); SOURCE(2463, 15) dwp_v11896 = (dwp_v11896 + 4); }; }; SOURCE(2483, 330) lab_L100020: ; if ((rem_v11868 >= 64)) { } else { goto lab_L100018; }; SOURCE(2505, 260) SOURCE(2566, 23) (* (ptr) dwp_v11896 ) = (word) XRM_BITAND((* (ptr) dwp_v11896 ), sw_v5144); SOURCE(2591, 35) { word var_c15104; var_c15104 = (word) XRM_BITAND((* (ptr) (dwp_v11896 + 4) ), sw_v5144); (* (ptr) (dwp_v11896 + 4) ) = var_c15104; }; SOURCE(2777, 17) rem_v11868 = (rem_v11868 - 64); SOURCE(2796, 17) dwp_v11896 = (dwp_v11896 + 8); goto lab_L100020; lab_L100018: ; SOURCE(2824, 185) if ((rem_v11868 >= 32)) { SOURCE(2845, 130) SOURCE(2886, 23) (* (ptr) dwp_v11896 ) = (word) XRM_BITAND((* (ptr) dwp_v11896 ), sw_v5144); SOURCE(2977, 15) rem_v11868 = (rem_v11868 - 32); SOURCE(2994, 15) dwp_v11896 = (dwp_v11896 + 4); }; SOURCE(3014, 359) if ((rem_v11868 != 0)) { { word mask_v12040; word dw_v12068; mask_v12040 = (word) XRM_BITRSHIFT( (word) -1, rem_v11868); dw_v12068 = (* (ptr) dwp_v11896 ); SOURCE(3089, 284) SOURCE(3171, 62) { word var_c15136; { /*1*/ word var_c15168; /*1*/ word var_c15200; /*1*/ word var_c0319; /*1*/ var_c15168 = (word) XRM_BITAND(dw_v12068, sw_v5144); /*1*/ var_c15200 = (word) XRM_BITNOT(mask_v12040); /*1*/ var_c0319 = (word) XRM_BITAND(var_c15168, var_c15200); /*1*/ var_c15136 = ((word) XRM_BITAND(dw_v12068, mask_v12040) + var_c0319); /*1*/ }; (* (ptr) dwp_v11896 ) = var_c15136; }; }; }; }; goto lab_L100021; lab_L100017: ; lab_L100021: ; SOURCE(3900, 18) if ((sSize_v5116 == 1)) { SOURCE(3918, 4) goto lab_L100012; }; SOURCE(3924, 17) sSize_v5116 = (sSize_v5116 - 1); SOURCE(3943, 9) { word next_v12112; next_v12112 = (dstBit_v5004 + (* (( (ptr) arg_v3588)+2) )); SOURCE(3466, 21) dstBit_v5004 = (next_v12112 & 037); SOURCE(3489, 34) dst_v4976 = (dst_v4976 + ((next_v12112 - dstBit_v5004) >> 3)); }; SOURCE(3954, 9) { word next_v12156; next_v12156 = (srcBit_v4920 + srcBpl_v4892); SOURCE(3582, 21) srcBit_v4920 = (next_v12156 & 037); SOURCE(3605, 34) src_v4948 = (src_v4948 + ((next_v12156 - srcBit_v4920) >> 3)); SOURCE(3641, 21) tileLine_v4836 = (tileLine_v4836 + 1); SOURCE(3664, 149) if ((tileLine_v4836 == sSizeTile_v5088)) { SOURCE(3695, 64) firstBit_v4864 = (word) XRM_BITAND((firstBit_v4864 + (fSizeTile_v5060 - (* (( (ptr) arg_v3588)+12) ))), (fSizeTile_v5060 - 1)) ; SOURCE(3761, 12) tileLine_v4836 = 0; SOURCE(3775, 19) srcBit_v4920 = (* (( (ptr) arg_v3588)+6) ); SOURCE(3796, 17) src_v4948 = (* (( (ptr) arg_v3588)+5) ); }; }; goto lab_L100013; lab_L100012: ; break; case 2: SOURCE(4274, 16) SOURCE(3865, 98) lab_L100024: ; SOURCE(3868, 13) { word k_v11360; k_v11360 = fSizeTile_v5060; SOURCE(1414, 25) sw_v5144 = (word) XRM_BITXOR((* (ptr) src_v4948 ), invert_v5172); SOURCE(1441, 131) if ((srcBit_v4920 != 0)) { SOURCE(1462, 26) sw_v5144 = (word) XRM_BITLSHIFT(sw_v5144, srcBit_v4920); SOURCE(1490, 82) if (((srcBit_v4920 + k_v11360) > 32)) { SOURCE(1513, 59) { word var_c15232; word var_c0320; var_c15232 = (word) XRM_BITXOR((* (ptr) (src_v4948 + 4) ), invert_v5172); var_c0320 = (word) XRM_BITRSHIFT(var_c15232, (32 - srcBit_v4920)); sw_v5144 = (sw_v5144 + var_c0320); }; }; }; SOURCE(1577, 122) if ((k_v11360 < 32)) { SOURCE(1595, 44) { word var_c15264; var_c15264 = (word) XRM_BITLSHIFT( (word) -1, (32 - k_v11360)); sw_v5144 = (word) XRM_BITAND(sw_v5144, var_c15264); }; SOURCE(1641, 58) lab_L100027: ; SOURCE(1644, 26) sw_v5144 = (sw_v5144 + (word) XRM_BITRSHIFT(sw_v5144, k_v11360)); SOURCE(1672, 9) k_v11360 = (k_v11360 + k_v11360); SOURCE(1683, 16) if ((k_v11360 == 32)) { SOURCE(1699, 4) goto lab_L100026; }; goto lab_L100027; lab_L100026: ; }; SOURCE(1717, 79) if ((firstBit_v4864 != 0)) { SOURCE(1738, 58) sw_v5144 = ((word) XRM_BITLSHIFT(sw_v5144, firstBit_v4864) + (word) XRM_BITRSHIFT(sw_v5144, (32 - firstBit_v4864))); }; }; SOURCE(3883, 15) SOURCE(1842, 1563) { word rem_v11448; word dwp_v11476; rem_v11448 = fSize_v5032; dwp_v11476 = dst_v4976; SOURCE(1882, 596) if ((dstBit_v5004 != 0)) { { word dw_v11520; word mask_v11548; word rw_v11576; dw_v11520 = (* (ptr) dwp_v11476 ); mask_v11548 = (word) XRM_BITRSHIFT( (word) -1, dstBit_v5004); rw_v11576 = (word) XRM_BITRSHIFT(sw_v5144, dstBit_v5004); SOURCE(1997, 18) rem_v11448 = (rem_v11448 + dstBit_v5004); SOURCE(2017, 64) if ((rem_v11448 < 32)) { SOURCE(2035, 46) { /*1*/ word var_c15296; /*1*/ var_c15296 = (word) XRM_BITRSHIFT( (word) -1, rem_v11448); /*1*/ mask_v11548 = (word) XRM_BITXOR(mask_v11548, var_c15296); /*1*/ }; }; SOURCE(2083, 284) SOURCE(2235, 61) { word var_c15328; { /*1*/ word var_c15360; /*1*/ word var_c0321; /*1*/ word var_c15392; /*1*/ var_c15360 = (word) XRM_BITNOT(mask_v11548); /*1*/ var_c0321 = (word) XRM_BITAND(dw_v11520, var_c15360); /*1*/ var_c15392 = (word) XRM_BITOR(dw_v11520, rw_v11576); /*1*/ var_c15328 = (var_c0321 + (word) XRM_BITAND(var_c15392, mask_v11548)); /*1*/ }; (* (ptr) dwp_v11476 ) = var_c15328; }; SOURCE(2378, 19) if ((rem_v11448 <= 32)) { SOURCE(2397, 10) goto lab_L100028; }; SOURCE(2409, 35) sw_v5144 = ((word) XRM_BITLSHIFT(sw_v5144, (32 - dstBit_v5004)) + rw_v11576); SOURCE(2446, 15) rem_v11448 = (rem_v11448 - 32); SOURCE(2463, 15) dwp_v11476 = (dwp_v11476 + 4); }; }; SOURCE(2483, 330) lab_L100031: ; if ((rem_v11448 >= 64)) { } else { goto lab_L100029; }; SOURCE(2505, 260) SOURCE(2636, 22) (* (ptr) dwp_v11476 ) = (word) XRM_BITOR((* (ptr) dwp_v11476 ), sw_v5144); SOURCE(2660, 34) { word var_c15424; var_c15424 = (word) XRM_BITOR((* (ptr) (dwp_v11476 + 4) ), sw_v5144); (* (ptr) (dwp_v11476 + 4) ) = var_c15424; }; SOURCE(2777, 17) rem_v11448 = (rem_v11448 - 64); SOURCE(2796, 17) dwp_v11476 = (dwp_v11476 + 8); goto lab_L100031; lab_L100029: ; SOURCE(2824, 185) if ((rem_v11448 >= 32)) { SOURCE(2845, 130) SOURCE(2917, 22) (* (ptr) dwp_v11476 ) = (word) XRM_BITOR((* (ptr) dwp_v11476 ), sw_v5144); SOURCE(2977, 15) rem_v11448 = (rem_v11448 - 32); SOURCE(2994, 15) dwp_v11476 = (dwp_v11476 + 4); }; SOURCE(3014, 359) if ((rem_v11448 != 0)) { { word mask_v11620; word dw_v11648; mask_v11620 = (word) XRM_BITRSHIFT( (word) -1, rem_v11448); dw_v11648 = (* (ptr) dwp_v11476 ); SOURCE(3089, 284) SOURCE(3241, 61) { word var_c15456; { /*1*/ word var_c15488; /*1*/ word var_c15520; /*1*/ word var_c0322; /*1*/ var_c15488 = (word) XRM_BITOR(dw_v11648, sw_v5144); /*1*/ var_c15520 = (word) XRM_BITNOT(mask_v11620); /*1*/ var_c0322 = (word) XRM_BITAND(var_c15488, var_c15520); /*1*/ var_c15456 = ((word) XRM_BITAND(dw_v11648, mask_v11620) + var_c0322); /*1*/ }; (* (ptr) dwp_v11476 ) = var_c15456; }; }; }; }; goto lab_L100032; lab_L100028: ; lab_L100032: ; SOURCE(3900, 18) if ((sSize_v5116 == 1)) { SOURCE(3918, 4) goto lab_L100023; }; SOURCE(3924, 17) sSize_v5116 = (sSize_v5116 - 1); SOURCE(3943, 9) { word next_v11692; next_v11692 = (dstBit_v5004 + (* (( (ptr) arg_v3588)+2) )); SOURCE(3466, 21) dstBit_v5004 = (next_v11692 & 037); SOURCE(3489, 34) dst_v4976 = (dst_v4976 + ((next_v11692 - dstBit_v5004) >> 3)); }; SOURCE(3954, 9) { word next_v11736; next_v11736 = (srcBit_v4920 + srcBpl_v4892); SOURCE(3582, 21) srcBit_v4920 = (next_v11736 & 037); SOURCE(3605, 34) src_v4948 = (src_v4948 + ((next_v11736 - srcBit_v4920) >> 3)); SOURCE(3641, 21) tileLine_v4836 = (tileLine_v4836 + 1); SOURCE(3664, 149) if ((tileLine_v4836 == sSizeTile_v5088)) { SOURCE(3695, 64) firstBit_v4864 = (word) XRM_BITAND((firstBit_v4864 + (fSizeTile_v5060 - (* (( (ptr) arg_v3588)+12) ))), (fSizeTile_v5060 - 1)) ; SOURCE(3761, 12) tileLine_v4836 = 0; SOURCE(3775, 19) srcBit_v4920 = (* (( (ptr) arg_v3588)+6) ); SOURCE(3796, 17) src_v4948 = (* (( (ptr) arg_v3588)+5) ); }; }; goto lab_L100024; lab_L100023: ; break; default: SOURCE(4303, 17) SOURCE(3865, 98) lab_L100035: ; SOURCE(3868, 13) { word k_v10940; k_v10940 = fSizeTile_v5060; SOURCE(1414, 25) sw_v5144 = (word) XRM_BITXOR((* (ptr) src_v4948 ), invert_v5172); SOURCE(1441, 131) if ((srcBit_v4920 != 0)) { SOURCE(1462, 26) sw_v5144 = (word) XRM_BITLSHIFT(sw_v5144, srcBit_v4920); SOURCE(1490, 82) if (((srcBit_v4920 + k_v10940) > 32)) { SOURCE(1513, 59) { word var_c15552; word var_c0323; var_c15552 = (word) XRM_BITXOR((* (ptr) (src_v4948 + 4) ), invert_v5172); var_c0323 = (word) XRM_BITRSHIFT(var_c15552, (32 - srcBit_v4920)); sw_v5144 = (sw_v5144 + var_c0323); }; }; }; SOURCE(1577, 122) if ((k_v10940 < 32)) { SOURCE(1595, 44) { word var_c15584; var_c15584 = (word) XRM_BITLSHIFT( (word) -1, (32 - k_v10940)); sw_v5144 = (word) XRM_BITAND(sw_v5144, var_c15584); }; SOURCE(1641, 58) lab_L100038: ; SOURCE(1644, 26) sw_v5144 = (sw_v5144 + (word) XRM_BITRSHIFT(sw_v5144, k_v10940)); SOURCE(1672, 9) k_v10940 = (k_v10940 + k_v10940); SOURCE(1683, 16) if ((k_v10940 == 32)) { SOURCE(1699, 4) goto lab_L100037; }; goto lab_L100038; lab_L100037: ; }; SOURCE(1717, 79) if ((firstBit_v4864 != 0)) { SOURCE(1738, 58) sw_v5144 = ((word) XRM_BITLSHIFT(sw_v5144, firstBit_v4864) + (word) XRM_BITRSHIFT(sw_v5144, (32 - firstBit_v4864))); }; }; SOURCE(3883, 15) SOURCE(1842, 1563) { word rem_v11028; word dwp_v11056; rem_v11028 = fSize_v5032; dwp_v11056 = dst_v4976; SOURCE(1882, 596) if ((dstBit_v5004 != 0)) { { word dw_v11100; word mask_v11128; word rw_v11156; dw_v11100 = (* (ptr) dwp_v11056 ); mask_v11128 = (word) XRM_BITRSHIFT( (word) -1, dstBit_v5004); rw_v11156 = (word) XRM_BITRSHIFT(sw_v5144, dstBit_v5004); SOURCE(1997, 18) rem_v11028 = (rem_v11028 + dstBit_v5004); SOURCE(2017, 64) if ((rem_v11028 < 32)) { SOURCE(2035, 46) { /*1*/ word var_c15616; /*1*/ var_c15616 = (word) XRM_BITRSHIFT( (word) -1, rem_v11028); /*1*/ mask_v11128 = (word) XRM_BITXOR(mask_v11128, var_c15616); /*1*/ }; }; SOURCE(2083, 284) SOURCE(2305, 62) { word var_c15648; { /*1*/ word var_c15680; /*1*/ word var_c0324; /*1*/ word var_c15712; /*1*/ var_c15680 = (word) XRM_BITNOT(mask_v11128); /*1*/ var_c0324 = (word) XRM_BITAND(dw_v11100, var_c15680); /*1*/ var_c15712 = (word) XRM_BITXOR(dw_v11100, rw_v11156); /*1*/ var_c15648 = (var_c0324 + (word) XRM_BITAND(var_c15712, mask_v11128)); /*1*/ }; (* (ptr) dwp_v11056 ) = var_c15648; }; SOURCE(2378, 19) if ((rem_v11028 <= 32)) { SOURCE(2397, 10) goto lab_L100039; }; SOURCE(2409, 35) sw_v5144 = ((word) XRM_BITLSHIFT(sw_v5144, (32 - dstBit_v5004)) + rw_v11156); SOURCE(2446, 15) rem_v11028 = (rem_v11028 - 32); SOURCE(2463, 15) dwp_v11056 = (dwp_v11056 + 4); }; }; SOURCE(2483, 330) lab_L100042: ; if ((rem_v11028 >= 64)) { } else { goto lab_L100040; }; SOURCE(2505, 260) SOURCE(2705, 23) (* (ptr) dwp_v11056 ) = (word) XRM_BITXOR((* (ptr) dwp_v11056 ), sw_v5144); SOURCE(2730, 35) { word var_c15744; var_c15744 = (word) XRM_BITXOR((* (ptr) (dwp_v11056 + 4) ), sw_v5144); (* (ptr) (dwp_v11056 + 4) ) = var_c15744; }; SOURCE(2777, 17) rem_v11028 = (rem_v11028 - 64); SOURCE(2796, 17) dwp_v11056 = (dwp_v11056 + 8); goto lab_L100042; lab_L100040: ; SOURCE(2824, 185) if ((rem_v11028 >= 32)) { SOURCE(2845, 130) SOURCE(2952, 23) (* (ptr) dwp_v11056 ) = (word) XRM_BITXOR((* (ptr) dwp_v11056 ), sw_v5144); SOURCE(2977, 15) rem_v11028 = (rem_v11028 - 32); SOURCE(2994, 15) dwp_v11056 = (dwp_v11056 + 4); }; SOURCE(3014, 359) if ((rem_v11028 != 0)) { { word mask_v11200; word dw_v11228; mask_v11200 = (word) XRM_BITRSHIFT( (word) -1, rem_v11028); dw_v11228 = (* (ptr) dwp_v11056 ); SOURCE(3089, 284) SOURCE(3311, 62) { word var_c15776; { /*1*/ word var_c15808; /*1*/ word var_c15840; /*1*/ word var_c0325; /*1*/ var_c15808 = (word) XRM_BITXOR(dw_v11228, sw_v5144); /*1*/ var_c15840 = (word) XRM_BITNOT(mask_v11200); /*1*/ var_c0325 = (word) XRM_BITAND(var_c15808, var_c15840); /*1*/ var_c15776 = ((word) XRM_BITAND(dw_v11228, mask_v11200) + var_c0325); /*1*/ }; (* (ptr) dwp_v11056 ) = var_c15776; }; }; }; }; goto lab_L100043; lab_L100039: ; lab_L100043: ; SOURCE(3900, 18) if ((sSize_v5116 == 1)) { SOURCE(3918, 4) goto lab_L100034; }; SOURCE(3924, 17) sSize_v5116 = (sSize_v5116 - 1); SOURCE(3943, 9) { word next_v11272; next_v11272 = (dstBit_v5004 + (* (( (ptr) arg_v3588)+2) )); SOURCE(3466, 21) dstBit_v5004 = (next_v11272 & 037); SOURCE(3489, 34) dst_v4976 = (dst_v4976 + ((next_v11272 - dstBit_v5004) >> 3)); }; SOURCE(3954, 9) { word next_v11316; next_v11316 = (srcBit_v4920 + srcBpl_v4892); SOURCE(3582, 21) srcBit_v4920 = (next_v11316 & 037); SOURCE(3605, 34) src_v4948 = (src_v4948 + ((next_v11316 - srcBit_v4920) >> 3)); SOURCE(3641, 21) tileLine_v4836 = (tileLine_v4836 + 1); SOURCE(3664, 149) if ((tileLine_v4836 == sSizeTile_v5088)) { SOURCE(3695, 64) firstBit_v4864 = (word) XRM_BITAND((firstBit_v4864 + (fSizeTile_v5060 - (* (( (ptr) arg_v3588)+12) ))), (fSizeTile_v5060 - 1)) ; SOURCE(3761, 12) tileLine_v4836 = 0; SOURCE(3775, 19) srcBit_v4920 = (* (( (ptr) arg_v3588)+6) ); SOURCE(3796, 17) src_v4948 = (* (( (ptr) arg_v3588)+5) ); }; }; goto lab_L100035; lab_L100034: ; break; }; }; }; } static void Fast2_P180(arg_v3648) word arg_v3648; { register ptr gf_c17184 = (ptr) &globalframe; word tileLine_v5932; word firstBit_v5960; word srcBit_v5988; word src_v6016; word dst_v6044; word dstBit_v6072; word fSizeTile_v6100; word tBits_v6128; word sSize_v6156; word invert_v6184; word df_v6212; word sw_v6240 = 0; /* Fast2: */ SOURCE(4329, 2386) SOURCE(5240, 29) tileLine_v5932 = (* (( (ptr) arg_v3648)+11) ); SOURCE(5271, 34) firstBit_v5960 = (* (( (ptr) arg_v3648)+10) ); SOURCE(5307, 30) srcBit_v5988 = (* (( (ptr) arg_v3648)+6) ); SOURCE(5339, 26) src_v6016 = (* (( (ptr) arg_v3648)+5) ); SOURCE(5367, 26) dst_v6044 = (* (ptr) arg_v3648 ); SOURCE(5395, 30) dstBit_v6072 = (* (( (ptr) arg_v3648)+1) ); SOURCE(5427, 30) fSizeTile_v6100 = (* (( (ptr) arg_v3648)+8) ); SOURCE(5459, 43) tBits_v6128 = (* ((( (ptr) gf_c17184)+37)/* replicatorBitsArray_v3168 */ +fSizeTile_v6100) ); SOURCE(5504, 22) sSize_v6156 = (* (( (ptr) arg_v3648)+4) ); SOURCE(5528, 28) invert_v6184 = (* (( (ptr) arg_v3648)+13) ); SOURCE(5558, 25) df_v6212 = (* (( (ptr) arg_v3648)+14) ); SOURCE(5638, 51) if ((fSizeTile_v6100 > 32)) { SOURCE(5675, 14) (void) BadAssertion_P660(); }; SOURCE(5691, 1024) if ( ( (sSize_v6156 != 0) ? ((* (( (ptr) arg_v3648)+3) ) != 0) : 0 ) ) { SOURCE(5729, 120) if ((tileLine_v5932 != 0)) { SOURCE(5750, 101) { word next_v6332; SOURCE(5752, 40) next_v6332 = (srcBit_v5988 + (tileLine_v5932 * (* (( (ptr) arg_v3648)+7) ))); SOURCE(5794, 21) srcBit_v5988 = (next_v6332 & 037); SOURCE(5817, 32) src_v6016 = (src_v6016 + ((next_v6332 - srcBit_v5988) >> 3)); }; }; SOURCE(5854, 861) lab_L100046: ; SOURCE(5854, 861) { word rem_v6376; word xBits_v6404; word dwp_v6432; word shift_v6460; word dShift_v6488; SOURCE(5857, 20) rem_v6376 = (* (( (ptr) arg_v3648)+3) ); SOURCE(5909, 23) xBits_v6404 = (32 - dstBit_v6072); SOURCE(5950, 18) dwp_v6432 = dst_v6044; SOURCE(5998, 21) shift_v6460 = firstBit_v5960; SOURCE(6021, 20) dShift_v6488 = dstBit_v6072; SOURCE(6523, 8) { word comp_v6760; comp_v6760 = (32 - fSizeTile_v6100); SOURCE(4915, 25) sw_v6240 = (word) XRM_BITXOR((* (ptr) src_v6016 ), invert_v6184); SOURCE(4942, 155) if ((srcBit_v5988 != 0)) { { word lim_v6788; lim_v6788 = (srcBit_v5988 + fSizeTile_v6100); SOURCE(4992, 26) sw_v6240 = (word) XRM_BITLSHIFT(sw_v6240, srcBit_v5988); SOURCE(5020, 77) if ((lim_v6788 > 32)) { SOURCE(5038, 59) { word var_c15872; word var_c0326; var_c15872 = (word) XRM_BITXOR((* (ptr) (src_v6016 + 4) ), invert_v6184); var_c0326 = (word) XRM_BITRSHIFT(var_c15872, (32 - srcBit_v5988)); sw_v6240 = (sw_v6240 + var_c0326); }; }; }; }; SOURCE(5102, 133) if ((fSizeTile_v6100 <= 16)) { SOURCE(5129, 63) sw_v6240 = ((word) XRM_BITRSHIFT(sw_v6240, comp_v6760) * (* ((( (ptr) gf_c17184)+4)/* replicatorMultArray_v3140 */ +fSizeTile_v6100) )); } else { SOURCE(5192, 43) { word var_c15904; var_c15904 = (word) XRM_BITLSHIFT( (word) -1, comp_v6760); sw_v6240 = (word) XRM_BITAND(sw_v6240, var_c15904); }; }; }; SOURCE(6533, 117) { word var_c15936; var_c15936 = df_v6212; switch (var_c15936) { case 0: SOURCE(6556, 17) SOURCE(6086, 423) lab_L100049: ; { word tw_v6620; word valid_v6648; tw_v6620 = (word) XRM_BITLSHIFT(sw_v6240, shift_v6460); valid_v6648 = (tBits_v6128 - shift_v6460); SOURCE(6150, 31) if ((rem_v6376 < xBits_v6404)) { SOURCE(6170, 11) xBits_v6404 = rem_v6376; }; SOURCE(6183, 76) lab_L100052: ; if ((valid_v6648 < xBits_v6404)) { } else { goto lab_L100050; }; SOURCE(6206, 30) tw_v6620 = ((word) XRM_BITRSHIFT(sw_v6240, valid_v6648) + tw_v6620); SOURCE(6238, 21) valid_v6648 = (valid_v6648 + tBits_v6128); goto lab_L100052; lab_L100050: ; SOURCE(6270, 42) { word dst_v13060; word dstMod_v13088; word w_v13116; word bits_v13144; dst_v13060 = dwp_v6432; dstMod_v13088 = dShift_v6488; w_v13116 = tw_v6620; bits_v13144 = xBits_v6404; if ((dstMod_v13088 != 0)) { { /*1*/ word dstLim_v13192; /*1*/ word mask_v13220; /*1*/ word dstW_v13248; /*1*/ word tw_v13276; /*1*/ dstLim_v13192 = (dstMod_v13088 + bits_v13144); /*1*/ mask_v13220 = (word) XRM_BITRSHIFT( (word) -1, dstMod_v13088); /*1*/ dstW_v13248 = (* (ptr) dst_v13060 ); /*1*/ tw_v13276 = (word) XRM_BITRSHIFT(w_v13116, dstMod_v13088); SOURCE(10307, 56) /*1*/ if ((dstLim_v13192 < 32)) { SOURCE(10328, 35) /*1*/ mask_v13220 = (mask_v13220 - (word) XRM_BITRSHIFT(mask_v13220, bits_v13144)); /*1*/ }; SOURCE(10484, 52) /*1*/ { /*1*/ word var_c15968; /*1*/ word var_c0327; /*1*/ var_c15968 = (word) XRM_BITNOT(mask_v13220); /*1*/ var_c0327 = (word) XRM_BITAND(dstW_v13248, var_c15968); /*1*/ (* (ptr) dst_v13060 ) = (var_c0327 + (word) XRM_BITAND(tw_v13276, mask_v13220)); /*1*/ }; SOURCE(10538, 295) /*1*/ if ((dstLim_v13192 > 32)) { SOURCE(10561, 43) /*1*/ mask_v13220 = (word) XRM_BITRSHIFT( (word) -1, (dstLim_v13192 & 037)); SOURCE(10606, 17) /*1*/ dstW_v13248 = (* (ptr) (dst_v13060 + 4) ); SOURCE(10625, 29) /*1*/ tw_v13276 = (word) XRM_BITLSHIFT(w_v13116, (32 - dstMod_v13088)); SOURCE(10775, 58) /*1*/ { /*1*/ word var_c16000; /*1*/ word var_c0328; /*1*/ var_c16000 = (word) XRM_BITNOT(mask_v13220); /*1*/ var_c0328 = (word) XRM_BITAND(tw_v13276, var_c16000); /*1*/ (* (ptr) (dst_v13060 + 4) ) = (var_c0328 + (word) XRM_BITAND(dstW_v13248, mask_v13220)); /*1*/ }; /*1*/ }; /*1*/ }; } else { if ((bits_v13144 != 32)) { /*1*/ { /*1*/ word mask_v13320; /*1*/ word dstW_v13348; /*1*/ word tw_v13376; /*1*/ mask_v13320 = (word) XRM_BITRSHIFT( (word) -1, bits_v13144); /*1*/ dstW_v13348 = (* (ptr) dst_v13060 ); /*1*/ tw_v13376 = w_v13116; SOURCE(11050, 52) /*1*/ { /*1*/ word var_c16032; /*1*/ word var_c0329; /*1*/ var_c16032 = (word) XRM_BITNOT(mask_v13320); /*1*/ var_c0329 = (word) XRM_BITAND(tw_v13376, var_c16032); /*1*/ (* (ptr) dst_v13060 ) = ((word) XRM_BITAND(dstW_v13348, mask_v13320) + var_c0329); /*1*/ }; /*1*/ }; /*1*/ } else { SOURCE(11118, 126) SOURCE(11141, 8) /*1*/ (* (ptr) dst_v13060 ) = w_v13116; /*1*/ }; }; }; SOURCE(6314, 20) if ((rem_v6376 == xBits_v6404)) { SOURCE(6334, 4) goto lab_L100048; }; SOURCE(6340, 21) shift_v6460 = (shift_v6460 + xBits_v6404); SOURCE(6363, 45) lab_L100055: ; if ((shift_v6460 >= tBits_v6128)) { } else { goto lab_L100053; }; SOURCE(6387, 21) shift_v6460 = (shift_v6460 - tBits_v6128); goto lab_L100055; lab_L100053: ; SOURCE(6419, 15) dwp_v6432 = (dwp_v6432 + 4); SOURCE(6436, 10) dShift_v6488 = 0; SOURCE(6448, 17) rem_v6376 = (rem_v6376 - xBits_v6404); SOURCE(6467, 11) xBits_v6404 = 32; SOURCE(6480, 29) if ((rem_v6376 < 32)) { SOURCE(6498, 11) xBits_v6404 = rem_v6376; }; }; goto lab_L100049; lab_L100048: ; break; case 1: SOURCE(6582, 16) SOURCE(6086, 423) lab_L100058: ; { word tw_v12536; word valid_v12564; tw_v12536 = (word) XRM_BITLSHIFT(sw_v6240, shift_v6460); valid_v12564 = (tBits_v6128 - shift_v6460); SOURCE(6150, 31) if ((rem_v6376 < xBits_v6404)) { SOURCE(6170, 11) xBits_v6404 = rem_v6376; }; SOURCE(6183, 76) lab_L100061: ; if ((valid_v12564 < xBits_v6404)) { } else { goto lab_L100059; }; SOURCE(6206, 30) tw_v12536 = ((word) XRM_BITRSHIFT(sw_v6240, valid_v12564) + tw_v12536); SOURCE(6238, 21) valid_v12564 = (valid_v12564 + tBits_v6128); goto lab_L100061; lab_L100059: ; SOURCE(6270, 42) { word dst_v14140; word dstMod_v14168; word w_v14196; word bits_v14224; dst_v14140 = dwp_v6432; dstMod_v14168 = dShift_v6488; w_v14196 = tw_v12536; bits_v14224 = xBits_v6404; if ((dstMod_v14168 != 0)) { { /*1*/ word dstLim_v7644; /*1*/ word mask_v7672; /*1*/ word dstW_v7700; /*1*/ word tw_v7728; /*1*/ dstLim_v7644 = (dstMod_v14168 + bits_v14224); /*1*/ mask_v7672 = (word) XRM_BITRSHIFT( (word) -1, dstMod_v14168); /*1*/ dstW_v7700 = (* (ptr) dst_v14140 ); /*1*/ tw_v7728 = (word) XRM_BITRSHIFT(w_v14196, dstMod_v14168); SOURCE(10307, 56) /*1*/ if ((dstLim_v7644 < 32)) { SOURCE(10328, 35) /*1*/ mask_v7672 = (mask_v7672 - (word) XRM_BITRSHIFT(mask_v7672, bits_v14224)); /*1*/ }; SOURCE(10365, 117) SOURCE(10399, 21) /*1*/ tw_v7728 = (word) XRM_BITAND(dstW_v7700, tw_v7728); SOURCE(10484, 52) /*1*/ { /*1*/ word var_c16064; /*1*/ word var_c0330; /*1*/ var_c16064 = (word) XRM_BITNOT(mask_v7672); /*1*/ var_c0330 = (word) XRM_BITAND(dstW_v7700, var_c16064); /*1*/ (* (ptr) dst_v14140 ) = (var_c0330 + (word) XRM_BITAND(tw_v7728, mask_v7672)); /*1*/ }; SOURCE(10538, 295) /*1*/ if ((dstLim_v7644 > 32)) { SOURCE(10561, 43) /*1*/ mask_v7672 = (word) XRM_BITRSHIFT( (word) -1, (dstLim_v7644 & 037)); SOURCE(10606, 17) /*1*/ dstW_v7700 = (* (ptr) (dst_v14140 + 4) ); SOURCE(10625, 29) /*1*/ tw_v7728 = (word) XRM_BITLSHIFT(w_v14196, (32 - dstMod_v14168)); SOURCE(10656, 117) SOURCE(10690, 21) /*1*/ tw_v7728 = (word) XRM_BITAND(dstW_v7700, tw_v7728); SOURCE(10775, 58) /*1*/ { /*1*/ word var_c16096; /*1*/ word var_c0331; /*1*/ var_c16096 = (word) XRM_BITNOT(mask_v7672); /*1*/ var_c0331 = (word) XRM_BITAND(tw_v7728, var_c16096); /*1*/ (* (ptr) (dst_v14140 + 4) ) = (var_c0331 + (word) XRM_BITAND(dstW_v7700, mask_v7672)); /*1*/ }; /*1*/ }; /*1*/ }; } else { if ((bits_v14224 != 32)) { /*1*/ { /*1*/ word mask_v7756; /*1*/ word dstW_v7784; /*1*/ word tw_v7812; /*1*/ mask_v7756 = (word) XRM_BITRSHIFT( (word) -1, bits_v14224); /*1*/ dstW_v7784 = (* (ptr) dst_v14140 ); /*1*/ tw_v7812 = w_v14196; SOURCE(10931, 117) SOURCE(10965, 21) /*1*/ tw_v7812 = (word) XRM_BITAND(dstW_v7784, tw_v7812); SOURCE(11050, 52) /*1*/ { /*1*/ word var_c16128; /*1*/ word var_c0332; /*1*/ var_c16128 = (word) XRM_BITNOT(mask_v7756); /*1*/ var_c0332 = (word) XRM_BITAND(tw_v7812, var_c16128); /*1*/ (* (ptr) dst_v14140 ) = ((word) XRM_BITAND(dstW_v7784, mask_v7756) + var_c0332); /*1*/ }; /*1*/ }; /*1*/ } else { SOURCE(11118, 126) SOURCE(11158, 22) /*1*/ (* (ptr) dst_v14140 ) = (word) XRM_BITAND((* (ptr) dst_v14140 ), w_v14196); /*1*/ }; }; }; SOURCE(6314, 20) if ((rem_v6376 == xBits_v6404)) { SOURCE(6334, 4) goto lab_L100057; }; SOURCE(6340, 21) shift_v6460 = (shift_v6460 + xBits_v6404); SOURCE(6363, 45) lab_L100064: ; if ((shift_v6460 >= tBits_v6128)) { } else { goto lab_L100062; }; SOURCE(6387, 21) shift_v6460 = (shift_v6460 - tBits_v6128); goto lab_L100064; lab_L100062: ; SOURCE(6419, 15) dwp_v6432 = (dwp_v6432 + 4); SOURCE(6436, 10) dShift_v6488 = 0; SOURCE(6448, 17) rem_v6376 = (rem_v6376 - xBits_v6404); SOURCE(6467, 11) xBits_v6404 = 32; SOURCE(6480, 29) if ((rem_v6376 < 32)) { SOURCE(6498, 11) xBits_v6404 = rem_v6376; }; }; goto lab_L100058; lab_L100057: ; break; case 2: SOURCE(6606, 15) SOURCE(6086, 423) lab_L100067: ; { word tw_v12464; word valid_v12492; tw_v12464 = (word) XRM_BITLSHIFT(sw_v6240, shift_v6460); valid_v12492 = (tBits_v6128 - shift_v6460); SOURCE(6150, 31) if ((rem_v6376 < xBits_v6404)) { SOURCE(6170, 11) xBits_v6404 = rem_v6376; }; SOURCE(6183, 76) lab_L100070: ; if ((valid_v12492 < xBits_v6404)) { } else { goto lab_L100068; }; SOURCE(6206, 30) tw_v12464 = ((word) XRM_BITRSHIFT(sw_v6240, valid_v12492) + tw_v12464); SOURCE(6238, 21) valid_v12492 = (valid_v12492 + tBits_v6128); goto lab_L100070; lab_L100068: ; SOURCE(6270, 42) { word dst_v13780; word dstMod_v13808; word w_v13836; word bits_v13864; dst_v13780 = dwp_v6432; dstMod_v13808 = dShift_v6488; w_v13836 = tw_v12464; bits_v13864 = xBits_v6404; if ((dstMod_v13808 != 0)) { { /*1*/ word dstLim_v13912; /*1*/ word mask_v13940; /*1*/ word dstW_v13968; /*1*/ word tw_v13996; /*1*/ dstLim_v13912 = (dstMod_v13808 + bits_v13864); /*1*/ mask_v13940 = (word) XRM_BITRSHIFT( (word) -1, dstMod_v13808); /*1*/ dstW_v13968 = (* (ptr) dst_v13780 ); /*1*/ tw_v13996 = (word) XRM_BITRSHIFT(w_v13836, dstMod_v13808); SOURCE(10307, 56) /*1*/ if ((dstLim_v13912 < 32)) { SOURCE(10328, 35) /*1*/ mask_v13940 = (mask_v13940 - (word) XRM_BITRSHIFT(mask_v13940, bits_v13864)); /*1*/ }; SOURCE(10365, 117) SOURCE(10428, 20) /*1*/ tw_v13996 = (word) XRM_BITOR(dstW_v13968, tw_v13996); SOURCE(10484, 52) /*1*/ { /*1*/ word var_c16160; /*1*/ word var_c0333; /*1*/ var_c16160 = (word) XRM_BITNOT(mask_v13940); /*1*/ var_c0333 = (word) XRM_BITAND(dstW_v13968, var_c16160); /*1*/ (* (ptr) dst_v13780 ) = (var_c0333 + (word) XRM_BITAND(tw_v13996, mask_v13940)); /*1*/ }; SOURCE(10538, 295) /*1*/ if ((dstLim_v13912 > 32)) { SOURCE(10561, 43) /*1*/ mask_v13940 = (word) XRM_BITRSHIFT( (word) -1, (dstLim_v13912 & 037)); SOURCE(10606, 17) /*1*/ dstW_v13968 = (* (ptr) (dst_v13780 + 4) ); SOURCE(10625, 29) /*1*/ tw_v13996 = (word) XRM_BITLSHIFT(w_v13836, (32 - dstMod_v13808)); SOURCE(10656, 117) SOURCE(10719, 20) /*1*/ tw_v13996 = (word) XRM_BITOR(dstW_v13968, tw_v13996); SOURCE(10775, 58) /*1*/ { /*1*/ word var_c16192; /*1*/ word var_c0334; /*1*/ var_c16192 = (word) XRM_BITNOT(mask_v13940); /*1*/ var_c0334 = (word) XRM_BITAND(tw_v13996, var_c16192); /*1*/ (* (ptr) (dst_v13780 + 4) ) = (var_c0334 + (word) XRM_BITAND(dstW_v13968, mask_v13940)); /*1*/ }; /*1*/ }; /*1*/ }; } else { if ((bits_v13864 != 32)) { /*1*/ { /*1*/ word mask_v14040; /*1*/ word dstW_v14068; /*1*/ word tw_v14096; /*1*/ mask_v14040 = (word) XRM_BITRSHIFT( (word) -1, bits_v13864); /*1*/ dstW_v14068 = (* (ptr) dst_v13780 ); /*1*/ tw_v14096 = w_v13836; SOURCE(10931, 117) SOURCE(10994, 20) /*1*/ tw_v14096 = (word) XRM_BITOR(dstW_v14068, tw_v14096); SOURCE(11050, 52) /*1*/ { /*1*/ word var_c16224; /*1*/ word var_c0335; /*1*/ var_c16224 = (word) XRM_BITNOT(mask_v14040); /*1*/ var_c0335 = (word) XRM_BITAND(tw_v14096, var_c16224); /*1*/ (* (ptr) dst_v13780 ) = ((word) XRM_BITAND(dstW_v14068, mask_v14040) + var_c0335); /*1*/ }; /*1*/ }; /*1*/ } else { SOURCE(11118, 126) SOURCE(11188, 21) /*1*/ (* (ptr) dst_v13780 ) = (word) XRM_BITOR((* (ptr) dst_v13780 ), w_v13836); /*1*/ }; }; }; SOURCE(6314, 20) if ((rem_v6376 == xBits_v6404)) { SOURCE(6334, 4) goto lab_L100066; }; SOURCE(6340, 21) shift_v6460 = (shift_v6460 + xBits_v6404); SOURCE(6363, 45) lab_L100073: ; if ((shift_v6460 >= tBits_v6128)) { } else { goto lab_L100071; }; SOURCE(6387, 21) shift_v6460 = (shift_v6460 - tBits_v6128); goto lab_L100073; lab_L100071: ; SOURCE(6419, 15) dwp_v6432 = (dwp_v6432 + 4); SOURCE(6436, 10) dShift_v6488 = 0; SOURCE(6448, 17) rem_v6376 = (rem_v6376 - xBits_v6404); SOURCE(6467, 11) xBits_v6404 = 32; SOURCE(6480, 29) if ((rem_v6376 < 32)) { SOURCE(6498, 11) xBits_v6404 = rem_v6376; }; }; goto lab_L100067; lab_L100066: ; break; default: SOURCE(6634, 16) SOURCE(6086, 423) lab_L100076: ; { word tw_v12392; word valid_v12420; tw_v12392 = (word) XRM_BITLSHIFT(sw_v6240, shift_v6460); valid_v12420 = (tBits_v6128 - shift_v6460); SOURCE(6150, 31) if ((rem_v6376 < xBits_v6404)) { SOURCE(6170, 11) xBits_v6404 = rem_v6376; }; SOURCE(6183, 76) lab_L100079: ; if ((valid_v12420 < xBits_v6404)) { } else { goto lab_L100077; }; SOURCE(6206, 30) tw_v12392 = ((word) XRM_BITRSHIFT(sw_v6240, valid_v12420) + tw_v12392); SOURCE(6238, 21) valid_v12420 = (valid_v12420 + tBits_v6128); goto lab_L100079; lab_L100077: ; SOURCE(6270, 42) { word dst_v13420; word dstMod_v13448; word w_v13476; word bits_v13504; dst_v13420 = dwp_v6432; dstMod_v13448 = dShift_v6488; w_v13476 = tw_v12392; bits_v13504 = xBits_v6404; if ((dstMod_v13448 != 0)) { { /*1*/ word dstLim_v13552; /*1*/ word mask_v13580; /*1*/ word dstW_v13608; /*1*/ word tw_v13636; /*1*/ dstLim_v13552 = (dstMod_v13448 + bits_v13504); /*1*/ mask_v13580 = (word) XRM_BITRSHIFT( (word) -1, dstMod_v13448); /*1*/ dstW_v13608 = (* (ptr) dst_v13420 ); /*1*/ tw_v13636 = (word) XRM_BITRSHIFT(w_v13476, dstMod_v13448); SOURCE(10307, 56) /*1*/ if ((dstLim_v13552 < 32)) { SOURCE(10328, 35) /*1*/ mask_v13580 = (mask_v13580 - (word) XRM_BITRSHIFT(mask_v13580, bits_v13504)); /*1*/ }; SOURCE(10365, 117) SOURCE(10461, 21) /*1*/ tw_v13636 = (word) XRM_BITXOR(dstW_v13608, tw_v13636); SOURCE(10484, 52) /*1*/ { /*1*/ word var_c16256; /*1*/ word var_c0336; /*1*/ var_c16256 = (word) XRM_BITNOT(mask_v13580); /*1*/ var_c0336 = (word) XRM_BITAND(dstW_v13608, var_c16256); /*1*/ (* (ptr) dst_v13420 ) = (var_c0336 + (word) XRM_BITAND(tw_v13636, mask_v13580)); /*1*/ }; SOURCE(10538, 295) /*1*/ if ((dstLim_v13552 > 32)) { SOURCE(10561, 43) /*1*/ mask_v13580 = (word) XRM_BITRSHIFT( (word) -1, (dstLim_v13552 & 037)); SOURCE(10606, 17) /*1*/ dstW_v13608 = (* (ptr) (dst_v13420 + 4) ); SOURCE(10625, 29) /*1*/ tw_v13636 = (word) XRM_BITLSHIFT(w_v13476, (32 - dstMod_v13448)); SOURCE(10656, 117) SOURCE(10752, 21) /*1*/ tw_v13636 = (word) XRM_BITXOR(dstW_v13608, tw_v13636); SOURCE(10775, 58) /*1*/ { /*1*/ word var_c16288; /*1*/ word var_c0337; /*1*/ var_c16288 = (word) XRM_BITNOT(mask_v13580); /*1*/ var_c0337 = (word) XRM_BITAND(tw_v13636, var_c16288); /*1*/ (* (ptr) (dst_v13420 + 4) ) = (var_c0337 + (word) XRM_BITAND(dstW_v13608, mask_v13580)); /*1*/ }; /*1*/ }; /*1*/ }; } else { if ((bits_v13504 != 32)) { /*1*/ { /*1*/ word mask_v13680; /*1*/ word dstW_v13708; /*1*/ word tw_v13736; /*1*/ mask_v13680 = (word) XRM_BITRSHIFT( (word) -1, bits_v13504); /*1*/ dstW_v13708 = (* (ptr) dst_v13420 ); /*1*/ tw_v13736 = w_v13476; SOURCE(10931, 117) SOURCE(11027, 21) /*1*/ tw_v13736 = (word) XRM_BITXOR(dstW_v13708, tw_v13736); SOURCE(11050, 52) /*1*/ { /*1*/ word var_c16320; /*1*/ word var_c0338; /*1*/ var_c16320 = (word) XRM_BITNOT(mask_v13680); /*1*/ var_c0338 = (word) XRM_BITAND(tw_v13736, var_c16320); /*1*/ (* (ptr) dst_v13420 ) = ((word) XRM_BITAND(dstW_v13708, mask_v13680) + var_c0338); /*1*/ }; /*1*/ }; /*1*/ } else { SOURCE(11118, 126) SOURCE(11222, 22) /*1*/ (* (ptr) dst_v13420 ) = (word) XRM_BITXOR((* (ptr) dst_v13420 ), w_v13476); /*1*/ }; }; }; SOURCE(6314, 20) if ((rem_v6376 == xBits_v6404)) { SOURCE(6334, 4) goto lab_L100075; }; SOURCE(6340, 21) shift_v6460 = (shift_v6460 + xBits_v6404); SOURCE(6363, 45) lab_L100082: ; if ((shift_v6460 >= tBits_v6128)) { } else { goto lab_L100080; }; SOURCE(6387, 21) shift_v6460 = (shift_v6460 - tBits_v6128); goto lab_L100082; lab_L100080: ; SOURCE(6419, 15) dwp_v6432 = (dwp_v6432 + 4); SOURCE(6436, 10) dShift_v6488 = 0; SOURCE(6448, 17) rem_v6376 = (rem_v6376 - xBits_v6404); SOURCE(6467, 11) xBits_v6404 = 32; SOURCE(6480, 29) if ((rem_v6376 < 32)) { SOURCE(6498, 11) xBits_v6404 = rem_v6376; }; }; goto lab_L100076; lab_L100075: ; break; }; }; SOURCE(6652, 18) if ((sSize_v6156 == 1)) { SOURCE(6670, 4) goto lab_L100045; }; SOURCE(6676, 17) sSize_v6156 = (sSize_v6156 - 1); SOURCE(6695, 9) { word next_v6704; next_v6704 = (srcBit_v5988 + (* (( (ptr) arg_v3648)+7) )); SOURCE(4558, 21) srcBit_v5988 = (next_v6704 & 037); SOURCE(4581, 34) src_v6016 = (src_v6016 + ((next_v6704 - srcBit_v5988) >> 3)); SOURCE(4617, 21) tileLine_v5932 = (tileLine_v5932 + 1); SOURCE(4640, 210) if ((tileLine_v5932 == (* (( (ptr) arg_v3648)+9) ))) { { word phase_v6732; phase_v6732 = (* (( (ptr) arg_v3648)+12) ); SOURCE(4699, 97) if ((firstBit_v5960 < phase_v6732)) { SOURCE(4724, 45) firstBit_v5960 = (firstBit_v5960 + (fSizeTile_v6100 - phase_v6732)); } else { SOURCE(4769, 27) firstBit_v5960 = (firstBit_v5960 - phase_v6732); }; SOURCE(4798, 12) tileLine_v5932 = 0; SOURCE(4812, 19) srcBit_v5988 = (* (( (ptr) arg_v3648)+6) ); SOURCE(4833, 17) src_v6016 = (* (( (ptr) arg_v3648)+5) ); }; }; }; SOURCE(6706, 9) { word next_v6676; next_v6676 = (dstBit_v6072 + (* (( (ptr) arg_v3648)+2) )); SOURCE(4438, 21) dstBit_v6072 = (next_v6676 & 037); SOURCE(4461, 34) dst_v6044 = (dst_v6044 + ((next_v6676 - dstBit_v6072) >> 3)); }; }; goto lab_L100046; lab_L100045: ; }; } static void Fast3_P240(arg_v3708) word arg_v3708; { word tileLine_v6872; word firstBit_v6900; word srcBit_v6928; word src_v6956; word dst_v6984; word dstBit_v7012; word fSizeTile_v7040; word sSize_v7068; /* Fast3: */ SOURCE(6733, 1027) SOURCE(7245, 29) tileLine_v6872 = (* (( (ptr) arg_v3708)+11) ); SOURCE(7276, 28) firstBit_v6900 = (* (( (ptr) arg_v3708)+10) ); SOURCE(7306, 30) srcBit_v6928 = (* (( (ptr) arg_v3708)+6) ); SOURCE(7338, 26) src_v6956 = (* (( (ptr) arg_v3708)+5) ); SOURCE(7366, 26) dst_v6984 = (* (ptr) arg_v3708 ); SOURCE(7394, 30) dstBit_v7012 = (* (( (ptr) arg_v3708)+1) ); SOURCE(7426, 30) fSizeTile_v7040 = (* (( (ptr) arg_v3708)+8) ); SOURCE(7458, 22) sSize_v7068 = (* (( (ptr) arg_v3708)+4) ); SOURCE(7482, 278) if ( ( (sSize_v7068 != 0) ? ((* (( (ptr) arg_v3708)+3) ) != 0) : 0 ) ) { SOURCE(7520, 120) if ((tileLine_v6872 != 0)) { SOURCE(7541, 101) { word next_v7144; SOURCE(7543, 40) next_v7144 = (srcBit_v6928 + (tileLine_v6872 * (* (( (ptr) arg_v3708)+7) ))); SOURCE(7585, 21) srcBit_v6928 = (next_v7144 & 037); SOURCE(7608, 32) src_v6956 = (src_v6956 + ((next_v7144 - srcBit_v6928) >> 3)); }; }; SOURCE(7645, 115) lab_L100085: ; SOURCE(7648, 47) (void) DoLine_P300(arg_v3708, dst_v6984, dstBit_v7012, src_v6956, srcBit_v6928, firstBit_v6900); SOURCE(7697, 18) if ((sSize_v7068 == 1)) { SOURCE(7715, 4) goto lab_L100084; }; SOURCE(7721, 17) sSize_v7068 = (sSize_v7068 - 1); SOURCE(7740, 9) { word next_v7216; next_v7216 = (srcBit_v6928 + (* (( (ptr) arg_v3708)+7) )); SOURCE(6945, 21) srcBit_v6928 = (next_v7216 & 037); SOURCE(6968, 34) src_v6956 = (src_v6956 + ((next_v7216 - srcBit_v6928) >> 3)); SOURCE(7004, 21) tileLine_v6872 = (tileLine_v6872 + 1); SOURCE(7027, 210) if ((tileLine_v6872 == (* (( (ptr) arg_v3708)+9) ))) { { word phase_v7244; phase_v7244 = (* (( (ptr) arg_v3708)+12) ); SOURCE(7086, 97) if ((firstBit_v6900 < phase_v7244)) { SOURCE(7111, 45) firstBit_v6900 = (firstBit_v6900 + (fSizeTile_v7040 - phase_v7244)); } else { SOURCE(7156, 27) firstBit_v6900 = (firstBit_v6900 - phase_v7244); }; SOURCE(7185, 12) tileLine_v6872 = 0; SOURCE(7199, 19) srcBit_v6928 = (* (( (ptr) arg_v3708)+6) ); SOURCE(7220, 17) src_v6956 = (* (( (ptr) arg_v3708)+5) ); }; }; }; SOURCE(7751, 9) { word next_v7188; next_v7188 = (dstBit_v7012 + (* (( (ptr) arg_v3708)+2) )); SOURCE(6825, 21) dstBit_v7012 = (next_v7188 & 037); SOURCE(6848, 34) dst_v6984 = (dst_v6984 + ((next_v7188 - dstBit_v7012) >> 3)); }; goto lab_L100085; lab_L100084: ; }; } static void DoLine_P300(arg_v3768, formal_c0347, formal_c0348, formal_c0349, formal_c0350, firstBit_v3908) word arg_v3768; word formal_c0347; word formal_c0348; word formal_c0349; word formal_c0350; word firstBit_v3908; { W16 var_c17216; /* declaration of dwp_v3796 skipped */ /* declaration of dstPos_v3824 skipped */ /* declaration of src_v3852 skipped */ /* declaration of srcBit_v3880 skipped */ /* declaration of var_c16352 skipped */ /* declaration of invert_v7272 skipped */ /* declaration of dstRem_v7300 skipped */ /* declaration of fSizeTile_v7328 skipped */ /* declaration of srcRem_v7356 skipped */ /* declaration of srcPos_v7384 skipped */ /* declaration of swp_v7412 skipped */ (* (( (ptr) &var_c17216)+4)/* dwp_v3796 */ ) = formal_c0347; (* (( (ptr) &var_c17216)+5)/* dstPos_v3824 */ ) = formal_c0348; (* (( (ptr) &var_c17216)+6)/* src_v3852 */ ) = formal_c0349; (* (( (ptr) &var_c17216)+7)/* srcBit_v3880 */ ) = formal_c0350; /* DoLine: */ SOURCE(7778, 2057) { word tmpAddr3; tmpAddr3 = (word) (( (ptr) &var_c17216)+8)/* var_c16352 */ ; (* (ptr) tmpAddr3 ) = ( ((word) (fPt) WithFunction_P1968) ); (* (( (ptr) tmpAddr3) + 1) ) = 1; }; SOURCE(7887, 28) (* (( (ptr) &var_c17216)+10)/* invert_v7272 */ ) = (* (( (ptr) arg_v3768)+13) ); SOURCE(7917, 23) (* (( (ptr) &var_c17216)+11)/* dstRem_v7300 */ ) = (* (( (ptr) arg_v3768)+3) ); SOURCE(7942, 30) (* (( (ptr) &var_c17216)+12)/* fSizeTile_v7328 */ ) = (* (( (ptr) arg_v3768)+8) ); SOURCE(7974, 32) (* (( (ptr) &var_c17216)+13)/* srcRem_v7356 */ ) = ((* (( (ptr) &var_c17216)+12)/* fSizeTile_v7328 */ ) - firstBit_v3908); SOURCE(8008, 45) (* (( (ptr) &var_c17216)+14)/* srcPos_v7384 */ ) = ((firstBit_v3908 + (* (( (ptr) &var_c17216)+7)/* srcBit_v3880 */ )) & 037); SOURCE(8055, 58) (* (( (ptr) &var_c17216)+15)/* swp_v7412 */ ) = ((* (( (ptr) &var_c17216)+6)/* src_v3852 */ ) + (((firstBit_v3908 + (* ( ( (ptr) &var_c17216)+7)/* srcBit_v3880 */ )) - (* (( (ptr) &var_c17216)+14)/* srcPos_v7384 */ )) >> 3)); SOURCE(9705, 130) { word var_c16384; var_c16384 = (* (( (ptr) arg_v3768)+14) ); switch (var_c16384) { case 0: SOURCE(9737, 18) (void) WithFunction_P1968(0, (word) (( (bPt) &var_c17216)+32)/* var_c16352 */ ); break; case 1: SOURCE(9764, 17) (void) WithFunction_P1968(1, (word) (( (bPt) &var_c17216)+32)/* var_c16352 */ ); break; case 2: SOURCE(9789, 16) (void) WithFunction_P1968(2, (word) (( (bPt) &var_c17216)+32)/* var_c16352 */ ); break; default: SOURCE(9818, 17) (void) WithFunction_P1968(3, (word) (( (bPt) &var_c17216)+32)/* var_c16352 */ ); break; }; }; } static void WithFunction_P1968(df_v7516, formal_c17248) word df_v7516; word formal_c17248; { formal_c17248 = (formal_c17248 - 32); /* WithFunction: */ SOURCE(8115, 1576) SOURCE(8163, 1528) lab_L100088: ; SOURCE(8163, 1528) { word next_v7544; word sw_v7572; word xBits_v7600; SOURCE(8177, 31) sw_v7572 = (word) XRM_BITXOR((* (ptr) (* (( (ptr) formal_c17248)+15) ) ), (* (( (ptr) formal_c17248)+10) )); SOURCE(8210, 28) xBits_v7600 = (32 - (* (( (ptr) formal_c17248)+5) )); SOURCE(8240, 37) if (((* (( (ptr) formal_c17248)+11) ) < xBits_v7600)) { SOURCE(8263, 14) xBits_v7600 = (* (( (ptr) formal_c17248)+11) ); }; SOURCE(8280, 541) if (((* (( (ptr) formal_c17248)+13) ) < xBits_v7600)) { SOURCE(8305, 136) if (((* (( (ptr) formal_c17248)+14) ) != 0)) { SOURCE(8326, 26) sw_v7572 = (word) XRM_BITLSHIFT(sw_v7572, (* (( (ptr) formal_c17248)+14) )); SOURCE(8354, 87) if ((((* (( (ptr) formal_c17248)+14) ) + (* (( (ptr) formal_c17248)+13) )) > 32)) { SOURCE(8382, 59) { word var_c16416; word var_c0339; var_c16416 = (word) XRM_BITXOR((* (ptr) ((* (( (ptr) formal_c17248)+15) ) + 4) ), (* (( (ptr) formal_c17248)+10) )); var_c0339 = (word) XRM_BITRSHIFT(var_c16416, (32 - (* (( (ptr) formal_c17248)+14) ))); sw_v7572 = (sw_v7572 + var_c0339); }; }; }; SOURCE(8446, 110) { word var_c16448; word var_c0340; word var_c16480; var_c16448 = (word) XRM_BITLSHIFT( (word) -1, (32 - (* (( (ptr) formal_c17248)+13) ))); var_c0340 = (word) XRM_BITAND(sw_v7572, var_c16448); { word var_c16512; var_c16512 = (word) XRM_BITXOR((* (ptr) (* (( (ptr) formal_c17248)+6) ) ), (* (( (ptr) formal_c17248)+10) )); var_c16480 = (word) XRM_BITLSHIFT(var_c16512, (* (( (ptr) formal_c17248)+7) )); }; sw_v7572 = (var_c0340 + (word) XRM_BITRSHIFT(var_c16480, (* (( (ptr) formal_c17248)+13) ))); }; SOURCE(8558, 17) next_v7544 = (32 - (* (( (ptr) formal_c17248)+7) )); SOURCE(8577, 41) if (((* (( (ptr) formal_c17248)+12) ) < next_v7544)) { SOURCE(8602, 16) next_v7544 = (* (( (ptr) formal_c17248)+12) ); }; SOURCE(8620, 20) next_v7544 = ((* (( (ptr) formal_c17248)+13) ) + next_v7544); SOURCE(8642, 33) if ((next_v7544 < xBits_v7600)) { SOURCE(8663, 12) xBits_v7600 = next_v7544; }; } else { SOURCE(8686, 135) if (((* (( (ptr) formal_c17248)+14) ) != 0)) { SOURCE(8707, 26) sw_v7572 = (word) XRM_BITLSHIFT(sw_v7572, (* (( (ptr) formal_c17248)+14) )); SOURCE(8735, 86) if ((((* (( (ptr) formal_c17248)+14) ) + xBits_v7600) > 32)) { SOURCE(8762, 59) { word var_c16544; word var_c0341; var_c16544 = (word) XRM_BITXOR((* (ptr) ((* (( (ptr) formal_c17248)+15) ) + 4) ), (* (( (ptr) formal_c17248)+10) )); var_c0341 = (word) XRM_BITRSHIFT(var_c16544, (32 - (* (( (ptr) formal_c17248)+14) ))); sw_v7572 = (sw_v7572 + var_c0341); }; }; }; }; SOURCE(8830, 620) if ((xBits_v7600 == 32)) { SOURCE(8852, 130) { word var_c16576; var_c16576 = df_v7516; switch (var_c16576) { case 0: SOURCE(8875, 9) (* (ptr) (* (( (ptr) formal_c17248)+4) ) ) = sw_v7572; break; case 1: SOURCE(8893, 23) { word var_c16608; var_c16608 = (word) XRM_BITAND((* (ptr) (* (( (ptr) formal_c17248)+4) ) ), sw_v7572); (* (ptr) (* (( (ptr) formal_c17248)+4) ) ) = var_c16608; }; break; case 2: SOURCE(8924, 22) { word var_c16640; var_c16640 = (word) XRM_BITOR((* (ptr) (* (( (ptr) formal_c17248)+4) ) ), sw_v7572); (* (ptr) (* (( (ptr) formal_c17248)+4) ) ) = var_c16640; }; break; default: SOURCE(8959, 23) { word var_c16672; var_c16672 = (word) XRM_BITXOR((* (ptr) (* (( (ptr) formal_c17248)+4) ) ), sw_v7572); (* (ptr) (* (( (ptr) formal_c17248)+4) ) ) = var_c16672; }; break; }; }; SOURCE(8984, 23) if ((xBits_v7600 == (* (( (ptr) formal_c17248)+11) ))) { SOURCE(9007, 4) goto lab_L100087; }; SOURCE(9013, 15) (* (( (ptr) formal_c17248)+4) ) = ((* (( (ptr) formal_c17248)+4) ) + 4); SOURCE(9030, 23) (* (( (ptr) formal_c17248)+11) ) = ((* (( (ptr) formal_c17248)+11) ) - xBits_v7600); SOURCE(9055, 65) if (((* (( (ptr) formal_c17248)+13) ) > xBits_v7600)) { SOURCE(9080, 15) (* (( (ptr) formal_c17248)+15) ) = ((* (( (ptr) formal_c17248)+15) ) + 4); SOURCE(9097, 23) (* (( (ptr) formal_c17248)+13) ) = ((* (( (ptr) formal_c17248)+13) ) - xBits_v7600); SOURCE(9122, 4) goto lab_L100088; }; } else { SOURCE(9140, 42) { word dst_v12672; word dstMod_v12700; word w_v12728; word bits_v12756; word df_v12784; dst_v12672 = (* (( (ptr) formal_c17248)+4) ); dstMod_v12700 = (* (( (ptr) formal_c17248)+5) ); w_v12728 = sw_v7572; bits_v12756 = xBits_v7600; df_v12784 = df_v7516; if ((dstMod_v12700 != 0)) { { word dstLim_v12832; word mask_v12860; word dstW_v12888; word tw_v12916; dstLim_v12832 = (dstMod_v12700 + bits_v12756); mask_v12860 = (word) XRM_BITRSHIFT( (word) -1, dstMod_v12700); dstW_v12888 = (* (ptr) dst_v12672 ); tw_v12916 = (word) XRM_BITRSHIFT(w_v12728, dstMod_v12700); SOURCE(10307, 56) if ((dstLim_v12832 < 32)) { SOURCE(10328, 35) mask_v12860 = (mask_v12860 - (word) XRM_BITRSHIFT(mask_v12860, bits_v12756)); }; SOURCE(10365, 117) { word var_c16704; var_c16704 = df_v12784; switch (var_c16704) { case 0: break; case 1: SOURCE(10399, 21) tw_v12916 = (word) XRM_BITAND(dstW_v12888, tw_v12916); break; case 2: SOURCE(10428, 20) tw_v12916 = (word) XRM_BITOR(dstW_v12888, tw_v12916); break; default: SOURCE(10461, 21) tw_v12916 = (word) XRM_BITXOR(dstW_v12888, tw_v12916); break; }; }; SOURCE(10484, 52) { word var_c16736; word var_c0342; var_c16736 = (word) XRM_BITNOT(mask_v12860); var_c0342 = (word) XRM_BITAND(dstW_v12888, var_c16736); (* (ptr) dst_v12672 ) = (var_c0342 + (word) XRM_BITAND(tw_v12916, mask_v12860)); }; SOURCE(10538, 295) if ((dstLim_v12832 > 32)) { SOURCE(10561, 43) mask_v12860 = (word) XRM_BITRSHIFT( (word) -1, (dstLim_v12832 & 037)); SOURCE(10606, 17) dstW_v12888 = (* (ptr) (dst_v12672 + 4) ); SOURCE(10625, 29) tw_v12916 = (word) XRM_BITLSHIFT(w_v12728, (32 - dstMod_v12700)); SOURCE(10656, 117) { word var_c16768; var_c16768 = df_v12784; switch (var_c16768) { case 0: /*1*/ break; case 1: SOURCE(10690, 21) /*1*/ tw_v12916 = (word) XRM_BITAND(dstW_v12888, tw_v12916); /*1*/ break; case 2: SOURCE(10719, 20) /*1*/ tw_v12916 = (word) XRM_BITOR(dstW_v12888, tw_v12916); /*1*/ break; default: SOURCE(10752, 21) /*1*/ tw_v12916 = (word) XRM_BITXOR(dstW_v12888, tw_v12916); /*1*/ break; }; }; SOURCE(10775, 58) { word var_c16800; word var_c0343; var_c16800 = (word) XRM_BITNOT(mask_v12860); var_c0343 = (word) XRM_BITAND(tw_v12916, var_c16800); (* (ptr) (dst_v12672 + 4) ) = (var_c0343 + (word) XRM_BITAND(dstW_v12888, mask_v12860)); }; }; }; } else { if ((bits_v12756 != 32)) { { word mask_v12960; word dstW_v12988; word tw_v13016; mask_v12960 = (word) XRM_BITRSHIFT( (word) -1, bits_v12756); dstW_v12988 = (* (ptr) dst_v12672 ); tw_v13016 = w_v12728; SOURCE(10931, 117) { word var_c16832; var_c16832 = df_v12784; switch (var_c16832) { case 0: /*1*/ break; case 1: SOURCE(10965, 21) /*1*/ tw_v13016 = (word) XRM_BITAND(dstW_v12988, tw_v13016); /*1*/ break; case 2: SOURCE(10994, 20) /*1*/ tw_v13016 = (word) XRM_BITOR(dstW_v12988, tw_v13016); /*1*/ break; default: SOURCE(11027, 21) /*1*/ tw_v13016 = (word) XRM_BITXOR(dstW_v12988, tw_v13016); /*1*/ break; }; }; SOURCE(11050, 52) { word var_c16864; word var_c0344; var_c16864 = (word) XRM_BITNOT(mask_v12960); var_c0344 = (word) XRM_BITAND(tw_v13016, var_c16864); (* (ptr) dst_v12672 ) = ((word) XRM_BITAND(dstW_v12988, mask_v12960) + var_c0344); }; }; } else { SOURCE(11118, 126) { word var_c16896; var_c16896 = df_v12784; switch (var_c16896) { case 0: SOURCE(11141, 8) (* (ptr) dst_v12672 ) = w_v12728; break; case 1: SOURCE(11158, 22) (* (ptr) dst_v12672 ) = (word) XRM_BITAND((* (ptr) dst_v12672 ), w_v12728); break; case 2: SOURCE(11188, 21) (* (ptr) dst_v12672 ) = (word) XRM_BITOR((* (ptr) dst_v12672 ), w_v12728); break; default: SOURCE(11222, 22) (* (ptr) dst_v12672 ) = (word) XRM_BITXOR((* (ptr) dst_v12672 ), w_v12728); break; }; }; }; }; }; SOURCE(9184, 23) if ((xBits_v7600 == (* (( (ptr) formal_c17248)+11) ))) { SOURCE(9207, 4) goto lab_L100087; }; SOURCE(9213, 19) next_v7544 = ((* (( (ptr) formal_c17248)+5) ) + xBits_v7600); SOURCE(9234, 21) (* (( (ptr) formal_c17248)+5) ) = (next_v7544 & 037); SOURCE(9257, 36) (* (( (ptr) formal_c17248)+4) ) = ((* (( (ptr) formal_c17248)+4) ) + ((next_v7544 - (* (( (ptr) formal_c17248)+5) )) >> 3)); SOURCE(9295, 23) (* (( (ptr) formal_c17248)+11) ) = ((* (( (ptr) formal_c17248)+11) ) - xBits_v7600); SOURCE(9320, 130) if (((* (( (ptr) formal_c17248)+13) ) > xBits_v7600)) { SOURCE(9345, 19) next_v7544 = ((* (( (ptr) formal_c17248)+14) ) + xBits_v7600); SOURCE(9366, 21) (* (( (ptr) formal_c17248)+14) ) = (next_v7544 & 037); SOURCE(9389, 36) (* (( (ptr) formal_c17248)+15) ) = ((* (( (ptr) formal_c17248)+15) ) + ((next_v7544 - (* (( (ptr) formal_c17248)+14) )) >> 3)); SOURCE(9427, 23) (* (( (ptr) formal_c17248)+13) ) = ((* (( (ptr) formal_c17248)+13) ) - xBits_v7600); SOURCE(9452, 4) goto lab_L100088; }; }; SOURCE(9464, 172) if (((* (( (ptr) formal_c17248)+13) ) < xBits_v7600)) { SOURCE(9489, 21) next_v7544 = (xBits_v7600 - (* (( (ptr) formal_c17248)+13) )); SOURCE(9512, 25) (* (( (ptr) formal_c17248)+13) ) = ((* (( (ptr) formal_c17248)+12) ) - next_v7544); SOURCE(9539, 20) next_v7544 = ((* (( (ptr) formal_c17248)+7) ) + next_v7544); SOURCE(9561, 21) (* (( (ptr) formal_c17248)+14) ) = (next_v7544 & 037); SOURCE(9584, 31) (* (( (ptr) formal_c17248)+15) ) = ((* (( (ptr) formal_c17248)+6) ) + IOP2( / , (int)(next_v7544 - (* (( (ptr) formal_c17248)+14) )), (int)8)); SOURCE(9617, 19) if (((* (( (ptr) formal_c17248)+13) ) != 0)) { SOURCE(9636, 4) goto lab_L100088; }; }; SOURCE(9645, 9) (* (( (ptr) formal_c17248)+15) ) = (* (( (ptr) formal_c17248)+6) ); SOURCE(9656, 15) (* (( (ptr) formal_c17248)+14) ) = (* (( (ptr) formal_c17248)+7) ); SOURCE(9673, 18) (* (( (ptr) formal_c17248)+13) ) = (* (( (ptr) formal_c17248)+12) ); }; goto lab_L100088; lab_L100087: ; } static void DumbOp_P480(arg_v4256) word arg_v4256; { word tileLine_v7840; word adjustedFirstBit_v7868; word src_v7896; word dst_v7924; word dstBpl_v7952; word dstBit_v7980; word srcBpl_v8008; word phase_v8036; word fSize_v8064; word fSizeTile_v8092; word sSizeTile_v8120; word sSize_v8148; word srcBit_v8176; word invert_v8204; word df_v8232; /* DumbOp: */ SOURCE(11250, 1597) SOURCE(11302, 29) tileLine_v7840 = (* (( (ptr) arg_v4256)+11) ); SOURCE(11333, 36) adjustedFirstBit_v7868 = (* (( (ptr) arg_v4256)+10) ); SOURCE(11371, 36) src_v7896 = (* (( (ptr) arg_v4256)+5) ); SOURCE(11409, 36) dst_v7924 = (* (ptr) arg_v4256 ); SOURCE(11447, 24) dstBpl_v7952 = (* (( (ptr) arg_v4256)+2) ); SOURCE(11473, 24) dstBit_v7980 = (* (( (ptr) arg_v4256)+1) ); SOURCE(11499, 24) srcBpl_v8008 = (* (( (ptr) arg_v4256)+7) ); SOURCE(11525, 22) phase_v8036 = (* (( (ptr) arg_v4256)+12) ); SOURCE(11549, 22) fSize_v8064 = (* (( (ptr) arg_v4256)+3) ); SOURCE(11573, 30) fSizeTile_v8092 = (* (( (ptr) arg_v4256)+8) ); SOURCE(11605, 30) sSizeTile_v8120 = (* (( (ptr) arg_v4256)+9) ); SOURCE(11637, 22) sSize_v8148 = (* (( (ptr) arg_v4256)+4) ); SOURCE(11661, 40) srcBit_v8176 = ((* (( (ptr) arg_v4256)+6) ) + (srcBpl_v8008 * tileLine_v7840)); SOURCE(11703, 28) invert_v8204 = (* (( (ptr) arg_v4256)+13) ); SOURCE(11733, 25) df_v8232 = (* (( (ptr) arg_v4256)+14) ); SOURCE(11779, 48) if (((* (( (ptr) arg_v4256)+10) ) >= fSizeTile_v8092)) { SOURCE(11813, 14) (void) BadAssertion_P660(); }; SOURCE(11829, 45) if (((* (( (ptr) arg_v4256)+12) ) >= fSizeTile_v8092)) { SOURCE(11860, 14) (void) BadAssertion_P660(); }; SOURCE(11876, 53) if (((* (( (ptr) arg_v4256)+11) ) >= (* (( (ptr) arg_v4256)+9) ))) { SOURCE(11915, 14) (void) BadAssertion_P660(); }; SOURCE(11934, 45) if (((* (( (ptr) arg_v4256)+3) ) == 0) || ((* (( (ptr) arg_v4256)+4) ) == 0)) { SOURCE(11973, 6) return; }; SOURCE(11981, 866) { register word s_v8276 = 0; register word noName_c16928; noName_c16928 = (* (( (ptr) arg_v4256)+4) ); if ((s_v8276 >= noName_c16928)) { goto lab_L100089; }; lab_L100092: ; { word dstLim_v8320; word tileBit_v8348; word dBit_v8376; SOURCE(12013, 26) dstLim_v8320 = (dstBit_v7980 + fSize_v8064); SOURCE(12041, 31) tileBit_v8348 = adjustedFirstBit_v7868; SOURCE(12074, 18) dBit_v8376 = dstBit_v7980; SOURCE(12094, 464) lab_L100095: ; SOURCE(12094, 464) { word sBit_v8420; word mod_v8448; word sw_v8476; word sb_v8504; SOURCE(12097, 26) sBit_v8420 = (srcBit_v8176 + tileBit_v8348); SOURCE(12125, 29) mod_v8448 = (sBit_v8420 & 037); SOURCE(12156, 52) sw_v8476 = (word) XRM_BITXOR((* (ptr) (src_v7896 + IOP2( / , (int)(sBit_v8420 - mod_v8448), (int)8)) ), invert_v8204); SOURCE(12210, 48) { word var_c16960; var_c16960 = (word) XRM_BITLSHIFT(sw_v8476, mod_v8448); sb_v8504 = (word) XRM_BITRSHIFT(var_c16960, 31); }; SOURCE(12260, 188) { word var_c16992; var_c16992 = df_v8232; switch (var_c16992) { case 0: SOURCE(12283, 14) { word x4; word x5; x4 = (word) (( (ptr) dst_v7924) + (dBit_v8376 >> 5)); x5 = 32 - ((dBit_v8376 & 037)+1); (* (ptr) x4 ) = ((* (ptr) x4 ) & ( ~ (1 << x5))) | (((sb_v8504 & 1)) << x5); }; break; case 1: SOURCE(12306, 33) { word var_c17024; var_c17024 = (word) XRM_BITAND((((* (ptr) (( (ptr) dst_v7924) + (dBit_v8376 >> 5)) ) >> (31 - ((dBit_v8376 & 037)))) & 1), sb_v8504) ; { word x6; word x7; x6 = (word) (( (ptr) dst_v7924) + (dBit_v8376 >> 5)); x7 = 32 - ((dBit_v8376 & 037)+1); (* (ptr) x6 ) = ((* (ptr) x6 ) & ( ~ (1 << x7))) | (((var_c17024 & 1)) << x7); }; }; break; case 2: SOURCE(12347, 32) { word var_c17056; var_c17056 = (word) XRM_BITOR((((* (ptr) (( (ptr) dst_v7924) + (dBit_v8376 >> 5)) ) >> (31 - ((dBit_v8376 & 037)))) & 1), sb_v8504) ; { word x8; word x9; x8 = (word) (( (ptr) dst_v7924) + (dBit_v8376 >> 5)); x9 = 32 - ((dBit_v8376 & 037)+1); (* (ptr) x8 ) = ((* (ptr) x8 ) & ( ~ (1 << x9))) | (((var_c17056 & 1)) << x9); }; }; break; case 3: SOURCE(12388, 33) { word var_c17088; var_c17088 = (word) XRM_BITXOR((((* (ptr) (( (ptr) dst_v7924) + (dBit_v8376 >> 5)) ) >> (31 - ((dBit_v8376 & 037)))) & 1), sb_v8504) ; { word x10; word x11; x10 = (word) (( (ptr) dst_v7924) + (dBit_v8376 >> 5)); x11 = 32 - ((dBit_v8376 & 037)+1); (* (ptr) x10 ) = ((* (ptr) x10 ) & ( ~ (1 << x11))) | (((var_c17088 & 1)) << x11); }; }; break; default: SOURCE(12434, 14) (void) BadAssertion_P660(); break; }; }; SOURCE(12450, 15) dBit_v8376 = (dBit_v8376 + 1); SOURCE(12467, 22) if ((dBit_v8376 == dstLim_v8320)) { SOURCE(12489, 4) goto lab_L100094; }; SOURCE(12495, 21) tileBit_v8348 = (tileBit_v8348 + 1); SOURCE(12518, 40) if ((tileBit_v8348 >= fSizeTile_v8092)) { SOURCE(12547, 11) tileBit_v8348 = 0; }; }; goto lab_L100095; lab_L100094: ; SOURCE(12569, 24) dstBit_v7980 = (dstBit_v7980 + dstBpl_v7952); SOURCE(12595, 24) srcBit_v8176 = (srcBit_v8176 + srcBpl_v8008); SOURCE(12621, 21) tileLine_v7840 = (tileLine_v7840 + 1); SOURCE(12644, 203) if ((tileLine_v7840 == sSizeTile_v8120)) { SOURCE(12675, 137) if ((adjustedFirstBit_v7868 < phase_v8036)) { SOURCE(12708, 61) adjustedFirstBit_v7868 = (adjustedFirstBit_v7868 + (fSizeTile_v8092 - phase_v8036)); } else { SOURCE(12769, 43) adjustedFirstBit_v7868 = (adjustedFirstBit_v7868 - phase_v8036); }; SOURCE(12814, 12) tileLine_v7840 = 0; SOURCE(12828, 19) srcBit_v8176 = (* (( (ptr) arg_v4256)+6) ); }; }; s_v8276 = (s_v8276 + 1); if ((s_v8276 < noName_c16928)) { goto lab_L100092; }; lab_L100089: ; }; } static word FunnyOp_P540(dw_v4316, sw_v4344, op_v4372) word dw_v4316; word sw_v4344; word op_v4372; { word var_c4416; word m1_v8548; word m2_v8576; word m3_v8604; word w1_v8632; word w2_v8660; word w3_v8688; word w4_v8716; word w5_v8744; word w6_v8772; /* FunnyOp: */ SOURCE(12865, 404) SOURCE(12934, 55) m1_v8548 = ( ((op_v4372 == 1) || (op_v4372 == 2)) ? (word) -1 : 0 ) ; SOURCE(12991, 44) m2_v8576 = ( (op_v4372 != 1) ? (word) -1 : 0 ) ; SOURCE(13037, 55) m3_v8604 = ( ((op_v4372 == 2) || (op_v4372 == 3)) ? (word) -1 : 0 ) ; SOURCE(13096, 25) w1_v8632 = (word) XRM_BITAND(sw_v4344, m1_v8548); SOURCE(13123, 25) w2_v8660 = (word) XRM_BITAND(sw_v4344, m2_v8576); SOURCE(13150, 25) w3_v8688 = (word) XRM_BITAND(dw_v4316, m3_v8604); SOURCE(13177, 25) w4_v8716 = (word) XRM_BITXOR(w2_v8660, w3_v8688); SOURCE(13204, 25) w5_v8744 = (word) XRM_BITAND(dw_v4316, w1_v8632); SOURCE(13231, 24) w6_v8772 = (word) XRM_BITOR(w4_v8716, w5_v8744); SOURCE(13258, 11) return(w6_v8772); } static void BadAssertion_P660() { register ptr gf_c17280 = (ptr) &globalframe; /* BadAssertion: */ SOURCE(13847, 44) SOURCE(13870, 21) (void) XR_RaiseError((word) (( (bPt) gf_c17280)+280)/* var_c14304 */ , 0); } static void InitReplicatorArray_P720() { register ptr gf_c17312 = (ptr) &globalframe; /* InitReplicatorArray: */ SOURCE(13928, 442) SOURCE(13958, 26) (* (( (ptr) gf_c17312)+4) ) = 0; SOURCE(13986, 26) (* (( (ptr) gf_c17312)+37) ) = 0; SOURCE(14014, 34) (* (( (ptr) gf_c17312)+5) ) = (word) -1; SOURCE(14050, 28) (* (( (ptr) gf_c17312)+38) ) = 32; SOURCE(14080, 28) (* (( (ptr) gf_c17312)+36) ) = 1; SOURCE(14110, 28) (* (( (ptr) gf_c17312)+69) ) = 1; SOURCE(14140, 230) { register word i_v8816 = 2; lab_L100099: ; { word t_v8860; word tt_v8888 = 0; SOURCE(14166, 59) t_v8860 = ((word) XRM_BITRSHIFT( (word) -1, (i_v8816 - 1)) - (word) XRM_BITRSHIFT( (word) -1, i_v8816)); SOURCE(14241, 47) lab_L100102: ; if ((t_v8860 != 0)) { } else { goto lab_L100100; }; SOURCE(14256, 11) tt_v8888 = (tt_v8888 + t_v8860); SOURCE(14269, 19) t_v8860 = (word) XRM_BITRSHIFT(t_v8860, i_v8816); goto lab_L100102; lab_L100100: ; SOURCE(14299, 27) (* ((( (ptr) gf_c17312)+4)/* replicatorMultArray_v3140 */ +i_v8816) ) = tt_v8888; SOURCE(14328, 42) (* ((( (ptr) gf_c17312)+37)/* replicatorBitsArray_v3168 */ +i_v8816) ) = (32 - (32 % i_v8816)); }; if ((i_v8816 >= 31)) { goto lab_L100096; }; i_v8816 = (i_v8816 + 1); goto lab_L100099; lab_L100096: ; }; } /* file: UnsafeTileImpl, module: UnsafeTileImpl, compiled at: February 21, 1992 11:34:28 pm PST */ extern void XR_install_UnsafeTileImpl() { NoName_Q4620(); } extern void XR_run_UnsafeTileImpl() { XR_Start(&globalframe); }