// Ayzim rounds a value incorrectly when roundtripping via receive/emit json // search for SEE_HERE function __ZN5physx36createFinalizeSolverContacts4CoulombEPPNS_13PxcNpWorkUnitERNS_18PxcNpThreadContextEPPNS_23PxcSolverConstraintDescEPPKNS_13PxcSolverBodyESB_PPKNS_17PxcSolverBodyDataESF_PPKNS_12PxsRigidCoreESJ_ffffRNS_25PxsConstraintBlockManagerENS_14PxFrictionType4EnumE($n,$threadContext,$desc,$sBody0,$sBody1,$solverBodyData0,$solverBodyData1,$body0,$body1,$invDtF32,$bounceThresholdF32,$frictionOffsetThreshold,$correlationDistance,$constraintBlockManager,$frictionType) { $n = $n|0; $threadContext = $threadContext|0; $desc = $desc|0; $sBody0 = $sBody0|0; $sBody1 = $sBody1|0; $solverBodyData0 = $solverBodyData0|0; $solverBodyData1 = $solverBodyData1|0; $body0 = $body0|0; $body1 = $body1|0; $invDtF32 = +$invDtF32; $bounceThresholdF32 = +$bounceThresholdF32; $frictionOffsetThreshold = +$frictionOffsetThreshold; $correlationDistance = +$correlationDistance; $constraintBlockManager = $constraintBlockManager|0; $frictionType = $frictionType|0; var $$$i1112$ph = 0, $$0$i = 0, $$0$i$1 = 0, $$0$i$2 = 0, $$0$i$3 = 0, $$0$i$i = 0, $$2 = 0, $$phi$trans$insert = 0, $$pre = 0, $$pre$i$i = 0, $$pre41 = 0, $$pre42 = 0, $$pre43 = 0, $$sum = 0, $$sum$i = 0, $$sum18 = 0, $$sum19 = 0, $0 = 0, $1 = 0, $10 = 0; var $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = +0, $116 = 0, $117 = 0, $118 = +0; var $119 = 0, $12 = 0, $120 = 0, $121 = +0, $122 = 0, $123 = 0, $124 = +0, $125 = 0, $126 = +0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0, $136 = 0; var $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 = 0, $153 = 0, $154 = 0; var $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = +0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0, $170 = 0, $171 = +0, $172 = 0; var $173 = 0, $174 = 0, $175 = +0, $176 = 0, $177 = 0, $178 = +0, $179 = 0, $18 = 0, $180 = +0, $181 = 0, $182 = 0, $183 = 0, $184 = +0, $185 = 0, $186 = 0, $187 = +0, $188 = 0, $189 = 0, $19 = 0, $190 = +0; var $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = +0, $206 = 0, $207 = +0, $208 = 0; var $209 = 0, $21 = 0, $210 = +0, $211 = 0, $212 = 0, $213 = +0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0, $224 = 0, $225 = 0, $226 = 0; var $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = +0, $235 = 0, $236 = 0, $237 = 0, $238 = +0, $239 = 0, $24 = 0, $240 = 0, $241 = 0, $242 = +0, $243 = 0, $244 = +0; var $245 = 0, $246 = 0, $247 = 0, $248 = +0, $249 = 0, $25 = 0, $250 = 0, $251 = +0, $252 = 0, $253 = +0, $254 = 0, $255 = +0, $256 = 0, $257 = +0, $258 = 0, $259 = 0, $26 = 0, $260 = 0, $261 = 0, $262 = 0; var $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0, $279 = 0, $28 = 0, $280 = 0; var $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0, $297 = 0, $298 = 0, $299 = 0; var $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0, $314 = 0, $315 = 0, $316 = 0; var $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0, $332 = 0, $333 = 0, $334 = 0; var $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0, $350 = 0, $351 = 0, $352 = 0; var $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0, $369 = 0, $37 = 0, $370 = 0; var $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0, $387 = 0, $388 = 0, $389 = 0; var $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0, $404 = 0, $405 = 0, $406 = 0; var $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0, $422 = 0, $423 = 0, $424 = 0; var $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = +0, $435 = 0, $436 = +0, $437 = 0, $438 = +0, $439 = 0, $44 = 0, $440 = +0, $441 = 0, $442 = 0; var $443 = 0, $444 = +0, $445 = 0, $446 = +0, $447 = 0, $448 = +0, $449 = 0, $45 = 0, $450 = +0, $451 = 0, $452 = 0, $453 = 0, $454 = +0, $455 = 0, $456 = +0, $457 = 0, $458 = +0, $459 = 0, $46 = 0, $460 = +0; var $461 = 0, $462 = 0, $463 = 0, $464 = +0, $465 = 0, $466 = +0, $467 = 0, $468 = +0, $469 = 0, $47 = 0, $470 = +0, $471 = 0, $472 = 0, $473 = 0, $474 = 0, $475 = 0, $476 = 0, $477 = 0, $478 = 0, $479 = 0; var $48 = 0, $480 = 0, $481 = 0, $482 = 0, $483 = 0, $484 = 0, $485 = 0, $486 = 0, $487 = 0, $488 = 0, $489 = 0, $49 = 0, $490 = +0, $491 = 0, $492 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0; var $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0; var $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0; var $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $a$033 = 0, $axisConstraintCount = 0, $blockDescs = 0, $c = 0, $faceIndices$0$off0$i$i = 0, $iInertiaScale0 = 0, $iInertiaScale1 = 0, $iMassScale0 = 0, $iMassScale1 = 0, $idt = 0; var $invInertiaScale0 = 0, $invInertiaScale1 = 0, $invMassScale0 = 0, $invMassScale1 = 0, $iter = 0, $modify$0$off0$i$i = 0, $not$or$cond3$i = 0, $notlhs = 0, $notrhs = 0, $numContactPoints4 = 0, $numContacts$034 = 0, $numContacts$131 = 0, $numContacts$2$ph = 0, $numContacts$3 = 0, $perPointFriction$0$off030 = 0, $perPointFriction$1$off0$ph = 0, $perPointFriction$2$off0 = 0, $phitmp = 0, $phitmp$i$i = 0, $response$0$off0$i$i = 0; var $solverConstraintByteSize = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 2288|0; $blockDescs = sp + 2064|0; $idt = sp + 2032|0; $c = sp + 128|0; $invMassScale0 = sp + 112|0; $invMassScale1 = sp + 96|0; $invInertiaScale0 = sp + 80|0; $invInertiaScale1 = sp + 64|0; $iter = sp + 1964|0; $solverConstraintByteSize = sp + 1960|0; $axisConstraintCount = sp + 1944|0; $numContactPoints4 = sp + 1936|0; $iMassScale0 = sp + 48|0; $iInertiaScale0 = sp + 32|0; $iMassScale1 = sp + 16|0; $iInertiaScale1 = sp; $0 = HEAP32[$desc>>2]|0; $1 = ((($0)) + 26|0); HEAP16[$1>>1] = 0; $2 = ((($desc)) + 4|0); $3 = HEAP32[$2>>2]|0; $4 = ((($3)) + 26|0); HEAP16[$4>>1] = 0; $5 = ((($desc)) + 8|0); $6 = HEAP32[$5>>2]|0; $7 = ((($6)) + 26|0); HEAP16[$7>>1] = 0; $8 = ((($desc)) + 12|0); $9 = HEAP32[$8>>2]|0; $10 = ((($9)) + 26|0); HEAP16[$10>>1] = 0; $11 = ((($threadContext)) + 384|0); $12 = ((($threadContext)) + 4480|0); HEAP32[$12>>2] = 0; HEAPF32[$idt>>2] = +0; $13 = ((($idt)) + 4|0); HEAPF32[$13>>2] = +0; $14 = ((($idt)) + 8|0); HEAPF32[$14>>2] = +0; $15 = ((($idt)) + 12|0); HEAPF32[$15>>2] = +1; $16 = ((($idt)) + 16|0); HEAPF32[$16>>2] = +0; $17 = ((($idt)) + 20|0); HEAPF32[$17>>2] = +0; $18 = ((($idt)) + 24|0); HEAPF32[$18>>2] = +0; $19 = ((($c)) + 1792|0); $20 = ((($c)) + 1796|0); $21 = ($frictionType|0)==(1); $22 = $21 ? 1 : 2; $23 = ((($iter)) + 4|0); $24 = ((($iter)) + 8|0); $25 = ((($iter)) + 36|0); $26 = ((($iter)) + 40|0); $27 = ((($iter)) + 44|0); $28 = ((($iter)) + 12|0); $29 = ((($iter)) + 60|0); $30 = ((($iter)) + 56|0); $31 = ((($iter)) + 64|0); $32 = ((($iter)) + 48|0); $33 = ((($iter)) + 52|0); $34 = ((($iter)) + 24|0); $35 = ((($iter)) + 28|0); $36 = ((($iter)) + 16|0); $37 = ((($iter)) + 32|0); $38 = $19; $39 = $38; HEAP32[$39>>2] = 0; $40 = (($38) + 4)|0; $41 = $40; HEAP32[$41>>2] = 0; $a$033 = 0;$numContacts$034 = 0; while(1) { $42 = (($n) + ($a$033<<2)|0); $43 = HEAP32[$42>>2]|0; $44 = ((($43)) + 22|0); $45 = HEAP16[$44>>1]|0; $46 = $45 & 32; $47 = ($46<<16>>16)==(0); if ($47) { $52 = (((($blockDescs) + (($a$033*56)|0)|0)) + 28|0); HEAP32[$52>>2] = $idt; $479 = $43;$54 = $45; } else { $48 = (($body0) + ($a$033<<2)|0); $49 = HEAP32[$48>>2]|0; $50 = HEAP32[$48>>2]|0; $51 = (((($blockDescs) + (($a$033*56)|0)|0)) + 28|0); HEAP32[$51>>2] = $50; $$pre = HEAP32[$42>>2]|0; $$phi$trans$insert = ((($$pre)) + 22|0); $$pre41 = HEAP16[$$phi$trans$insert>>1]|0; $479 = $$pre;$54 = $$pre41; } $53 = $54 & 64; $55 = ($53<<16>>16)==(0); if ($55) { $60 = (((($blockDescs) + (($a$033*56)|0)|0)) + 32|0); HEAP32[$60>>2] = $idt; $62 = $479; } else { $56 = (($body1) + ($a$033<<2)|0); $57 = HEAP32[$56>>2]|0; $58 = HEAP32[$56>>2]|0; $59 = (((($blockDescs) + (($a$033*56)|0)|0)) + 32|0); HEAP32[$59>>2] = $58; $$pre42 = HEAP32[$42>>2]|0; $62 = $$pre42; } $61 = (($blockDescs) + (($a$033*56)|0)|0); HEAP32[$61>>2] = $62; $63 = (((($blockDescs) + (($a$033*56)|0)|0)) + 12|0); HEAP32[$63>>2] = $numContacts$034; $64 = (($sBody0) + ($a$033<<2)|0); $65 = HEAP32[$64>>2]|0; $66 = (((($blockDescs) + (($a$033*56)|0)|0)) + 36|0); HEAP32[$66>>2] = $65; $67 = (($sBody1) + ($a$033<<2)|0); $68 = HEAP32[$67>>2]|0; $69 = (((($blockDescs) + (($a$033*56)|0)|0)) + 40|0); HEAP32[$69>>2] = $68; $70 = (($solverBodyData0) + ($a$033<<2)|0); $71 = HEAP32[$70>>2]|0; $72 = (((($blockDescs) + (($a$033*56)|0)|0)) + 44|0); HEAP32[$72>>2] = $71; $73 = (($solverBodyData1) + ($a$033<<2)|0); $74 = HEAP32[$73>>2]|0; $75 = (((($blockDescs) + (($a$033*56)|0)|0)) + 48|0); HEAP32[$75>>2] = $74; $76 = HEAP32[$67>>2]|0; $77 = HEAP32[$70>>2]|0; $78 = HEAP32[$73>>2]|0; $79 = HEAP32[$42>>2]|0; $80 = ((($79)) + 20|0); $81 = HEAP16[$80>>1]|0; $82 = $81&65535; $83 = (($82) + ($numContacts$034))|0; $84 = ($83>>>0)>(64); if ($84) { $$2 = 1; label = 53; break; } $85 = ((($79)) + 28|0); $86 = HEAP32[$85>>2]|0; $87 = ((($79)) + 32|0); $88 = HEAP32[$87>>2]|0; HEAPF32[$iter>>2] = +0; HEAPF32[$23>>2] = +0; HEAPF32[$24>>2] = +0; HEAP32[$25>>2] = $88; HEAP32[$26>>2] = 0; HEAP32[$27>>2] = 0; HEAP32[$28>>2] = $86; $89 = ($88|0)==(0); if ($89) { $108 = 0;$109 = 0;$110 = 0;$faceIndices$0$off0$i$i = 0;$modify$0$off0$i$i = 0;$response$0$off0$i$i = 1; } else { $90 = ((($86)) + 2|0); $91 = HEAP16[$90>>1]|0; $92 = $91&65535; $93 = $92 & 2; $94 = ($93|0)!=(0); $95 = $92 & 1; $96 = ($95|0)!=(0); $97 = $93 << 3; $98 = $97 | 4; $99 = (($86) + ($98)|0); $100 = $94 ? 4 : 32; $101 = $95 << 3; $102 = $101 | 16; $103 = $94 ? 72 : $102; $104 = $91 & 4; $phitmp$i$i = ($104<<16>>16)!=(0); $108 = $100;$109 = $103;$110 = $99;$faceIndices$0$off0$i$i = $96;$modify$0$off0$i$i = $94;$response$0$off0$i$i = $phitmp$i$i; } $105 = $modify$0$off0$i$i&1; HEAP32[$29>>2] = $105; $106 = $faceIndices$0$off0$i$i&1; HEAP32[$30>>2] = $106; $107 = $response$0$off0$i$i&1; HEAP32[$31>>2] = $107; HEAP32[$32>>2] = $108; HEAP32[$33>>2] = $109; HEAP32[$34>>2] = $110; HEAP32[$35>>2] = $110; HEAP32[$36>>2] = $110; if ($response$0$off0$i$i) { $numContacts$3 = $numContacts$034;$perPointFriction$2$off0 = 0; } else { if ($modify$0$off0$i$i) { $114 = ((($86)) + 4|0); $115 = +HEAPF32[$114>>2]; $116 = (($invMassScale0) + ($a$033<<2)|0); HEAPF32[$116>>2] = $115; $117 = ((($86)) + 8|0); $118 = +HEAPF32[$117>>2]; $119 = (($invMassScale1) + ($a$033<<2)|0); HEAPF32[$119>>2] = $118; $120 = ((($86)) + 12|0); $121 = +HEAPF32[$120>>2]; $122 = (($invInertiaScale0) + ($a$033<<2)|0); HEAPF32[$122>>2] = $121; $123 = ((($86)) + 16|0); $124 = +HEAPF32[$123>>2]; $126 = $124; } else { $111 = (($invMassScale0) + ($a$033<<2)|0); HEAPF32[$111>>2] = +1; $112 = (($invMassScale1) + ($a$033<<2)|0); HEAPF32[$112>>2] = +1; $113 = (($invInertiaScale0) + ($a$033<<2)|0); HEAPF32[$113>>2] = +1; $126 = +1; } $125 = (($invInertiaScale1) + ($a$033<<2)|0); HEAPF32[$125>>2] = $126; $127 = $110; $128 = $86; $129 = (($127) - ($128))|0; $130 = ($129>>>0)<($88>>>0); if ($130) { $$sum18 = (($109) + 128)|0; $137 = $110;$138 = $86;$141 = $127;$480 = $110;$481 = 0;$482 = 0;$numContacts$131 = $numContacts$034;$perPointFriction$0$off030 = 0; while(1) { HEAP32[$34>>2] = $137; $139 = $138; $140 = (($141) - ($139))|0; $142 = ($140>>>0)<($88>>>0); if ($142) { $143 = HEAP16[$137>>1]|0; $144 = $143&65535; HEAP32[$26>>2] = $144; $145 = Math_imul($109, $144)|0; $$sum$i = (($145) + ($108))|0; $146 = (($137) + ($$sum$i)|0); HEAP32[$35>>2] = $146; $147 = (($137) + ($108)|0); HEAP32[$36>>2] = $147; HEAP32[$27>>2] = 0; $152 = $144;$485 = $147;$486 = 0; } else { HEAP32[$35>>2] = $137; $152 = $482;$485 = $480;$486 = $481; } $150 = $486;$156 = $485;$numContacts$2$ph = $numContacts$131;$perPointFriction$1$off0$ph = $perPointFriction$0$off030; L28: while(1) { $148 = (((($threadContext)) + 384|0) + ($numContacts$2$ph<<6)|0); $$sum19 = (($numContacts$2$ph) + 2)|0; $149 = (((($threadContext)) + 384|0) + ($$sum19<<6)|0); if ($modify$0$off0$i$i) { $153 = $150;$160 = $156; while(1) { $154 = ($153>>>0)<($152>>>0); if (!($154)) { $483 = $160;$484 = $153; break L28; } $159 = (($153) + 1)|0; HEAP32[$27>>2] = $159; HEAP32[$37>>2] = $160; $161 = (($160) + ($109)|0); HEAP32[$36>>2] = $161; $162 = (($160) + ($$sum18)|0); $163 = HEAP32[$37>>2]|0; $164 = ((($163)) + 48|0); $165 = +HEAPF32[$164>>2]; $166 = $165 != +0; if ($166) { break; } else { $153 = $159;$160 = $161; } } if ($modify$0$off0$i$i) { $167 = HEAP32[$37>>2]|0; $168 = ((($167)) + 24|0); $172 = $168;$173 = $148;$181 = $167;$205 = $165;$491 = $161;$492 = $159; } else { $487 = $161;$488 = $159;$489 = $148;$490 = $165; label = 29; } } else { $151 = ($150>>>0)<($152>>>0); if (!($151)) { $483 = $156;$484 = $150; break; } $155 = (($150) + 1)|0; HEAP32[$27>>2] = $155; HEAP32[$37>>2] = $156; $157 = (($156) + ($109)|0); HEAP32[$36>>2] = $157; $158 = (($156) + ($$sum18)|0); $487 = $157;$488 = $155;$489 = $148;$490 = +3.4028234663852886E+38; label = 29; } if ((label|0) == 29) { label = 0; $169 = HEAP32[$34>>2]|0; $170 = ((($169)) + 4|0); $$pre43 = HEAP32[$37>>2]|0; $172 = $170;$173 = $489;$181 = $$pre43;$205 = $490;$491 = $487;$492 = $488; } $171 = +HEAPF32[$172>>2]; HEAPF32[$173>>2] = $171; $174 = ((($172)) + 4|0); $175 = +HEAPF32[$174>>2]; $176 = ((($173)) + 4|0); HEAPF32[$176>>2] = $175; $177 = ((($172)) + 8|0); $178 = +HEAPF32[$177>>2]; $179 = ((($173)) + 8|0); HEAPF32[$179>>2] = $178; $180 = +HEAPF32[$181>>2]; $182 = (((((($threadContext)) + 384|0) + ($numContacts$2$ph<<6)|0)) + 16|0); HEAPF32[$182>>2] = $180; $183 = ((($181)) + 4|0); $184 = +HEAPF32[$183>>2]; $185 = (((((($threadContext)) + 384|0) + ($numContacts$2$ph<<6)|0)) + 20|0); HEAPF32[$185>>2] = $184; $186 = ((($181)) + 8|0); $187 = +HEAPF32[$186>>2]; $188 = (((((($threadContext)) + 384|0) + ($numContacts$2$ph<<6)|0)) + 24|0); HEAPF32[$188>>2] = $187; $189 = ((($181)) + 12|0); $190 = +HEAPF32[$189>>2]; $191 = (((((($threadContext)) + 384|0) + ($numContacts$2$ph<<6)|0)) + 12|0); HEAPF32[$191>>2] = $190; if ($modify$0$off0$i$i) { $192 = ((($181)) + 64|0); $193 = HEAP16[$192>>1]|0; $194 = $193&65535; $195 = ((($181)) + 66|0); $196 = HEAP16[$195>>1]|0; $197 = $196&65535; $198 = $197 << 16; $199 = $198 | $194; $200 = (((((($threadContext)) + 384|0) + ($numContacts$2$ph<<6)|0)) + 48|0); HEAP32[$200>>2] = $199; $201 = ((($181)) + 68|0); $202 = HEAP32[$201>>2]|0; $203 = (((((($threadContext)) + 384|0) + ($numContacts$2$ph<<6)|0)) + 52|0); HEAP32[$203>>2] = $202; $204 = (((((($threadContext)) + 384|0) + ($numContacts$2$ph<<6)|0)) + 28|0); HEAPF32[$204>>2] = $205; $206 = ((($181)) + 52|0); $207 = +HEAPF32[$206>>2]; $208 = (((((($threadContext)) + 384|0) + ($numContacts$2$ph<<6)|0)) + 44|0); HEAPF32[$208>>2] = $207; $209 = ((($181)) + 56|0); $210 = +HEAPF32[$209>>2]; $211 = (((((($threadContext)) + 384|0) + ($numContacts$2$ph<<6)|0)) + 56|0); HEAPF32[$211>>2] = $210; $212 = ((($181)) + 60|0); $213 = +HEAPF32[$212>>2]; $214 = (((((($threadContext)) + 384|0) + ($numContacts$2$ph<<6)|0)) + 60|0); HEAPF32[$214>>2] = $213; $215 = ((($181)) + 36|0); $245 = $215; } else { $216 = HEAP32[$34>>2]|0; $217 = ((($216)) + 28|0); $218 = HEAP16[$217>>1]|0; $219 = $218&65535; $220 = ((($216)) + 30|0); $221 = HEAP16[$220>>1]|0; $222 = $221&65535; $223 = $222 << 16; $224 = $223 | $219; $225 = (((((($threadContext)) + 384|0) + ($numContacts$2$ph<<6)|0)) + 48|0); HEAP32[$225>>2] = $224; $226 = HEAP32[$34>>2]|0; $227 = ((($226)) + 2|0); $228 = HEAP16[$227>>1]|0; $229 = $228&65535; $230 = (((((($threadContext)) + 384|0) + ($numContacts$2$ph<<6)|0)) + 52|0); HEAP32[$230>>2] = $229; $231 = (((((($threadContext)) + 384|0) + ($numContacts$2$ph<<6)|0)) + 28|0); HEAPF32[$231>>2] = $205; $232 = HEAP32[$34>>2]|0; $233 = ((($232)) + 16|0); $234 = +HEAPF32[$233>>2]; $235 = (((((($threadContext)) + 384|0) + ($numContacts$2$ph<<6)|0)) + 44|0); HEAPF32[$235>>2] = $234; $236 = HEAP32[$34>>2]|0; $237 = ((($236)) + 20|0); $238 = +HEAPF32[$237>>2]; $239 = (((((($threadContext)) + 384|0) + ($numContacts$2$ph<<6)|0)) + 56|0); HEAPF32[$239>>2] = $238; $240 = HEAP32[$34>>2]|0; $241 = ((($240)) + 24|0); $242 = +HEAPF32[$241>>2]; $243 = (((((($threadContext)) + 384|0) + ($numContacts$2$ph<<6)|0)) + 60|0); HEAPF32[$243>>2] = $242; $245 = $iter; } $244 = +HEAPF32[$245>>2]; $246 = (((((($threadContext)) + 384|0) + ($numContacts$2$ph<<6)|0)) + 32|0); HEAPF32[$246>>2] = $244; $247 = ((($245)) + 4|0); $248 = +HEAPF32[$247>>2]; $249 = (((((($threadContext)) + 384|0) + ($numContacts$2$ph<<6)|0)) + 36|0); HEAPF32[$249>>2] = $248; $250 = ((($245)) + 8|0); $251 = +HEAPF32[$250>>2]; $252 = (((((($threadContext)) + 384|0) + ($numContacts$2$ph<<6)|0)) + 40|0); HEAPF32[$252>>2] = $251; if ($modify$0$off0$i$i) { $253 = +HEAPF32[$245>>2]; $254 = $253 == +0; if ($254) { $255 = +HEAPF32[$247>>2]; $256 = $255 == +0; if ($256) { $257 = +HEAPF32[$250>>2]; $phitmp = $257 != +0; $259 = $phitmp; } else { $259 = 1; } } else { $259 = 1; } } else { $259 = 0; } $258 = $perPointFriction$1$off0$ph | $259; $260 = (($numContacts$2$ph) + 1)|0; $150 = $492;$156 = $491;$numContacts$2$ph = $260;$perPointFriction$1$off0$ph = $258; } $131 = HEAP32[$35>>2]|0; $132 = HEAP32[$28>>2]|0; $133 = $131; $134 = $132; $135 = (($133) - ($134))|0; $136 = ($135>>>0)<($88>>>0); if ($136) { $137 = $131;$138 = $132;$141 = $133;$480 = $483;$481 = $484;$482 = $152;$numContacts$131 = $numContacts$2$ph;$perPointFriction$0$off030 = $perPointFriction$1$off0$ph; } else { $numContacts$3 = $numContacts$2$ph;$perPointFriction$2$off0 = $perPointFriction$1$off0$ph; break; } } } else { $numContacts$3 = $numContacts$034;$perPointFriction$2$off0 = 0; } } $261 = HEAP32[$63>>2]|0; HEAP32[$12>>2] = $numContacts$3; $262 = ($numContacts$3|0)==($261|0); if ($262) { $$2 = 1; label = 53; break; } $263 = (($numContacts$3) - ($261))|0; $264 = (((($blockDescs) + (($a$033*56)|0)|0)) + 16|0); HEAP32[$264>>2] = $263; $265 = (((($blockDescs) + (($a$033*56)|0)|0)) + 52|0); $266 = $perPointFriction$2$off0&1; HEAP8[$265>>0] = $266; $267 = HEAP32[$20>>2]|0; $268 = (((($blockDescs) + (($a$033*56)|0)|0)) + 4|0); HEAP32[$268>>2] = $267; $269 = HEAP32[$19>>2]|0; $270 = (((($blockDescs) + (($a$033*56)|0)|0)) + 20|0); HEAP32[$270>>2] = $269; // SEE_HERE (__ZN5physx27createContactPatchesCoulombERNS_27PxcCorrelationBufferCoulombERNS_2Gu13ContactBufferEfj($c,$11,+0.99900001287460327,$261)|0); $271 = (((($blockDescs) + (($a$033*56)|0)|0)) + 28|0); $272 = HEAP32[$271>>2]|0; $273 = (((($blockDescs) + (($a$033*56)|0)|0)) + 32|0); $274 = HEAP32[$273>>2]|0; $275 = (__ZN5physx23correlatePatchesCoulombERNS_27PxcCorrelationBufferCoulombERKNS_2Gu13ContactBufferERKNS_11PxTransformES8_fjjj($c,$11,$272,$274,+0.99900001287460327,$22,$269,$267)|0); if ($275) { $$2 = 1; label = 53; break; } $276 = HEAP32[$19>>2]|0; $277 = (($276) - ($269))|0; $278 = (((($blockDescs) + (($a$033*56)|0)|0)) + 24|0); HEAP32[$278>>2] = $277; $279 = HEAP32[$20>>2]|0; $280 = (($279) - ($267))|0; $281 = (((($blockDescs) + (($a$033*56)|0)|0)) + 8|0); HEAP32[$281>>2] = $280; $282 = (($a$033) + 1)|0; $283 = ($282>>>0)<(4); if ($283) { $a$033 = $282;$numContacts$034 = $numContacts$3; } else { label = 41; break; } } if ((label|0) == 41) { HEAP32[$solverConstraintByteSize>>2] = 0; HEAP32[$numContactPoints4>>2] = 0; $284 = ((($threadContext)) + 316|0); __Z35computeBlockStreamByteSizesCoulomb4PN5physx21PxcSolverContact4DescERNS_18PxcNpThreadContextERKNS_27PxcCorrelationBufferCoulombERjPjS7_($blockDescs,$threadContext,$c,$solverConstraintByteSize,$axisConstraintCount,$numContactPoints4); $285 = HEAP32[$solverConstraintByteSize>>2]|0; $286 = ($285|0)==(0); if ($286) { $$$i1112$ph = 0;$306 = 0; } else { $287 = (($285) + 16)|0; $288 = ($287>>>0)>(16384); if ($288) { $$2 = 1; STACKTOP = sp;return ($$2|0); } $289 = (($285) + 31)|0; $290 = $289 & -16; $291 = ($290>>>0)>(16384); do { if ($291) { $292 = HEAP32[$284>>2]|0; $293 = (__ZN5physx17PxcNpMemBlockPool34acquireExceptionalConstraintMemoryEj($292,$290)|0); $$0$i$i = $293; } else { $294 = ((($threadContext)) + 320|0); $295 = HEAP32[$294>>2]|0; $296 = ($295|0)==(0|0); $$pre$i$i = ((($threadContext)) + 324|0); if (!($296)) { $297 = HEAP32[$$pre$i$i>>2]|0; $298 = (($297) + ($290))|0; $299 = ($298>>>0)>(16384); if (!($299)) { $302 = (($295) + ($297)|0); HEAP32[$$pre$i$i>>2] = $298; $$0$i$i = $302; break; } } $300 = HEAP32[$284>>2]|0; $301 = (__ZN5physx17PxcNpMemBlockPool22acquireConstraintBlockERNS_6shdfnd5ArrayIPNS_13PxcNpMemBlockENS1_19ReflectionAllocatorIS4_EEEE($300,$constraintBlockManager)|0); HEAP32[$294>>2] = $301; HEAP32[$$pre$i$i>>2] = $290; $$0$i$i = $301; } } while(0); $303 = ($$0$i$i|0)==(0|0); $notlhs = ($$0$i$i|0)!=(0|0); $notrhs = ($$0$i$i|0)==((-1)|0); $not$or$cond3$i = $notrhs & $notlhs; $304 = $303 | $not$or$cond3$i; if ($304) { $$2 = 0; STACKTOP = sp;return ($$2|0); } else { $$$i1112$ph = $$0$i$i;$306 = $285; } } $305 = $306 >>> 4; $307 = $305&65535; $308 = HEAP32[$n>>2]|0; HEAP32[$308>>2] = $$$i1112$ph; $309 = HEAP32[$desc>>2]|0; $310 = ((($309)) + 16|0); HEAP32[$310>>2] = $$$i1112$ph; $311 = HEAP32[$n>>2]|0; $312 = ((($311)) + 4|0); HEAP32[$312>>2] = $306; $313 = HEAP32[$axisConstraintCount>>2]|0; $314 = ((($311)) + 16|0); $315 = HEAP16[$314>>1]|0; $316 = $315&65535; $317 = (($316) + ($313))|0; $318 = $317&65535; HEAP16[$314>>1] = $318; $319 = HEAP32[$desc>>2]|0; $320 = ((($319)) + 26|0); HEAP16[$320>>1] = $307; $321 = ((($311)) + 98|0); $322 = HEAP16[$321>>1]|0; $323 = $322 & 16; $324 = ($323<<16>>16)==(0); if ($324) { $$0$i = 0;$337 = 0; } else { $325 = ((($311)) + 20|0); $326 = HEAP16[$325>>1]|0; $327 = ((($311)) + 28|0); $328 = HEAP32[$327>>2]|0; $329 = ((($311)) + 32|0); $330 = HEAP32[$329>>2]|0; $331 = (($330) + 15)|0; $332 = $331 & -16; $333 = (($328) + ($332)|0); $$0$i = $333;$337 = $326; } $334 = ((($319)) + 20|0); HEAP32[$334>>2] = $$0$i; $335 = HEAP32[$desc>>2]|0; $336 = ((($335)) + 24|0); HEAP16[$336>>1] = $337; $338 = ((($n)) + 4|0); $339 = HEAP32[$338>>2]|0; HEAP32[$339>>2] = $$$i1112$ph; $340 = HEAP32[$2>>2]|0; $341 = ((($340)) + 16|0); HEAP32[$341>>2] = $$$i1112$ph; $342 = HEAP32[$338>>2]|0; $343 = ((($342)) + 4|0); HEAP32[$343>>2] = $306; $344 = ((($axisConstraintCount)) + 4|0); $345 = HEAP32[$344>>2]|0; $346 = ((($342)) + 16|0); $347 = HEAP16[$346>>1]|0; $348 = $347&65535; $349 = (($348) + ($345))|0; $350 = $349&65535; HEAP16[$346>>1] = $350; $351 = HEAP32[$2>>2]|0; $352 = ((($351)) + 26|0); HEAP16[$352>>1] = $307; $353 = ((($342)) + 98|0); $354 = HEAP16[$353>>1]|0; $355 = $354 & 16; $356 = ($355<<16>>16)==(0); if ($356) { $$0$i$1 = 0;$369 = 0; } else { $357 = ((($342)) + 20|0); $358 = HEAP16[$357>>1]|0; $359 = ((($342)) + 28|0); $360 = HEAP32[$359>>2]|0; $361 = ((($342)) + 32|0); $362 = HEAP32[$361>>2]|0; $363 = (($362) + 15)|0; $364 = $363 & -16; $365 = (($360) + ($364)|0); $$0$i$1 = $365;$369 = $358; } $366 = ((($351)) + 20|0); HEAP32[$366>>2] = $$0$i$1; $367 = HEAP32[$2>>2]|0; $368 = ((($367)) + 24|0); HEAP16[$368>>1] = $369; $370 = ((($n)) + 8|0); $371 = HEAP32[$370>>2]|0; HEAP32[$371>>2] = $$$i1112$ph; $372 = HEAP32[$5>>2]|0; $373 = ((($372)) + 16|0); HEAP32[$373>>2] = $$$i1112$ph; $374 = HEAP32[$370>>2]|0; $375 = ((($374)) + 4|0); HEAP32[$375>>2] = $306; $376 = ((($axisConstraintCount)) + 8|0); $377 = HEAP32[$376>>2]|0; $378 = ((($374)) + 16|0); $379 = HEAP16[$378>>1]|0; $380 = $379&65535; $381 = (($380) + ($377))|0; $382 = $381&65535; HEAP16[$378>>1] = $382; $383 = HEAP32[$5>>2]|0; $384 = ((($383)) + 26|0); HEAP16[$384>>1] = $307; $385 = ((($374)) + 98|0); $386 = HEAP16[$385>>1]|0; $387 = $386 & 16; $388 = ($387<<16>>16)==(0); if ($388) { $$0$i$2 = 0;$401 = 0; } else { $389 = ((($374)) + 20|0); $390 = HEAP16[$389>>1]|0; $391 = ((($374)) + 28|0); $392 = HEAP32[$391>>2]|0; $393 = ((($374)) + 32|0); $394 = HEAP32[$393>>2]|0; $395 = (($394) + 15)|0; $396 = $395 & -16; $397 = (($392) + ($396)|0); $$0$i$2 = $397;$401 = $390; } $398 = ((($383)) + 20|0); HEAP32[$398>>2] = $$0$i$2; $399 = HEAP32[$5>>2]|0; $400 = ((($399)) + 24|0); HEAP16[$400>>1] = $401; $402 = ((($n)) + 12|0); $403 = HEAP32[$402>>2]|0; HEAP32[$403>>2] = $$$i1112$ph; $404 = HEAP32[$8>>2]|0; $405 = ((($404)) + 16|0); HEAP32[$405>>2] = $$$i1112$ph; $406 = HEAP32[$402>>2]|0; $407 = ((($406)) + 4|0); HEAP32[$407>>2] = $306; $408 = ((($axisConstraintCount)) + 12|0); $409 = HEAP32[$408>>2]|0; $410 = ((($406)) + 16|0); $411 = HEAP16[$410>>1]|0; $412 = $411&65535; $413 = (($412) + ($409))|0; $414 = $413&65535; HEAP16[$410>>1] = $414; $415 = HEAP32[$8>>2]|0; $416 = ((($415)) + 26|0); HEAP16[$416>>1] = $307; $417 = ((($406)) + 98|0); $418 = HEAP16[$417>>1]|0; $419 = $418 & 16; $420 = ($419<<16>>16)==(0); if ($420) { $$0$i$3 = 0;$433 = 0; } else { $421 = ((($406)) + 20|0); $422 = HEAP16[$421>>1]|0; $423 = ((($406)) + 28|0); $424 = HEAP32[$423>>2]|0; $425 = ((($406)) + 32|0); $426 = HEAP32[$425>>2]|0; $427 = (($426) + 15)|0; $428 = $427 & -16; $429 = (($424) + ($428)|0); $$0$i$3 = $429;$433 = $422; } $430 = ((($415)) + 20|0); HEAP32[$430>>2] = $$0$i$3; $431 = HEAP32[$8>>2]|0; $432 = ((($431)) + 24|0); HEAP16[$432>>1] = $433; $434 = +HEAPF32[$invMassScale0>>2]; $435 = ((($invMassScale0)) + 4|0); $436 = +HEAPF32[$435>>2]; $437 = ((($invMassScale0)) + 8|0); $438 = +HEAPF32[$437>>2]; $439 = ((($invMassScale0)) + 12|0); $440 = +HEAPF32[$439>>2]; HEAPF32[$iMassScale0>>2] = $434; $441 = ((($iMassScale0)) + 4|0); HEAPF32[$441>>2] = $436; $442 = ((($iMassScale0)) + 8|0); HEAPF32[$442>>2] = $438; $443 = ((($iMassScale0)) + 12|0); HEAPF32[$443>>2] = $440; $444 = +HEAPF32[$invInertiaScale0>>2]; $445 = ((($invInertiaScale0)) + 4|0); $446 = +HEAPF32[$445>>2]; $447 = ((($invInertiaScale0)) + 8|0); $448 = +HEAPF32[$447>>2]; $449 = ((($invInertiaScale0)) + 12|0); $450 = +HEAPF32[$449>>2]; HEAPF32[$iInertiaScale0>>2] = $444; $451 = ((($iInertiaScale0)) + 4|0); HEAPF32[$451>>2] = $446; $452 = ((($iInertiaScale0)) + 8|0); HEAPF32[$452>>2] = $448; $453 = ((($iInertiaScale0)) + 12|0); HEAPF32[$453>>2] = $450; $454 = +HEAPF32[$invMassScale1>>2]; $455 = ((($invMassScale1)) + 4|0); $456 = +HEAPF32[$455>>2]; $457 = ((($invMassScale1)) + 8|0); $458 = +HEAPF32[$457>>2]; $459 = ((($invMassScale1)) + 12|0); $460 = +HEAPF32[$459>>2]; HEAPF32[$iMassScale1>>2] = $454; $461 = ((($iMassScale1)) + 4|0); HEAPF32[$461>>2] = $456; $462 = ((($iMassScale1)) + 8|0); HEAPF32[$462>>2] = $458; $463 = ((($iMassScale1)) + 12|0); HEAPF32[$463>>2] = $460; $464 = +HEAPF32[$invInertiaScale1>>2]; $465 = ((($invInertiaScale1)) + 4|0); $466 = +HEAPF32[$465>>2]; $467 = ((($invInertiaScale1)) + 8|0); $468 = +HEAPF32[$467>>2]; $469 = ((($invInertiaScale1)) + 12|0); $470 = +HEAPF32[$469>>2]; HEAPF32[$iInertiaScale1>>2] = $464; $471 = ((($iInertiaScale1)) + 4|0); HEAPF32[$471>>2] = $466; $472 = ((($iInertiaScale1)) + 8|0); HEAPF32[$472>>2] = $468; $473 = ((($iInertiaScale1)) + 12|0); HEAPF32[$473>>2] = $470; $474 = HEAP32[$numContactPoints4>>2]|0; $475 = (__ZN5physx38setupFinalizeSolverConstraintsCoulomb4EPNS_21PxcSolverContact4DescERNS_18PxcNpThreadContextEPhffRNS_27PxcCorrelationBufferCoulombEjjjRKNS_6shdfnd3aos5Vec4VESB_SB_SB_($blockDescs,$threadContext,$$$i1112$ph,$invDtF32,$bounceThresholdF32,$c,$22,$474,$306,$iMassScale0,$iInertiaScale0,$iMassScale1,$iInertiaScale1)|0); $476 = (($$$i1112$ph) + ($306)|0); HEAP32[$476>>2] = 0; $477 = $475 << 31 >> 31; $$sum = (($306) + 4)|0; $478 = (($$$i1112$ph) + ($$sum)|0); HEAP32[$478>>2] = $477; $$2 = 2; STACKTOP = sp;return ($$2|0); } else if ((label|0) == 53) { STACKTOP = sp;return ($$2|0); } return (0)|0; }