brintos

brintos / llvm-project-archived public Read only

0
0
Text · 77.7 KiB · 0fab3d0 Raw
1338 lines · plain
1; RUN: llc < %s -mtriple=arm-apple-ios   -mcpu=cortex-a8 -O0 -filetype=obj -verify-machine-dom-info -o %t.o2; RUN: llc < %s -mtriple=thumb-apple-ios -mcpu=cortex-a8 -O0 -filetype=obj -o %t.o3; RUN: llc < %s -mtriple=arm-apple-ios   -mcpu=cortex-a8 -O2 -filetype=obj -verify-machineinstrs -o %t.o4; RUN: llc < %s -mtriple=thumb-apple-ios -mcpu=cortex-a8 -O2 -filetype=obj -verify-machineinstrs -o %t.o5target datalayout = "e-p:32:32:32-i1:8:32-i8:8:32-i16:16:32-i32:32:32-i64:32:64-f32:32:32-f64:32:64-v64:32:64-v128:32:128-a0:0:32-n32-S32"6 7; This function comes from the Bullet test.  It is quite big, and exercises the8; constant island pass a bit.  It has caused failures, including9; <rdar://problem/10670199>10;11; It is unlikely that this code will continue to create the exact conditions12; that broke the arm constant island pass in the past, but it is still useful to13; force the pass to split basic blocks etc.14;15; The run lines above force the integrated assembler to be enabled so it can16; catch any illegal displacements.  Other than that, we depend on the constant17; island pass assertions.18 19%class.btVector3 = type { [4 x float] }20%class.btTransform = type { %class.btMatrix3x3, %class.btVector3 }21%class.btMatrix3x3 = type { [3 x %class.btVector3] }22%class.btCapsuleShape = type { %class.btConvexInternalShape, i32 }23%class.btConvexInternalShape = type { %class.btConvexShape, %class.btVector3, %class.btVector3, float, float }24%class.btConvexShape = type { %class.btCollisionShape }25%class.btCollisionShape = type { ptr, i32, ptr }26%class.RagDoll = type { ptr, ptr, [11 x ptr], [11 x ptr], [10 x ptr] }27%class.btDynamicsWorld = type { %class.btCollisionWorld, ptr, ptr, ptr, %struct.btContactSolverInfo }28%class.btCollisionWorld = type { ptr, %class.btAlignedObjectArray, ptr, %struct.btDispatcherInfo, ptr, ptr, ptr, i8 }29%class.btAlignedObjectArray = type { %class.btAlignedAllocator, i32, i32, ptr, i8 }30%class.btAlignedAllocator = type { i8 }31%class.btCollisionObject = type { ptr, %class.btTransform, %class.btTransform, %class.btVector3, %class.btVector3, %class.btVector3, i8, float, ptr, ptr, ptr, i32, i32, i32, i32, float, float, float, ptr, i32, float, float, float, i8, [7 x i8] }32%struct.btBroadphaseProxy = type { ptr, i16, i16, ptr, i32, %class.btVector3, %class.btVector3 }33%class.btDispatcher = type { ptr }34%struct.btDispatcherInfo = type { float, i32, i32, float, i8, ptr, i8, i8, i8, float, i8, float, ptr }35%class.btIDebugDraw = type { ptr }36%class.btStackAlloc = type opaque37%class.btBroadphaseInterface = type { ptr }38%struct.btContactSolverInfo = type { %struct.btContactSolverInfoData }39%struct.btContactSolverInfoData = type { float, float, float, float, float, i32, float, float, float, float, float, i32, float, float, float, i32, i32 }40%class.btRigidBody = type { %class.btCollisionObject, %class.btMatrix3x3, %class.btVector3, %class.btVector3, float, %class.btVector3, %class.btVector3, %class.btVector3, %class.btVector3, %class.btVector3, %class.btVector3, %class.btVector3, float, float, i8, float, float, float, float, float, float, ptr, %class.btAlignedObjectArray.22, i32, i32, i32 }41%class.btMotionState = type { ptr }42%class.btAlignedObjectArray.22 = type { %class.btAlignedAllocator.23, i32, i32, ptr, i8 }43%class.btAlignedAllocator.23 = type { i8 }44%class.btTypedConstraint = type { ptr, %struct.btTypedObject, i32, i32, i8, ptr, ptr, float, float, %class.btVector3, %class.btVector3, %class.btVector3 }45%struct.btTypedObject = type { i32 }46%class.btHingeConstraint = type { %class.btTypedConstraint, [3 x %class.btJacobianEntry], [3 x %class.btJacobianEntry], %class.btTransform, %class.btTransform, float, float, float, float, float, float, float, float, float, float, float, float, float, i8, i8, i8, i8, i8, float }47%class.btJacobianEntry = type { %class.btVector3, %class.btVector3, %class.btVector3, %class.btVector3, %class.btVector3, float }48%class.btConeTwistConstraint = type { %class.btTypedConstraint, [3 x %class.btJacobianEntry], %class.btTransform, %class.btTransform, float, float, float, float, float, float, float, float, %class.btVector3, %class.btVector3, float, float, float, float, float, float, float, float, i8, i8, i8, i8, float, float, %class.btVector3, i8, i8, %class.btQuaternion, float, %class.btVector3 }49%class.btQuaternion = type { %class.btQuadWord }50%class.btQuadWord = type { [4 x float] }51 52@_ZTV7RagDoll = external unnamed_addr constant [4 x ptr]53 54declare noalias ptr @_Znwm(i32)55 56declare i32 @__gxx_personality_sj0(...)57 58declare void @_ZdlPv(ptr) nounwind59 60declare ptr @_ZN9btVector3C1ERKfS1_S1_(ptr, ptr, ptr, ptr) unnamed_addr inlinehint ssp align 261 62declare void @_ZSt9terminatev()63 64declare ptr @_ZN11btTransformC1Ev(ptr) unnamed_addr ssp align 265 66declare void @_ZN11btTransform11setIdentityEv(ptr) ssp align 267 68declare void @_ZN11btTransform9setOriginERK9btVector3(ptr, ptr) nounwind inlinehint ssp align 269 70declare ptr @_ZN13btConvexShapenwEm(i32) inlinehint ssp align 271 72declare void @_ZN13btConvexShapedlEPv(ptr) inlinehint ssp align 273 74declare ptr @_ZN14btCapsuleShapeC1Eff(ptr, float, float)75 76declare ptr @_ZN11btTransform8getBasisEv(ptr) nounwind inlinehint ssp align 277 78define ptr @_ZN7RagDollC2EP15btDynamicsWorldRK9btVector3f(ptr %this, ptr %ownerWorld, ptr %positionOffset, float %scale) unnamed_addr ssp align 2 personality ptr @__gxx_personality_sj0 {79entry:80  %retval = alloca ptr, align 481  %this.addr = alloca ptr, align 482  %ownerWorld.addr = alloca ptr, align 483  %positionOffset.addr = alloca ptr, align 484  %scale.addr = alloca float, align 485  %exn.slot = alloca ptr86  %ehselector.slot = alloca i3287  %offset = alloca %class.btTransform, align 488  %transform = alloca %class.btTransform, align 489  %ref.tmp = alloca %class.btVector3, align 490  %ref.tmp97 = alloca %class.btVector3, align 491  %ref.tmp98 = alloca float, align 492  %ref.tmp99 = alloca float, align 493  %ref.tmp100 = alloca float, align 494  %ref.tmp102 = alloca %class.btTransform, align 495  %ref.tmp107 = alloca %class.btVector3, align 496  %ref.tmp108 = alloca %class.btVector3, align 497  %ref.tmp109 = alloca float, align 498  %ref.tmp110 = alloca float, align 499  %ref.tmp111 = alloca float, align 4100  %ref.tmp113 = alloca %class.btTransform, align 4101  %ref.tmp119 = alloca %class.btVector3, align 4102  %ref.tmp120 = alloca %class.btVector3, align 4103  %ref.tmp121 = alloca float, align 4104  %ref.tmp122 = alloca float, align 4105  %ref.tmp123 = alloca float, align 4106  %ref.tmp125 = alloca %class.btTransform, align 4107  %ref.tmp131 = alloca %class.btVector3, align 4108  %ref.tmp132 = alloca %class.btVector3, align 4109  %ref.tmp133 = alloca float, align 4110  %ref.tmp134 = alloca float, align 4111  %ref.tmp135 = alloca float, align 4112  %ref.tmp137 = alloca %class.btTransform, align 4113  %ref.tmp143 = alloca %class.btVector3, align 4114  %ref.tmp144 = alloca %class.btVector3, align 4115  %ref.tmp145 = alloca float, align 4116  %ref.tmp146 = alloca float, align 4117  %ref.tmp147 = alloca float, align 4118  %ref.tmp149 = alloca %class.btTransform, align 4119  %ref.tmp155 = alloca %class.btVector3, align 4120  %ref.tmp156 = alloca %class.btVector3, align 4121  %ref.tmp157 = alloca float, align 4122  %ref.tmp158 = alloca float, align 4123  %ref.tmp159 = alloca float, align 4124  %ref.tmp161 = alloca %class.btTransform, align 4125  %ref.tmp167 = alloca %class.btVector3, align 4126  %ref.tmp168 = alloca %class.btVector3, align 4127  %ref.tmp169 = alloca float, align 4128  %ref.tmp170 = alloca float, align 4129  %ref.tmp171 = alloca float, align 4130  %ref.tmp173 = alloca %class.btTransform, align 4131  %ref.tmp179 = alloca %class.btVector3, align 4132  %ref.tmp180 = alloca %class.btVector3, align 4133  %ref.tmp181 = alloca float, align 4134  %ref.tmp182 = alloca float, align 4135  %ref.tmp183 = alloca float, align 4136  %ref.tmp186 = alloca %class.btTransform, align 4137  %ref.tmp192 = alloca %class.btVector3, align 4138  %ref.tmp193 = alloca %class.btVector3, align 4139  %ref.tmp194 = alloca float, align 4140  %ref.tmp195 = alloca float, align 4141  %ref.tmp196 = alloca float, align 4142  %ref.tmp199 = alloca %class.btTransform, align 4143  %ref.tmp205 = alloca %class.btVector3, align 4144  %ref.tmp206 = alloca %class.btVector3, align 4145  %ref.tmp207 = alloca float, align 4146  %ref.tmp208 = alloca float, align 4147  %ref.tmp209 = alloca float, align 4148  %ref.tmp212 = alloca %class.btTransform, align 4149  %ref.tmp218 = alloca %class.btVector3, align 4150  %ref.tmp219 = alloca %class.btVector3, align 4151  %ref.tmp220 = alloca float, align 4152  %ref.tmp221 = alloca float, align 4153  %ref.tmp222 = alloca float, align 4154  %ref.tmp225 = alloca %class.btTransform, align 4155  %i = alloca i32, align 4156  %hingeC = alloca ptr, align 4157  %coneC = alloca ptr, align 4158  %localA = alloca %class.btTransform, align 4159  %localB = alloca %class.btTransform, align 4160  %ref.tmp240 = alloca %class.btVector3, align 4161  %ref.tmp241 = alloca %class.btVector3, align 4162  %ref.tmp242 = alloca float, align 4163  %ref.tmp243 = alloca float, align 4164  %ref.tmp244 = alloca float, align 4165  %ref.tmp247 = alloca %class.btVector3, align 4166  %ref.tmp248 = alloca %class.btVector3, align 4167  %ref.tmp249 = alloca float, align 4168  %ref.tmp250 = alloca float, align 4169  %ref.tmp251 = alloca float, align 4170  %ref.tmp266 = alloca %class.btVector3, align 4171  %ref.tmp267 = alloca %class.btVector3, align 4172  %ref.tmp268 = alloca float, align 4173  %ref.tmp269 = alloca float, align 4174  %ref.tmp270 = alloca float, align 4175  %ref.tmp273 = alloca %class.btVector3, align 4176  %ref.tmp274 = alloca %class.btVector3, align 4177  %ref.tmp275 = alloca float, align 4178  %ref.tmp276 = alloca float, align 4179  %ref.tmp277 = alloca float, align 4180  %ref.tmp295 = alloca %class.btVector3, align 4181  %ref.tmp296 = alloca %class.btVector3, align 4182  %ref.tmp297 = alloca float, align 4183  %ref.tmp298 = alloca float, align 4184  %ref.tmp299 = alloca float, align 4185  %ref.tmp302 = alloca %class.btVector3, align 4186  %ref.tmp303 = alloca %class.btVector3, align 4187  %ref.tmp304 = alloca float, align 4188  %ref.tmp305 = alloca float, align 4189  %ref.tmp306 = alloca float, align 4190  %ref.tmp324 = alloca %class.btVector3, align 4191  %ref.tmp325 = alloca %class.btVector3, align 4192  %ref.tmp326 = alloca float, align 4193  %ref.tmp327 = alloca float, align 4194  %ref.tmp328 = alloca float, align 4195  %ref.tmp331 = alloca %class.btVector3, align 4196  %ref.tmp332 = alloca %class.btVector3, align 4197  %ref.tmp333 = alloca float, align 4198  %ref.tmp334 = alloca float, align 4199  %ref.tmp335 = alloca float, align 4200  %ref.tmp353 = alloca %class.btVector3, align 4201  %ref.tmp354 = alloca %class.btVector3, align 4202  %ref.tmp355 = alloca float, align 4203  %ref.tmp356 = alloca float, align 4204  %ref.tmp357 = alloca float, align 4205  %ref.tmp360 = alloca %class.btVector3, align 4206  %ref.tmp361 = alloca %class.btVector3, align 4207  %ref.tmp362 = alloca float, align 4208  %ref.tmp363 = alloca float, align 4209  %ref.tmp364 = alloca float, align 4210  %ref.tmp382 = alloca %class.btVector3, align 4211  %ref.tmp383 = alloca %class.btVector3, align 4212  %ref.tmp384 = alloca float, align 4213  %ref.tmp385 = alloca float, align 4214  %ref.tmp386 = alloca float, align 4215  %ref.tmp389 = alloca %class.btVector3, align 4216  %ref.tmp390 = alloca %class.btVector3, align 4217  %ref.tmp391 = alloca float, align 4218  %ref.tmp392 = alloca float, align 4219  %ref.tmp393 = alloca float, align 4220  %ref.tmp411 = alloca %class.btVector3, align 4221  %ref.tmp412 = alloca %class.btVector3, align 4222  %ref.tmp413 = alloca float, align 4223  %ref.tmp414 = alloca float, align 4224  %ref.tmp415 = alloca float, align 4225  %ref.tmp418 = alloca %class.btVector3, align 4226  %ref.tmp419 = alloca %class.btVector3, align 4227  %ref.tmp420 = alloca float, align 4228  %ref.tmp421 = alloca float, align 4229  %ref.tmp422 = alloca float, align 4230  %ref.tmp440 = alloca %class.btVector3, align 4231  %ref.tmp441 = alloca %class.btVector3, align 4232  %ref.tmp442 = alloca float, align 4233  %ref.tmp443 = alloca float, align 4234  %ref.tmp444 = alloca float, align 4235  %ref.tmp447 = alloca %class.btVector3, align 4236  %ref.tmp448 = alloca %class.btVector3, align 4237  %ref.tmp449 = alloca float, align 4238  %ref.tmp450 = alloca float, align 4239  %ref.tmp451 = alloca float, align 4240  %ref.tmp469 = alloca %class.btVector3, align 4241  %ref.tmp470 = alloca %class.btVector3, align 4242  %ref.tmp471 = alloca float, align 4243  %ref.tmp472 = alloca float, align 4244  %ref.tmp473 = alloca float, align 4245  %ref.tmp476 = alloca %class.btVector3, align 4246  %ref.tmp477 = alloca %class.btVector3, align 4247  %ref.tmp478 = alloca float, align 4248  %ref.tmp479 = alloca float, align 4249  %ref.tmp480 = alloca float, align 4250  %ref.tmp498 = alloca %class.btVector3, align 4251  %ref.tmp499 = alloca %class.btVector3, align 4252  %ref.tmp500 = alloca float, align 4253  %ref.tmp501 = alloca float, align 4254  %ref.tmp502 = alloca float, align 4255  %ref.tmp505 = alloca %class.btVector3, align 4256  %ref.tmp506 = alloca %class.btVector3, align 4257  %ref.tmp507 = alloca float, align 4258  %ref.tmp508 = alloca float, align 4259  %ref.tmp509 = alloca float, align 4260  store ptr %this, ptr %this.addr, align 4261  store ptr %ownerWorld, ptr %ownerWorld.addr, align 4262  store ptr %positionOffset, ptr %positionOffset.addr, align 4263  store float %scale, ptr %scale.addr, align 4264  %this1 = load ptr, ptr %this.addr265  store ptr %this1, ptr %retval266  store ptr getelementptr inbounds ([4 x ptr], ptr @_ZTV7RagDoll, i64 0, i64 2), ptr %this1267  %m_ownerWorld = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 1268  %0 = load ptr, ptr %ownerWorld.addr, align 4269  store ptr %0, ptr %m_ownerWorld, align 4270  %call = call ptr @_ZN13btConvexShapenwEm(i32 56)271  %1 = load float, ptr %scale.addr, align 4272  %mul = fmul float 0x3FC3333340000000, %1273  %2 = load float, ptr %scale.addr, align 4274  %mul2 = fmul float 0x3FC99999A0000000, %2275  %call3 = invoke ptr @_ZN14btCapsuleShapeC1Eff(ptr %call, float %mul, float %mul2)276          to label %invoke.cont unwind label %lpad277 278invoke.cont:                                      ; preds = %entry279  %m_shapes = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 2280  store ptr %call, ptr %m_shapes, align 4281  %call5 = call ptr @_ZN13btConvexShapenwEm(i32 56)282  %3 = load float, ptr %scale.addr, align 4283  %mul6 = fmul float 0x3FC3333340000000, %3284  %4 = load float, ptr %scale.addr, align 4285  %mul7 = fmul float 0x3FD1EB8520000000, %4286  %call10 = invoke ptr @_ZN14btCapsuleShapeC1Eff(ptr %call5, float %mul6, float %mul7)287          to label %invoke.cont9 unwind label %lpad8288 289invoke.cont9:                                     ; preds = %invoke.cont290  %m_shapes12 = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 2291  %arrayidx13 = getelementptr inbounds [11 x ptr], ptr %m_shapes12, i32 0, i32 1292  store ptr %call5, ptr %arrayidx13, align 4293  %call14 = call ptr @_ZN13btConvexShapenwEm(i32 56)294  %5 = load float, ptr %scale.addr, align 4295  %mul15 = fmul float 0x3FB99999A0000000, %5296  %6 = load float, ptr %scale.addr, align 4297  %mul16 = fmul float 0x3FA99999A0000000, %6298  %call19 = invoke ptr @_ZN14btCapsuleShapeC1Eff(ptr %call14, float %mul15, float %mul16)299          to label %invoke.cont18 unwind label %lpad17300 301invoke.cont18:                                    ; preds = %invoke.cont9302  %m_shapes21 = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 2303  %arrayidx22 = getelementptr inbounds [11 x ptr], ptr %m_shapes21, i32 0, i32 2304  store ptr %call14, ptr %arrayidx22, align 4305  %call23 = call ptr @_ZN13btConvexShapenwEm(i32 56)306  %7 = load float, ptr %scale.addr, align 4307  %mul24 = fmul float 0x3FB1EB8520000000, %7308  %8 = load float, ptr %scale.addr, align 4309  %mul25 = fmul float 0x3FDCCCCCC0000000, %8310  %call28 = invoke ptr @_ZN14btCapsuleShapeC1Eff(ptr %call23, float %mul24, float %mul25)311          to label %invoke.cont27 unwind label %lpad26312 313invoke.cont27:                                    ; preds = %invoke.cont18314  %m_shapes30 = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 2315  %arrayidx31 = getelementptr inbounds [11 x ptr], ptr %m_shapes30, i32 0, i32 3316  store ptr %call23, ptr %arrayidx31, align 4317  %call32 = call ptr @_ZN13btConvexShapenwEm(i32 56)318  %9 = load float, ptr %scale.addr, align 4319  %mul33 = fmul float 0x3FA99999A0000000, %9320  %10 = load float, ptr %scale.addr, align 4321  %mul34 = fmul float 0x3FD7AE1480000000, %10322  %call37 = invoke ptr @_ZN14btCapsuleShapeC1Eff(ptr %call32, float %mul33, float %mul34)323          to label %invoke.cont36 unwind label %lpad35324 325invoke.cont36:                                    ; preds = %invoke.cont27326  %m_shapes39 = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 2327  %arrayidx40 = getelementptr inbounds [11 x ptr], ptr %m_shapes39, i32 0, i32 4328  store ptr %call32, ptr %arrayidx40, align 4329  %call41 = call ptr @_ZN13btConvexShapenwEm(i32 56)330  %11 = load float, ptr %scale.addr, align 4331  %mul42 = fmul float 0x3FB1EB8520000000, %11332  %12 = load float, ptr %scale.addr, align 4333  %mul43 = fmul float 0x3FDCCCCCC0000000, %12334  %call46 = invoke ptr @_ZN14btCapsuleShapeC1Eff(ptr %call41, float %mul42, float %mul43)335          to label %invoke.cont45 unwind label %lpad44336 337invoke.cont45:                                    ; preds = %invoke.cont36338  %m_shapes48 = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 2339  %arrayidx49 = getelementptr inbounds [11 x ptr], ptr %m_shapes48, i32 0, i32 5340  store ptr %call41, ptr %arrayidx49, align 4341  %call50 = call ptr @_ZN13btConvexShapenwEm(i32 56)342  %13 = load float, ptr %scale.addr, align 4343  %mul51 = fmul float 0x3FA99999A0000000, %13344  %14 = load float, ptr %scale.addr, align 4345  %mul52 = fmul float 0x3FD7AE1480000000, %14346  %call55 = invoke ptr @_ZN14btCapsuleShapeC1Eff(ptr %call50, float %mul51, float %mul52)347          to label %invoke.cont54 unwind label %lpad53348 349invoke.cont54:                                    ; preds = %invoke.cont45350  %m_shapes57 = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 2351  %arrayidx58 = getelementptr inbounds [11 x ptr], ptr %m_shapes57, i32 0, i32 6352  store ptr %call50, ptr %arrayidx58, align 4353  %call59 = call ptr @_ZN13btConvexShapenwEm(i32 56)354  %15 = load float, ptr %scale.addr, align 4355  %mul60 = fmul float 0x3FA99999A0000000, %15356  %16 = load float, ptr %scale.addr, align 4357  %mul61 = fmul float 0x3FD51EB860000000, %16358  %call64 = invoke ptr @_ZN14btCapsuleShapeC1Eff(ptr %call59, float %mul60, float %mul61)359          to label %invoke.cont63 unwind label %lpad62360 361invoke.cont63:                                    ; preds = %invoke.cont54362  %m_shapes66 = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 2363  %arrayidx67 = getelementptr inbounds [11 x ptr], ptr %m_shapes66, i32 0, i32 7364  store ptr %call59, ptr %arrayidx67, align 4365  %call68 = call ptr @_ZN13btConvexShapenwEm(i32 56)366  %17 = load float, ptr %scale.addr, align 4367  %mul69 = fmul float 0x3FA47AE140000000, %17368  %18 = load float, ptr %scale.addr, align 4369  %mul70 = fmul float 2.500000e-01, %18370  %call73 = invoke ptr @_ZN14btCapsuleShapeC1Eff(ptr %call68, float %mul69, float %mul70)371          to label %invoke.cont72 unwind label %lpad71372 373invoke.cont72:                                    ; preds = %invoke.cont63374  %m_shapes75 = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 2375  %arrayidx76 = getelementptr inbounds [11 x ptr], ptr %m_shapes75, i32 0, i32 8376  store ptr %call68, ptr %arrayidx76, align 4377  %call77 = call ptr @_ZN13btConvexShapenwEm(i32 56)378  %19 = load float, ptr %scale.addr, align 4379  %mul78 = fmul float 0x3FA99999A0000000, %19380  %20 = load float, ptr %scale.addr, align 4381  %mul79 = fmul float 0x3FD51EB860000000, %20382  %call82 = invoke ptr @_ZN14btCapsuleShapeC1Eff(ptr %call77, float %mul78, float %mul79)383          to label %invoke.cont81 unwind label %lpad80384 385invoke.cont81:                                    ; preds = %invoke.cont72386  %m_shapes84 = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 2387  %arrayidx85 = getelementptr inbounds [11 x ptr], ptr %m_shapes84, i32 0, i32 9388  store ptr %call77, ptr %arrayidx85, align 4389  %call86 = call ptr @_ZN13btConvexShapenwEm(i32 56)390  %21 = load float, ptr %scale.addr, align 4391  %mul87 = fmul float 0x3FA47AE140000000, %21392  %22 = load float, ptr %scale.addr, align 4393  %mul88 = fmul float 2.500000e-01, %22394  %call91 = invoke ptr @_ZN14btCapsuleShapeC1Eff(ptr %call86, float %mul87, float %mul88)395          to label %invoke.cont90 unwind label %lpad89396 397invoke.cont90:                                    ; preds = %invoke.cont81398  %m_shapes93 = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 2399  %arrayidx94 = getelementptr inbounds [11 x ptr], ptr %m_shapes93, i32 0, i32 10400  store ptr %call86, ptr %arrayidx94, align 4401  %call95 = call ptr @_ZN11btTransformC1Ev(ptr %offset)402  call void @_ZN11btTransform11setIdentityEv(ptr %offset)403  %23 = load ptr, ptr %positionOffset.addr, align 4404  call void @_ZN11btTransform9setOriginERK9btVector3(ptr %offset, ptr %23)405  %call96 = call ptr @_ZN11btTransformC1Ev(ptr %transform)406  call void @_ZN11btTransform11setIdentityEv(ptr %transform)407  store float 0.000000e+00, ptr %ref.tmp98, align 4408  store float 1.000000e+00, ptr %ref.tmp99, align 4409  store float 0.000000e+00, ptr %ref.tmp100, align 4410  %call101 = call ptr @_ZN9btVector3C1ERKfS1_S1_(ptr %ref.tmp97, ptr %ref.tmp98, ptr %ref.tmp99, ptr %ref.tmp100)411  call void @_ZmlRKfRK9btVector3(ptr sret(%class.btVector3) %ref.tmp, ptr %scale.addr, ptr %ref.tmp97)412  call void @_ZN11btTransform9setOriginERK9btVector3(ptr %transform, ptr %ref.tmp)413  call void @_ZNK11btTransformmlERKS_(ptr sret(%class.btTransform) %ref.tmp102, ptr %offset, ptr %transform)414  %m_shapes103 = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 2415  %24 = load ptr, ptr %m_shapes103, align 4416  %call105 = call ptr @_ZN7RagDoll20localCreateRigidBodyEfRK11btTransformP16btCollisionShape(ptr %this1, float 1.000000e+00, ptr %ref.tmp102, ptr %24)417  %m_bodies = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 3418  store ptr %call105, ptr %m_bodies, align 4419  call void @_ZN11btTransform11setIdentityEv(ptr %transform)420  store float 0.000000e+00, ptr %ref.tmp109, align 4421  store float 0x3FF3333340000000, ptr %ref.tmp110, align 4422  store float 0.000000e+00, ptr %ref.tmp111, align 4423  %call112 = call ptr @_ZN9btVector3C1ERKfS1_S1_(ptr %ref.tmp108, ptr %ref.tmp109, ptr %ref.tmp110, ptr %ref.tmp111)424  call void @_ZmlRKfRK9btVector3(ptr sret(%class.btVector3) %ref.tmp107, ptr %scale.addr, ptr %ref.tmp108)425  call void @_ZN11btTransform9setOriginERK9btVector3(ptr %transform, ptr %ref.tmp107)426  call void @_ZNK11btTransformmlERKS_(ptr sret(%class.btTransform) %ref.tmp113, ptr %offset, ptr %transform)427  %m_shapes114 = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 2428  %arrayidx115 = getelementptr inbounds [11 x ptr], ptr %m_shapes114, i32 0, i32 1429  %25 = load ptr, ptr %arrayidx115, align 4430  %call116 = call ptr @_ZN7RagDoll20localCreateRigidBodyEfRK11btTransformP16btCollisionShape(ptr %this1, float 1.000000e+00, ptr %ref.tmp113, ptr %25)431  %m_bodies117 = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 3432  %arrayidx118 = getelementptr inbounds [11 x ptr], ptr %m_bodies117, i32 0, i32 1433  store ptr %call116, ptr %arrayidx118, align 4434  call void @_ZN11btTransform11setIdentityEv(ptr %transform)435  store float 0.000000e+00, ptr %ref.tmp121, align 4436  store float 0x3FF99999A0000000, ptr %ref.tmp122, align 4437  store float 0.000000e+00, ptr %ref.tmp123, align 4438  %call124 = call ptr @_ZN9btVector3C1ERKfS1_S1_(ptr %ref.tmp120, ptr %ref.tmp121, ptr %ref.tmp122, ptr %ref.tmp123)439  call void @_ZmlRKfRK9btVector3(ptr sret(%class.btVector3) %ref.tmp119, ptr %scale.addr, ptr %ref.tmp120)440  call void @_ZN11btTransform9setOriginERK9btVector3(ptr %transform, ptr %ref.tmp119)441  call void @_ZNK11btTransformmlERKS_(ptr sret(%class.btTransform) %ref.tmp125, ptr %offset, ptr %transform)442  %m_shapes126 = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 2443  %arrayidx127 = getelementptr inbounds [11 x ptr], ptr %m_shapes126, i32 0, i32 2444  %26 = load ptr, ptr %arrayidx127, align 4445  %call128 = call ptr @_ZN7RagDoll20localCreateRigidBodyEfRK11btTransformP16btCollisionShape(ptr %this1, float 1.000000e+00, ptr %ref.tmp125, ptr %26)446  %m_bodies129 = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 3447  %arrayidx130 = getelementptr inbounds [11 x ptr], ptr %m_bodies129, i32 0, i32 2448  store ptr %call128, ptr %arrayidx130, align 4449  call void @_ZN11btTransform11setIdentityEv(ptr %transform)450  store float 0xBFC70A3D80000000, ptr %ref.tmp133, align 4451  store float 0x3FE4CCCCC0000000, ptr %ref.tmp134, align 4452  store float 0.000000e+00, ptr %ref.tmp135, align 4453  %call136 = call ptr @_ZN9btVector3C1ERKfS1_S1_(ptr %ref.tmp132, ptr %ref.tmp133, ptr %ref.tmp134, ptr %ref.tmp135)454  call void @_ZmlRKfRK9btVector3(ptr sret(%class.btVector3) %ref.tmp131, ptr %scale.addr, ptr %ref.tmp132)455  call void @_ZN11btTransform9setOriginERK9btVector3(ptr %transform, ptr %ref.tmp131)456  call void @_ZNK11btTransformmlERKS_(ptr sret(%class.btTransform) %ref.tmp137, ptr %offset, ptr %transform)457  %m_shapes138 = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 2458  %arrayidx139 = getelementptr inbounds [11 x ptr], ptr %m_shapes138, i32 0, i32 3459  %27 = load ptr, ptr %arrayidx139, align 4460  %call140 = call ptr @_ZN7RagDoll20localCreateRigidBodyEfRK11btTransformP16btCollisionShape(ptr %this1, float 1.000000e+00, ptr %ref.tmp137, ptr %27)461  %m_bodies141 = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 3462  %arrayidx142 = getelementptr inbounds [11 x ptr], ptr %m_bodies141, i32 0, i32 3463  store ptr %call140, ptr %arrayidx142, align 4464  call void @_ZN11btTransform11setIdentityEv(ptr %transform)465  store float 0xBFC70A3D80000000, ptr %ref.tmp145, align 4466  store float 0x3FC99999A0000000, ptr %ref.tmp146, align 4467  store float 0.000000e+00, ptr %ref.tmp147, align 4468  %call148 = call ptr @_ZN9btVector3C1ERKfS1_S1_(ptr %ref.tmp144, ptr %ref.tmp145, ptr %ref.tmp146, ptr %ref.tmp147)469  call void @_ZmlRKfRK9btVector3(ptr sret(%class.btVector3) %ref.tmp143, ptr %scale.addr, ptr %ref.tmp144)470  call void @_ZN11btTransform9setOriginERK9btVector3(ptr %transform, ptr %ref.tmp143)471  call void @_ZNK11btTransformmlERKS_(ptr sret(%class.btTransform) %ref.tmp149, ptr %offset, ptr %transform)472  %m_shapes150 = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 2473  %arrayidx151 = getelementptr inbounds [11 x ptr], ptr %m_shapes150, i32 0, i32 4474  %28 = load ptr, ptr %arrayidx151, align 4475  %call152 = call ptr @_ZN7RagDoll20localCreateRigidBodyEfRK11btTransformP16btCollisionShape(ptr %this1, float 1.000000e+00, ptr %ref.tmp149, ptr %28)476  %m_bodies153 = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 3477  %arrayidx154 = getelementptr inbounds [11 x ptr], ptr %m_bodies153, i32 0, i32 4478  store ptr %call152, ptr %arrayidx154, align 4479  call void @_ZN11btTransform11setIdentityEv(ptr %transform)480  store float 0x3FC70A3D80000000, ptr %ref.tmp157, align 4481  store float 0x3FE4CCCCC0000000, ptr %ref.tmp158, align 4482  store float 0.000000e+00, ptr %ref.tmp159, align 4483  %call160 = call ptr @_ZN9btVector3C1ERKfS1_S1_(ptr %ref.tmp156, ptr %ref.tmp157, ptr %ref.tmp158, ptr %ref.tmp159)484  call void @_ZmlRKfRK9btVector3(ptr sret(%class.btVector3) %ref.tmp155, ptr %scale.addr, ptr %ref.tmp156)485  call void @_ZN11btTransform9setOriginERK9btVector3(ptr %transform, ptr %ref.tmp155)486  call void @_ZNK11btTransformmlERKS_(ptr sret(%class.btTransform) %ref.tmp161, ptr %offset, ptr %transform)487  %m_shapes162 = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 2488  %arrayidx163 = getelementptr inbounds [11 x ptr], ptr %m_shapes162, i32 0, i32 5489  %29 = load ptr, ptr %arrayidx163, align 4490  %call164 = call ptr @_ZN7RagDoll20localCreateRigidBodyEfRK11btTransformP16btCollisionShape(ptr %this1, float 1.000000e+00, ptr %ref.tmp161, ptr %29)491  %m_bodies165 = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 3492  %arrayidx166 = getelementptr inbounds [11 x ptr], ptr %m_bodies165, i32 0, i32 5493  store ptr %call164, ptr %arrayidx166, align 4494  call void @_ZN11btTransform11setIdentityEv(ptr %transform)495  store float 0x3FC70A3D80000000, ptr %ref.tmp169, align 4496  store float 0x3FC99999A0000000, ptr %ref.tmp170, align 4497  store float 0.000000e+00, ptr %ref.tmp171, align 4498  %call172 = call ptr @_ZN9btVector3C1ERKfS1_S1_(ptr %ref.tmp168, ptr %ref.tmp169, ptr %ref.tmp170, ptr %ref.tmp171)499  call void @_ZmlRKfRK9btVector3(ptr sret(%class.btVector3) %ref.tmp167, ptr %scale.addr, ptr %ref.tmp168)500  call void @_ZN11btTransform9setOriginERK9btVector3(ptr %transform, ptr %ref.tmp167)501  call void @_ZNK11btTransformmlERKS_(ptr sret(%class.btTransform) %ref.tmp173, ptr %offset, ptr %transform)502  %m_shapes174 = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 2503  %arrayidx175 = getelementptr inbounds [11 x ptr], ptr %m_shapes174, i32 0, i32 6504  %30 = load ptr, ptr %arrayidx175, align 4505  %call176 = call ptr @_ZN7RagDoll20localCreateRigidBodyEfRK11btTransformP16btCollisionShape(ptr %this1, float 1.000000e+00, ptr %ref.tmp173, ptr %30)506  %m_bodies177 = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 3507  %arrayidx178 = getelementptr inbounds [11 x ptr], ptr %m_bodies177, i32 0, i32 6508  store ptr %call176, ptr %arrayidx178, align 4509  call void @_ZN11btTransform11setIdentityEv(ptr %transform)510  store float 0xBFD6666660000000, ptr %ref.tmp181, align 4511  store float 0x3FF7333340000000, ptr %ref.tmp182, align 4512  store float 0.000000e+00, ptr %ref.tmp183, align 4513  %call184 = call ptr @_ZN9btVector3C1ERKfS1_S1_(ptr %ref.tmp180, ptr %ref.tmp181, ptr %ref.tmp182, ptr %ref.tmp183)514  call void @_ZmlRKfRK9btVector3(ptr sret(%class.btVector3) %ref.tmp179, ptr %scale.addr, ptr %ref.tmp180)515  call void @_ZN11btTransform9setOriginERK9btVector3(ptr %transform, ptr %ref.tmp179)516  %call185 = call ptr @_ZN11btTransform8getBasisEv(ptr %transform)517  call void @_ZN11btMatrix3x311setEulerZYXEfff(ptr %call185, float 0.000000e+00, float 0.000000e+00, float 0x3FF921FB60000000)518  call void @_ZNK11btTransformmlERKS_(ptr sret(%class.btTransform) %ref.tmp186, ptr %offset, ptr %transform)519  %m_shapes187 = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 2520  %arrayidx188 = getelementptr inbounds [11 x ptr], ptr %m_shapes187, i32 0, i32 7521  %31 = load ptr, ptr %arrayidx188, align 4522  %call189 = call ptr @_ZN7RagDoll20localCreateRigidBodyEfRK11btTransformP16btCollisionShape(ptr %this1, float 1.000000e+00, ptr %ref.tmp186, ptr %31)523  %m_bodies190 = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 3524  %arrayidx191 = getelementptr inbounds [11 x ptr], ptr %m_bodies190, i32 0, i32 7525  store ptr %call189, ptr %arrayidx191, align 4526  call void @_ZN11btTransform11setIdentityEv(ptr %transform)527  store float 0xBFE6666660000000, ptr %ref.tmp194, align 4528  store float 0x3FF7333340000000, ptr %ref.tmp195, align 4529  store float 0.000000e+00, ptr %ref.tmp196, align 4530  %call197 = call ptr @_ZN9btVector3C1ERKfS1_S1_(ptr %ref.tmp193, ptr %ref.tmp194, ptr %ref.tmp195, ptr %ref.tmp196)531  call void @_ZmlRKfRK9btVector3(ptr sret(%class.btVector3) %ref.tmp192, ptr %scale.addr, ptr %ref.tmp193)532  call void @_ZN11btTransform9setOriginERK9btVector3(ptr %transform, ptr %ref.tmp192)533  %call198 = call ptr @_ZN11btTransform8getBasisEv(ptr %transform)534  call void @_ZN11btMatrix3x311setEulerZYXEfff(ptr %call198, float 0.000000e+00, float 0.000000e+00, float 0x3FF921FB60000000)535  call void @_ZNK11btTransformmlERKS_(ptr sret(%class.btTransform) %ref.tmp199, ptr %offset, ptr %transform)536  %m_shapes200 = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 2537  %arrayidx201 = getelementptr inbounds [11 x ptr], ptr %m_shapes200, i32 0, i32 8538  %32 = load ptr, ptr %arrayidx201, align 4539  %call202 = call ptr @_ZN7RagDoll20localCreateRigidBodyEfRK11btTransformP16btCollisionShape(ptr %this1, float 1.000000e+00, ptr %ref.tmp199, ptr %32)540  %m_bodies203 = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 3541  %arrayidx204 = getelementptr inbounds [11 x ptr], ptr %m_bodies203, i32 0, i32 8542  store ptr %call202, ptr %arrayidx204, align 4543  call void @_ZN11btTransform11setIdentityEv(ptr %transform)544  store float 0x3FD6666660000000, ptr %ref.tmp207, align 4545  store float 0x3FF7333340000000, ptr %ref.tmp208, align 4546  store float 0.000000e+00, ptr %ref.tmp209, align 4547  %call210 = call ptr @_ZN9btVector3C1ERKfS1_S1_(ptr %ref.tmp206, ptr %ref.tmp207, ptr %ref.tmp208, ptr %ref.tmp209)548  call void @_ZmlRKfRK9btVector3(ptr sret(%class.btVector3) %ref.tmp205, ptr %scale.addr, ptr %ref.tmp206)549  call void @_ZN11btTransform9setOriginERK9btVector3(ptr %transform, ptr %ref.tmp205)550  %call211 = call ptr @_ZN11btTransform8getBasisEv(ptr %transform)551  call void @_ZN11btMatrix3x311setEulerZYXEfff(ptr %call211, float 0.000000e+00, float 0.000000e+00, float 0xBFF921FB60000000)552  call void @_ZNK11btTransformmlERKS_(ptr sret(%class.btTransform) %ref.tmp212, ptr %offset, ptr %transform)553  %m_shapes213 = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 2554  %arrayidx214 = getelementptr inbounds [11 x ptr], ptr %m_shapes213, i32 0, i32 9555  %33 = load ptr, ptr %arrayidx214, align 4556  %call215 = call ptr @_ZN7RagDoll20localCreateRigidBodyEfRK11btTransformP16btCollisionShape(ptr %this1, float 1.000000e+00, ptr %ref.tmp212, ptr %33)557  %m_bodies216 = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 3558  %arrayidx217 = getelementptr inbounds [11 x ptr], ptr %m_bodies216, i32 0, i32 9559  store ptr %call215, ptr %arrayidx217, align 4560  call void @_ZN11btTransform11setIdentityEv(ptr %transform)561  store float 0x3FE6666660000000, ptr %ref.tmp220, align 4562  store float 0x3FF7333340000000, ptr %ref.tmp221, align 4563  store float 0.000000e+00, ptr %ref.tmp222, align 4564  %call223 = call ptr @_ZN9btVector3C1ERKfS1_S1_(ptr %ref.tmp219, ptr %ref.tmp220, ptr %ref.tmp221, ptr %ref.tmp222)565  call void @_ZmlRKfRK9btVector3(ptr sret(%class.btVector3) %ref.tmp218, ptr %scale.addr, ptr %ref.tmp219)566  call void @_ZN11btTransform9setOriginERK9btVector3(ptr %transform, ptr %ref.tmp218)567  %call224 = call ptr @_ZN11btTransform8getBasisEv(ptr %transform)568  call void @_ZN11btMatrix3x311setEulerZYXEfff(ptr %call224, float 0.000000e+00, float 0.000000e+00, float 0xBFF921FB60000000)569  call void @_ZNK11btTransformmlERKS_(ptr sret(%class.btTransform) %ref.tmp225, ptr %offset, ptr %transform)570  %m_shapes226 = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 2571  %arrayidx227 = getelementptr inbounds [11 x ptr], ptr %m_shapes226, i32 0, i32 10572  %34 = load ptr, ptr %arrayidx227, align 4573  %call228 = call ptr @_ZN7RagDoll20localCreateRigidBodyEfRK11btTransformP16btCollisionShape(ptr %this1, float 1.000000e+00, ptr %ref.tmp225, ptr %34)574  %m_bodies229 = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 3575  %arrayidx230 = getelementptr inbounds [11 x ptr], ptr %m_bodies229, i32 0, i32 10576  store ptr %call228, ptr %arrayidx230, align 4577  store i32 0, ptr %i, align 4578  br label %for.cond579 580for.cond:                                         ; preds = %for.inc, %invoke.cont90581  %35 = load i32, ptr %i, align 4582  %cmp = icmp slt i32 %35, 11583  br i1 %cmp, label %for.body, label %for.end584 585for.body:                                         ; preds = %for.cond586  %36 = load i32, ptr %i, align 4587  %m_bodies231 = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 3588  %arrayidx232 = getelementptr inbounds [11 x ptr], ptr %m_bodies231, i32 0, i32 %36589  %37 = load ptr, ptr %arrayidx232, align 4590  call void @_ZN11btRigidBody10setDampingEff(ptr %37, float 0x3FA99999A0000000, float 0x3FEB333340000000)591  %38 = load i32, ptr %i, align 4592  %m_bodies233 = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 3593  %arrayidx234 = getelementptr inbounds [11 x ptr], ptr %m_bodies233, i32 0, i32 %38594  %39 = load ptr, ptr %arrayidx234, align 4595  call void @_ZN17btCollisionObject19setDeactivationTimeEf(ptr %39, float 0x3FE99999A0000000)596  %40 = load i32, ptr %i, align 4597  %m_bodies235 = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 3598  %arrayidx236 = getelementptr inbounds [11 x ptr], ptr %m_bodies235, i32 0, i32 %40599  %41 = load ptr, ptr %arrayidx236, align 4600  call void @_ZN11btRigidBody21setSleepingThresholdsEff(ptr %41, float 0x3FF99999A0000000, float 2.500000e+00)601  br label %for.inc602 603for.inc:                                          ; preds = %for.body604  %42 = load i32, ptr %i, align 4605  %inc = add nsw i32 %42, 1606  store i32 %inc, ptr %i, align 4607  br label %for.cond608 609lpad:                                             ; preds = %entry610  %43 = landingpad { ptr, i32 }611          cleanup612  %44 = extractvalue { ptr, i32 } %43, 0613  store ptr %44, ptr %exn.slot614  %45 = extractvalue { ptr, i32 } %43, 1615  store i32 %45, ptr %ehselector.slot616  invoke void @_ZN13btConvexShapedlEPv(ptr %call)617          to label %invoke.cont4 unwind label %terminate.lpad618 619invoke.cont4:                                     ; preds = %lpad620  br label %eh.resume621 622lpad8:                                            ; preds = %invoke.cont623  %46 = landingpad { ptr, i32 }624          cleanup625  %47 = extractvalue { ptr, i32 } %46, 0626  store ptr %47, ptr %exn.slot627  %48 = extractvalue { ptr, i32 } %46, 1628  store i32 %48, ptr %ehselector.slot629  invoke void @_ZN13btConvexShapedlEPv(ptr %call5)630          to label %invoke.cont11 unwind label %terminate.lpad631 632invoke.cont11:                                    ; preds = %lpad8633  br label %eh.resume634 635lpad17:                                           ; preds = %invoke.cont9636  %49 = landingpad { ptr, i32 }637          cleanup638  %50 = extractvalue { ptr, i32 } %49, 0639  store ptr %50, ptr %exn.slot640  %51 = extractvalue { ptr, i32 } %49, 1641  store i32 %51, ptr %ehselector.slot642  invoke void @_ZN13btConvexShapedlEPv(ptr %call14)643          to label %invoke.cont20 unwind label %terminate.lpad644 645invoke.cont20:                                    ; preds = %lpad17646  br label %eh.resume647 648lpad26:                                           ; preds = %invoke.cont18649  %52 = landingpad { ptr, i32 }650          cleanup651  %53 = extractvalue { ptr, i32 } %52, 0652  store ptr %53, ptr %exn.slot653  %54 = extractvalue { ptr, i32 } %52, 1654  store i32 %54, ptr %ehselector.slot655  invoke void @_ZN13btConvexShapedlEPv(ptr %call23)656          to label %invoke.cont29 unwind label %terminate.lpad657 658invoke.cont29:                                    ; preds = %lpad26659  br label %eh.resume660 661lpad35:                                           ; preds = %invoke.cont27662  %55 = landingpad { ptr, i32 }663          cleanup664  %56 = extractvalue { ptr, i32 } %55, 0665  store ptr %56, ptr %exn.slot666  %57 = extractvalue { ptr, i32 } %55, 1667  store i32 %57, ptr %ehselector.slot668  invoke void @_ZN13btConvexShapedlEPv(ptr %call32)669          to label %invoke.cont38 unwind label %terminate.lpad670 671invoke.cont38:                                    ; preds = %lpad35672  br label %eh.resume673 674lpad44:                                           ; preds = %invoke.cont36675  %58 = landingpad { ptr, i32 }676          cleanup677  %59 = extractvalue { ptr, i32 } %58, 0678  store ptr %59, ptr %exn.slot679  %60 = extractvalue { ptr, i32 } %58, 1680  store i32 %60, ptr %ehselector.slot681  invoke void @_ZN13btConvexShapedlEPv(ptr %call41)682          to label %invoke.cont47 unwind label %terminate.lpad683 684invoke.cont47:                                    ; preds = %lpad44685  br label %eh.resume686 687lpad53:                                           ; preds = %invoke.cont45688  %61 = landingpad { ptr, i32 }689          cleanup690  %62 = extractvalue { ptr, i32 } %61, 0691  store ptr %62, ptr %exn.slot692  %63 = extractvalue { ptr, i32 } %61, 1693  store i32 %63, ptr %ehselector.slot694  invoke void @_ZN13btConvexShapedlEPv(ptr %call50)695          to label %invoke.cont56 unwind label %terminate.lpad696 697invoke.cont56:                                    ; preds = %lpad53698  br label %eh.resume699 700lpad62:                                           ; preds = %invoke.cont54701  %64 = landingpad { ptr, i32 }702          cleanup703  %65 = extractvalue { ptr, i32 } %64, 0704  store ptr %65, ptr %exn.slot705  %66 = extractvalue { ptr, i32 } %64, 1706  store i32 %66, ptr %ehselector.slot707  invoke void @_ZN13btConvexShapedlEPv(ptr %call59)708          to label %invoke.cont65 unwind label %terminate.lpad709 710invoke.cont65:                                    ; preds = %lpad62711  br label %eh.resume712 713lpad71:                                           ; preds = %invoke.cont63714  %67 = landingpad { ptr, i32 }715          cleanup716  %68 = extractvalue { ptr, i32 } %67, 0717  store ptr %68, ptr %exn.slot718  %69 = extractvalue { ptr, i32 } %67, 1719  store i32 %69, ptr %ehselector.slot720  invoke void @_ZN13btConvexShapedlEPv(ptr %call68)721          to label %invoke.cont74 unwind label %terminate.lpad722 723invoke.cont74:                                    ; preds = %lpad71724  br label %eh.resume725 726lpad80:                                           ; preds = %invoke.cont72727  %70 = landingpad { ptr, i32 }728          cleanup729  %71 = extractvalue { ptr, i32 } %70, 0730  store ptr %71, ptr %exn.slot731  %72 = extractvalue { ptr, i32 } %70, 1732  store i32 %72, ptr %ehselector.slot733  invoke void @_ZN13btConvexShapedlEPv(ptr %call77)734          to label %invoke.cont83 unwind label %terminate.lpad735 736invoke.cont83:                                    ; preds = %lpad80737  br label %eh.resume738 739lpad89:                                           ; preds = %invoke.cont81740  %73 = landingpad { ptr, i32 }741          cleanup742  %74 = extractvalue { ptr, i32 } %73, 0743  store ptr %74, ptr %exn.slot744  %75 = extractvalue { ptr, i32 } %73, 1745  store i32 %75, ptr %ehselector.slot746  invoke void @_ZN13btConvexShapedlEPv(ptr %call86)747          to label %invoke.cont92 unwind label %terminate.lpad748 749invoke.cont92:                                    ; preds = %lpad89750  br label %eh.resume751 752for.end:                                          ; preds = %for.cond753  %call237 = call ptr @_ZN11btTransformC1Ev(ptr %localA)754  %call238 = call ptr @_ZN11btTransformC1Ev(ptr %localB)755  call void @_ZN11btTransform11setIdentityEv(ptr %localA)756  call void @_ZN11btTransform11setIdentityEv(ptr %localB)757  %call239 = call ptr @_ZN11btTransform8getBasisEv(ptr %localA)758  call void @_ZN11btMatrix3x311setEulerZYXEfff(ptr %call239, float 0.000000e+00, float 0x3FF921FB60000000, float 0.000000e+00)759  store float 0.000000e+00, ptr %ref.tmp242, align 4760  store float 0x3FC3333340000000, ptr %ref.tmp243, align 4761  store float 0.000000e+00, ptr %ref.tmp244, align 4762  %call245 = call ptr @_ZN9btVector3C1ERKfS1_S1_(ptr %ref.tmp241, ptr %ref.tmp242, ptr %ref.tmp243, ptr %ref.tmp244)763  call void @_ZmlRKfRK9btVector3(ptr sret(%class.btVector3) %ref.tmp240, ptr %scale.addr, ptr %ref.tmp241)764  call void @_ZN11btTransform9setOriginERK9btVector3(ptr %localA, ptr %ref.tmp240)765  %call246 = call ptr @_ZN11btTransform8getBasisEv(ptr %localB)766  call void @_ZN11btMatrix3x311setEulerZYXEfff(ptr %call246, float 0.000000e+00, float 0x3FF921FB60000000, float 0.000000e+00)767  store float 0.000000e+00, ptr %ref.tmp249, align 4768  store float 0xBFC3333340000000, ptr %ref.tmp250, align 4769  store float 0.000000e+00, ptr %ref.tmp251, align 4770  %call252 = call ptr @_ZN9btVector3C1ERKfS1_S1_(ptr %ref.tmp248, ptr %ref.tmp249, ptr %ref.tmp250, ptr %ref.tmp251)771  call void @_ZmlRKfRK9btVector3(ptr sret(%class.btVector3) %ref.tmp247, ptr %scale.addr, ptr %ref.tmp248)772  call void @_ZN11btTransform9setOriginERK9btVector3(ptr %localB, ptr %ref.tmp247)773  %call253 = call noalias ptr @_Znwm(i32 780)774  %m_bodies254 = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 3775  %76 = load ptr, ptr %m_bodies254, align 4776  %m_bodies256 = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 3777  %arrayidx257 = getelementptr inbounds [11 x ptr], ptr %m_bodies256, i32 0, i32 1778  %77 = load ptr, ptr %arrayidx257, align 4779  %call260 = invoke ptr @_ZN17btHingeConstraintC1ER11btRigidBodyS1_RK11btTransformS4_b(ptr %call253, ptr %76, ptr %77, ptr %localA, ptr %localB, i1 zeroext false)780          to label %invoke.cont259 unwind label %lpad258781 782invoke.cont259:                                   ; preds = %for.end783  store ptr %call253, ptr %hingeC, align 4784  %78 = load ptr, ptr %hingeC, align 4785  call void @_ZN17btHingeConstraint8setLimitEfffff(ptr %78, float 0xBFE921FB60000000, float 0x3FF921FB60000000, float 0x3FECCCCCC0000000, float 0x3FD3333340000000, float 1.000000e+00)786  %79 = load ptr, ptr %hingeC, align 4787  %m_joints = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 4788  store ptr %79, ptr %m_joints, align 4789  %m_ownerWorld262 = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 1790  %80 = load ptr, ptr %m_ownerWorld262, align 4791  %vtable = load ptr, ptr %80792  %vfn = getelementptr inbounds ptr, ptr %vtable, i64 10793  %81 = load ptr, ptr %vfn794  %m_joints263 = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 4795  %82 = load ptr, ptr %m_joints263, align 4796  call void %81(ptr %80, ptr %82, i1 zeroext true)797  call void @_ZN11btTransform11setIdentityEv(ptr %localA)798  call void @_ZN11btTransform11setIdentityEv(ptr %localB)799  %call265 = call ptr @_ZN11btTransform8getBasisEv(ptr %localA)800  call void @_ZN11btMatrix3x311setEulerZYXEfff(ptr %call265, float 0.000000e+00, float 0.000000e+00, float 0x3FF921FB60000000)801  store float 0.000000e+00, ptr %ref.tmp268, align 4802  store float 0x3FD3333340000000, ptr %ref.tmp269, align 4803  store float 0.000000e+00, ptr %ref.tmp270, align 4804  %call271 = call ptr @_ZN9btVector3C1ERKfS1_S1_(ptr %ref.tmp267, ptr %ref.tmp268, ptr %ref.tmp269, ptr %ref.tmp270)805  call void @_ZmlRKfRK9btVector3(ptr sret(%class.btVector3) %ref.tmp266, ptr %scale.addr, ptr %ref.tmp267)806  call void @_ZN11btTransform9setOriginERK9btVector3(ptr %localA, ptr %ref.tmp266)807  %call272 = call ptr @_ZN11btTransform8getBasisEv(ptr %localB)808  call void @_ZN11btMatrix3x311setEulerZYXEfff(ptr %call272, float 0.000000e+00, float 0.000000e+00, float 0x3FF921FB60000000)809  store float 0.000000e+00, ptr %ref.tmp275, align 4810  store float 0xBFC1EB8520000000, ptr %ref.tmp276, align 4811  store float 0.000000e+00, ptr %ref.tmp277, align 4812  %call278 = call ptr @_ZN9btVector3C1ERKfS1_S1_(ptr %ref.tmp274, ptr %ref.tmp275, ptr %ref.tmp276, ptr %ref.tmp277)813  call void @_ZmlRKfRK9btVector3(ptr sret(%class.btVector3) %ref.tmp273, ptr %scale.addr, ptr %ref.tmp274)814  call void @_ZN11btTransform9setOriginERK9btVector3(ptr %localB, ptr %ref.tmp273)815  %call279 = call noalias ptr @_Znwm(i32 628)816  %m_bodies280 = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 3817  %arrayidx281 = getelementptr inbounds [11 x ptr], ptr %m_bodies280, i32 0, i32 1818  %83 = load ptr, ptr %arrayidx281, align 4819  %m_bodies282 = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 3820  %arrayidx283 = getelementptr inbounds [11 x ptr], ptr %m_bodies282, i32 0, i32 2821  %84 = load ptr, ptr %arrayidx283, align 4822  %call286 = invoke ptr @_ZN21btConeTwistConstraintC1ER11btRigidBodyS1_RK11btTransformS4_(ptr %call279, ptr %83, ptr %84, ptr %localA, ptr %localB)823          to label %invoke.cont285 unwind label %lpad284824 825invoke.cont285:                                   ; preds = %invoke.cont259826  store ptr %call279, ptr %coneC, align 4827  %85 = load ptr, ptr %coneC, align 4828  call void @_ZN21btConeTwistConstraint8setLimitEffffff(ptr %85, float 0x3FE921FB60000000, float 0x3FE921FB60000000, float 0x3FF921FB60000000, float 1.000000e+00, float 0x3FD3333340000000, float 1.000000e+00)829  %86 = load ptr, ptr %coneC, align 4830  %m_joints287 = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 4831  %arrayidx288 = getelementptr inbounds [10 x ptr], ptr %m_joints287, i32 0, i32 1832  store ptr %86, ptr %arrayidx288, align 4833  %m_ownerWorld289 = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 1834  %87 = load ptr, ptr %m_ownerWorld289, align 4835  %vtable290 = load ptr, ptr %87836  %vfn291 = getelementptr inbounds ptr, ptr %vtable290, i64 10837  %88 = load ptr, ptr %vfn291838  %m_joints292 = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 4839  %arrayidx293 = getelementptr inbounds [10 x ptr], ptr %m_joints292, i32 0, i32 1840  %89 = load ptr, ptr %arrayidx293, align 4841  call void %88(ptr %87, ptr %89, i1 zeroext true)842  call void @_ZN11btTransform11setIdentityEv(ptr %localA)843  call void @_ZN11btTransform11setIdentityEv(ptr %localB)844  %call294 = call ptr @_ZN11btTransform8getBasisEv(ptr %localA)845  call void @_ZN11btMatrix3x311setEulerZYXEfff(ptr %call294, float 0.000000e+00, float 0.000000e+00, float 0xC00F6A7A20000000)846  store float 0xBFC70A3D80000000, ptr %ref.tmp297, align 4847  store float 0xBFB99999A0000000, ptr %ref.tmp298, align 4848  store float 0.000000e+00, ptr %ref.tmp299, align 4849  %call300 = call ptr @_ZN9btVector3C1ERKfS1_S1_(ptr %ref.tmp296, ptr %ref.tmp297, ptr %ref.tmp298, ptr %ref.tmp299)850  call void @_ZmlRKfRK9btVector3(ptr sret(%class.btVector3) %ref.tmp295, ptr %scale.addr, ptr %ref.tmp296)851  call void @_ZN11btTransform9setOriginERK9btVector3(ptr %localA, ptr %ref.tmp295)852  %call301 = call ptr @_ZN11btTransform8getBasisEv(ptr %localB)853  call void @_ZN11btMatrix3x311setEulerZYXEfff(ptr %call301, float 0.000000e+00, float 0.000000e+00, float 0xC00F6A7A20000000)854  store float 0.000000e+00, ptr %ref.tmp304, align 4855  store float 0x3FCCCCCCC0000000, ptr %ref.tmp305, align 4856  store float 0.000000e+00, ptr %ref.tmp306, align 4857  %call307 = call ptr @_ZN9btVector3C1ERKfS1_S1_(ptr %ref.tmp303, ptr %ref.tmp304, ptr %ref.tmp305, ptr %ref.tmp306)858  call void @_ZmlRKfRK9btVector3(ptr sret(%class.btVector3) %ref.tmp302, ptr %scale.addr, ptr %ref.tmp303)859  call void @_ZN11btTransform9setOriginERK9btVector3(ptr %localB, ptr %ref.tmp302)860  %call308 = call noalias ptr @_Znwm(i32 628)861  %m_bodies309 = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 3862  %90 = load ptr, ptr %m_bodies309, align 4863  %m_bodies311 = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 3864  %arrayidx312 = getelementptr inbounds [11 x ptr], ptr %m_bodies311, i32 0, i32 3865  %91 = load ptr, ptr %arrayidx312, align 4866  %call315 = invoke ptr @_ZN21btConeTwistConstraintC1ER11btRigidBodyS1_RK11btTransformS4_(ptr %call308, ptr %90, ptr %91, ptr %localA, ptr %localB)867          to label %invoke.cont314 unwind label %lpad313868 869invoke.cont314:                                   ; preds = %invoke.cont285870  store ptr %call308, ptr %coneC, align 4871  %92 = load ptr, ptr %coneC, align 4872  call void @_ZN21btConeTwistConstraint8setLimitEffffff(ptr %92, float 0x3FE921FB60000000, float 0x3FE921FB60000000, float 0.000000e+00, float 1.000000e+00, float 0x3FD3333340000000, float 1.000000e+00)873  %93 = load ptr, ptr %coneC, align 4874  %m_joints316 = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 4875  %arrayidx317 = getelementptr inbounds [10 x ptr], ptr %m_joints316, i32 0, i32 2876  store ptr %93, ptr %arrayidx317, align 4877  %m_ownerWorld318 = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 1878  %94 = load ptr, ptr %m_ownerWorld318, align 4879  %vtable319 = load ptr, ptr %94880  %vfn320 = getelementptr inbounds ptr, ptr %vtable319, i64 10881  %95 = load ptr, ptr %vfn320882  %m_joints321 = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 4883  %arrayidx322 = getelementptr inbounds [10 x ptr], ptr %m_joints321, i32 0, i32 2884  %96 = load ptr, ptr %arrayidx322, align 4885  call void %95(ptr %94, ptr %96, i1 zeroext true)886  call void @_ZN11btTransform11setIdentityEv(ptr %localA)887  call void @_ZN11btTransform11setIdentityEv(ptr %localB)888  %call323 = call ptr @_ZN11btTransform8getBasisEv(ptr %localA)889  call void @_ZN11btMatrix3x311setEulerZYXEfff(ptr %call323, float 0.000000e+00, float 0x3FF921FB60000000, float 0.000000e+00)890  store float 0.000000e+00, ptr %ref.tmp326, align 4891  store float 0xBFCCCCCCC0000000, ptr %ref.tmp327, align 4892  store float 0.000000e+00, ptr %ref.tmp328, align 4893  %call329 = call ptr @_ZN9btVector3C1ERKfS1_S1_(ptr %ref.tmp325, ptr %ref.tmp326, ptr %ref.tmp327, ptr %ref.tmp328)894  call void @_ZmlRKfRK9btVector3(ptr sret(%class.btVector3) %ref.tmp324, ptr %scale.addr, ptr %ref.tmp325)895  call void @_ZN11btTransform9setOriginERK9btVector3(ptr %localA, ptr %ref.tmp324)896  %call330 = call ptr @_ZN11btTransform8getBasisEv(ptr %localB)897  call void @_ZN11btMatrix3x311setEulerZYXEfff(ptr %call330, float 0.000000e+00, float 0x3FF921FB60000000, float 0.000000e+00)898  store float 0.000000e+00, ptr %ref.tmp333, align 4899  store float 0x3FC7AE1480000000, ptr %ref.tmp334, align 4900  store float 0.000000e+00, ptr %ref.tmp335, align 4901  %call336 = call ptr @_ZN9btVector3C1ERKfS1_S1_(ptr %ref.tmp332, ptr %ref.tmp333, ptr %ref.tmp334, ptr %ref.tmp335)902  call void @_ZmlRKfRK9btVector3(ptr sret(%class.btVector3) %ref.tmp331, ptr %scale.addr, ptr %ref.tmp332)903  call void @_ZN11btTransform9setOriginERK9btVector3(ptr %localB, ptr %ref.tmp331)904  %call337 = call noalias ptr @_Znwm(i32 780)905  %m_bodies338 = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 3906  %arrayidx339 = getelementptr inbounds [11 x ptr], ptr %m_bodies338, i32 0, i32 3907  %97 = load ptr, ptr %arrayidx339, align 4908  %m_bodies340 = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 3909  %arrayidx341 = getelementptr inbounds [11 x ptr], ptr %m_bodies340, i32 0, i32 4910  %98 = load ptr, ptr %arrayidx341, align 4911  %call344 = invoke ptr @_ZN17btHingeConstraintC1ER11btRigidBodyS1_RK11btTransformS4_b(ptr %call337, ptr %97, ptr %98, ptr %localA, ptr %localB, i1 zeroext false)912          to label %invoke.cont343 unwind label %lpad342913 914invoke.cont343:                                   ; preds = %invoke.cont314915  store ptr %call337, ptr %hingeC, align 4916  %99 = load ptr, ptr %hingeC, align 4917  call void @_ZN17btHingeConstraint8setLimitEfffff(ptr %99, float 0.000000e+00, float 0x3FF921FB60000000, float 0x3FECCCCCC0000000, float 0x3FD3333340000000, float 1.000000e+00)918  %100 = load ptr, ptr %hingeC, align 4919  %m_joints345 = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 4920  %arrayidx346 = getelementptr inbounds [10 x ptr], ptr %m_joints345, i32 0, i32 3921  store ptr %100, ptr %arrayidx346, align 4922  %m_ownerWorld347 = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 1923  %101 = load ptr, ptr %m_ownerWorld347, align 4924  %vtable348 = load ptr, ptr %101925  %vfn349 = getelementptr inbounds ptr, ptr %vtable348, i64 10926  %102 = load ptr, ptr %vfn349927  %m_joints350 = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 4928  %arrayidx351 = getelementptr inbounds [10 x ptr], ptr %m_joints350, i32 0, i32 3929  %103 = load ptr, ptr %arrayidx351, align 4930  call void %102(ptr %101, ptr %103, i1 zeroext true)931  call void @_ZN11btTransform11setIdentityEv(ptr %localA)932  call void @_ZN11btTransform11setIdentityEv(ptr %localB)933  %call352 = call ptr @_ZN11btTransform8getBasisEv(ptr %localA)934  call void @_ZN11btMatrix3x311setEulerZYXEfff(ptr %call352, float 0.000000e+00, float 0.000000e+00, float 0x3FE921FB60000000)935  store float 0x3FC70A3D80000000, ptr %ref.tmp355, align 4936  store float 0xBFB99999A0000000, ptr %ref.tmp356, align 4937  store float 0.000000e+00, ptr %ref.tmp357, align 4938  %call358 = call ptr @_ZN9btVector3C1ERKfS1_S1_(ptr %ref.tmp354, ptr %ref.tmp355, ptr %ref.tmp356, ptr %ref.tmp357)939  call void @_ZmlRKfRK9btVector3(ptr sret(%class.btVector3) %ref.tmp353, ptr %scale.addr, ptr %ref.tmp354)940  call void @_ZN11btTransform9setOriginERK9btVector3(ptr %localA, ptr %ref.tmp353)941  %call359 = call ptr @_ZN11btTransform8getBasisEv(ptr %localB)942  call void @_ZN11btMatrix3x311setEulerZYXEfff(ptr %call359, float 0.000000e+00, float 0.000000e+00, float 0x3FE921FB60000000)943  store float 0.000000e+00, ptr %ref.tmp362, align 4944  store float 0x3FCCCCCCC0000000, ptr %ref.tmp363, align 4945  store float 0.000000e+00, ptr %ref.tmp364, align 4946  %call365 = call ptr @_ZN9btVector3C1ERKfS1_S1_(ptr %ref.tmp361, ptr %ref.tmp362, ptr %ref.tmp363, ptr %ref.tmp364)947  call void @_ZmlRKfRK9btVector3(ptr sret(%class.btVector3) %ref.tmp360, ptr %scale.addr, ptr %ref.tmp361)948  call void @_ZN11btTransform9setOriginERK9btVector3(ptr %localB, ptr %ref.tmp360)949  %call366 = call noalias ptr @_Znwm(i32 628)950  %m_bodies367 = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 3951  %104 = load ptr, ptr %m_bodies367, align 4952  %m_bodies369 = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 3953  %arrayidx370 = getelementptr inbounds [11 x ptr], ptr %m_bodies369, i32 0, i32 5954  %105 = load ptr, ptr %arrayidx370, align 4955  %call373 = invoke ptr @_ZN21btConeTwistConstraintC1ER11btRigidBodyS1_RK11btTransformS4_(ptr %call366, ptr %104, ptr %105, ptr %localA, ptr %localB)956          to label %invoke.cont372 unwind label %lpad371957 958invoke.cont372:                                   ; preds = %invoke.cont343959  store ptr %call366, ptr %coneC, align 4960  %106 = load ptr, ptr %coneC, align 4961  call void @_ZN21btConeTwistConstraint8setLimitEffffff(ptr %106, float 0x3FE921FB60000000, float 0x3FE921FB60000000, float 0.000000e+00, float 1.000000e+00, float 0x3FD3333340000000, float 1.000000e+00)962  %107 = load ptr, ptr %coneC, align 4963  %m_joints374 = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 4964  %arrayidx375 = getelementptr inbounds [10 x ptr], ptr %m_joints374, i32 0, i32 4965  store ptr %107, ptr %arrayidx375, align 4966  %m_ownerWorld376 = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 1967  %108 = load ptr, ptr %m_ownerWorld376, align 4968  %vtable377 = load ptr, ptr %108969  %vfn378 = getelementptr inbounds ptr, ptr %vtable377, i64 10970  %109 = load ptr, ptr %vfn378971  %m_joints379 = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 4972  %arrayidx380 = getelementptr inbounds [10 x ptr], ptr %m_joints379, i32 0, i32 4973  %110 = load ptr, ptr %arrayidx380, align 4974  call void %109(ptr %108, ptr %110, i1 zeroext true)975  call void @_ZN11btTransform11setIdentityEv(ptr %localA)976  call void @_ZN11btTransform11setIdentityEv(ptr %localB)977  %call381 = call ptr @_ZN11btTransform8getBasisEv(ptr %localA)978  call void @_ZN11btMatrix3x311setEulerZYXEfff(ptr %call381, float 0.000000e+00, float 0x3FF921FB60000000, float 0.000000e+00)979  store float 0.000000e+00, ptr %ref.tmp384, align 4980  store float 0xBFCCCCCCC0000000, ptr %ref.tmp385, align 4981  store float 0.000000e+00, ptr %ref.tmp386, align 4982  %call387 = call ptr @_ZN9btVector3C1ERKfS1_S1_(ptr %ref.tmp383, ptr %ref.tmp384, ptr %ref.tmp385, ptr %ref.tmp386)983  call void @_ZmlRKfRK9btVector3(ptr sret(%class.btVector3) %ref.tmp382, ptr %scale.addr, ptr %ref.tmp383)984  call void @_ZN11btTransform9setOriginERK9btVector3(ptr %localA, ptr %ref.tmp382)985  %call388 = call ptr @_ZN11btTransform8getBasisEv(ptr %localB)986  call void @_ZN11btMatrix3x311setEulerZYXEfff(ptr %call388, float 0.000000e+00, float 0x3FF921FB60000000, float 0.000000e+00)987  store float 0.000000e+00, ptr %ref.tmp391, align 4988  store float 0x3FC7AE1480000000, ptr %ref.tmp392, align 4989  store float 0.000000e+00, ptr %ref.tmp393, align 4990  %call394 = call ptr @_ZN9btVector3C1ERKfS1_S1_(ptr %ref.tmp390, ptr %ref.tmp391, ptr %ref.tmp392, ptr %ref.tmp393)991  call void @_ZmlRKfRK9btVector3(ptr sret(%class.btVector3) %ref.tmp389, ptr %scale.addr, ptr %ref.tmp390)992  call void @_ZN11btTransform9setOriginERK9btVector3(ptr %localB, ptr %ref.tmp389)993  %call395 = call noalias ptr @_Znwm(i32 780)994  %m_bodies396 = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 3995  %arrayidx397 = getelementptr inbounds [11 x ptr], ptr %m_bodies396, i32 0, i32 5996  %111 = load ptr, ptr %arrayidx397, align 4997  %m_bodies398 = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 3998  %arrayidx399 = getelementptr inbounds [11 x ptr], ptr %m_bodies398, i32 0, i32 6999  %112 = load ptr, ptr %arrayidx399, align 41000  %call402 = invoke ptr @_ZN17btHingeConstraintC1ER11btRigidBodyS1_RK11btTransformS4_b(ptr %call395, ptr %111, ptr %112, ptr %localA, ptr %localB, i1 zeroext false)1001          to label %invoke.cont401 unwind label %lpad4001002 1003invoke.cont401:                                   ; preds = %invoke.cont3721004  store ptr %call395, ptr %hingeC, align 41005  %113 = load ptr, ptr %hingeC, align 41006  call void @_ZN17btHingeConstraint8setLimitEfffff(ptr %113, float 0.000000e+00, float 0x3FF921FB60000000, float 0x3FECCCCCC0000000, float 0x3FD3333340000000, float 1.000000e+00)1007  %114 = load ptr, ptr %hingeC, align 41008  %m_joints403 = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 41009  %arrayidx404 = getelementptr inbounds [10 x ptr], ptr %m_joints403, i32 0, i32 51010  store ptr %114, ptr %arrayidx404, align 41011  %m_ownerWorld405 = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 11012  %115 = load ptr, ptr %m_ownerWorld405, align 41013  %vtable406 = load ptr, ptr %1151014  %vfn407 = getelementptr inbounds ptr, ptr %vtable406, i64 101015  %116 = load ptr, ptr %vfn4071016  %m_joints408 = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 41017  %arrayidx409 = getelementptr inbounds [10 x ptr], ptr %m_joints408, i32 0, i32 51018  %117 = load ptr, ptr %arrayidx409, align 41019  call void %116(ptr %115, ptr %117, i1 zeroext true)1020  call void @_ZN11btTransform11setIdentityEv(ptr %localA)1021  call void @_ZN11btTransform11setIdentityEv(ptr %localB)1022  %call410 = call ptr @_ZN11btTransform8getBasisEv(ptr %localA)1023  call void @_ZN11btMatrix3x311setEulerZYXEfff(ptr %call410, float 0.000000e+00, float 0.000000e+00, float 0x400921FB60000000)1024  store float 0xBFC99999A0000000, ptr %ref.tmp413, align 41025  store float 0x3FC3333340000000, ptr %ref.tmp414, align 41026  store float 0.000000e+00, ptr %ref.tmp415, align 41027  %call416 = call ptr @_ZN9btVector3C1ERKfS1_S1_(ptr %ref.tmp412, ptr %ref.tmp413, ptr %ref.tmp414, ptr %ref.tmp415)1028  call void @_ZmlRKfRK9btVector3(ptr sret(%class.btVector3) %ref.tmp411, ptr %scale.addr, ptr %ref.tmp412)1029  call void @_ZN11btTransform9setOriginERK9btVector3(ptr %localA, ptr %ref.tmp411)1030  %call417 = call ptr @_ZN11btTransform8getBasisEv(ptr %localB)1031  call void @_ZN11btMatrix3x311setEulerZYXEfff(ptr %call417, float 0.000000e+00, float 0.000000e+00, float 0x3FF921FB60000000)1032  store float 0.000000e+00, ptr %ref.tmp420, align 41033  store float 0xBFC70A3D80000000, ptr %ref.tmp421, align 41034  store float 0.000000e+00, ptr %ref.tmp422, align 41035  %call423 = call ptr @_ZN9btVector3C1ERKfS1_S1_(ptr %ref.tmp419, ptr %ref.tmp420, ptr %ref.tmp421, ptr %ref.tmp422)1036  call void @_ZmlRKfRK9btVector3(ptr sret(%class.btVector3) %ref.tmp418, ptr %scale.addr, ptr %ref.tmp419)1037  call void @_ZN11btTransform9setOriginERK9btVector3(ptr %localB, ptr %ref.tmp418)1038  %call424 = call noalias ptr @_Znwm(i32 628)1039  %m_bodies425 = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 31040  %arrayidx426 = getelementptr inbounds [11 x ptr], ptr %m_bodies425, i32 0, i32 11041  %118 = load ptr, ptr %arrayidx426, align 41042  %m_bodies427 = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 31043  %arrayidx428 = getelementptr inbounds [11 x ptr], ptr %m_bodies427, i32 0, i32 71044  %119 = load ptr, ptr %arrayidx428, align 41045  %call431 = invoke ptr @_ZN21btConeTwistConstraintC1ER11btRigidBodyS1_RK11btTransformS4_(ptr %call424, ptr %118, ptr %119, ptr %localA, ptr %localB)1046          to label %invoke.cont430 unwind label %lpad4291047 1048invoke.cont430:                                   ; preds = %invoke.cont4011049  store ptr %call424, ptr %coneC, align 41050  %120 = load ptr, ptr %coneC, align 41051  call void @_ZN21btConeTwistConstraint8setLimitEffffff(ptr %120, float 0x3FF921FB60000000, float 0x3FF921FB60000000, float 0.000000e+00, float 1.000000e+00, float 0x3FD3333340000000, float 1.000000e+00)1052  %121 = load ptr, ptr %coneC, align 41053  %m_joints432 = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 41054  %arrayidx433 = getelementptr inbounds [10 x ptr], ptr %m_joints432, i32 0, i32 61055  store ptr %121, ptr %arrayidx433, align 41056  %m_ownerWorld434 = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 11057  %122 = load ptr, ptr %m_ownerWorld434, align 41058  %vtable435 = load ptr, ptr %1221059  %vfn436 = getelementptr inbounds ptr, ptr %vtable435, i64 101060  %123 = load ptr, ptr %vfn4361061  %m_joints437 = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 41062  %arrayidx438 = getelementptr inbounds [10 x ptr], ptr %m_joints437, i32 0, i32 61063  %124 = load ptr, ptr %arrayidx438, align 41064  call void %123(ptr %122, ptr %124, i1 zeroext true)1065  call void @_ZN11btTransform11setIdentityEv(ptr %localA)1066  call void @_ZN11btTransform11setIdentityEv(ptr %localB)1067  %call439 = call ptr @_ZN11btTransform8getBasisEv(ptr %localA)1068  call void @_ZN11btMatrix3x311setEulerZYXEfff(ptr %call439, float 0.000000e+00, float 0x3FF921FB60000000, float 0.000000e+00)1069  store float 0.000000e+00, ptr %ref.tmp442, align 41070  store float 0x3FC70A3D80000000, ptr %ref.tmp443, align 41071  store float 0.000000e+00, ptr %ref.tmp444, align 41072  %call445 = call ptr @_ZN9btVector3C1ERKfS1_S1_(ptr %ref.tmp441, ptr %ref.tmp442, ptr %ref.tmp443, ptr %ref.tmp444)1073  call void @_ZmlRKfRK9btVector3(ptr sret(%class.btVector3) %ref.tmp440, ptr %scale.addr, ptr %ref.tmp441)1074  call void @_ZN11btTransform9setOriginERK9btVector3(ptr %localA, ptr %ref.tmp440)1075  %call446 = call ptr @_ZN11btTransform8getBasisEv(ptr %localB)1076  call void @_ZN11btMatrix3x311setEulerZYXEfff(ptr %call446, float 0.000000e+00, float 0x3FF921FB60000000, float 0.000000e+00)1077  store float 0.000000e+00, ptr %ref.tmp449, align 41078  store float 0xBFC1EB8520000000, ptr %ref.tmp450, align 41079  store float 0.000000e+00, ptr %ref.tmp451, align 41080  %call452 = call ptr @_ZN9btVector3C1ERKfS1_S1_(ptr %ref.tmp448, ptr %ref.tmp449, ptr %ref.tmp450, ptr %ref.tmp451)1081  call void @_ZmlRKfRK9btVector3(ptr sret(%class.btVector3) %ref.tmp447, ptr %scale.addr, ptr %ref.tmp448)1082  call void @_ZN11btTransform9setOriginERK9btVector3(ptr %localB, ptr %ref.tmp447)1083  %call453 = call noalias ptr @_Znwm(i32 780)1084  %m_bodies454 = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 31085  %arrayidx455 = getelementptr inbounds [11 x ptr], ptr %m_bodies454, i32 0, i32 71086  %125 = load ptr, ptr %arrayidx455, align 41087  %m_bodies456 = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 31088  %arrayidx457 = getelementptr inbounds [11 x ptr], ptr %m_bodies456, i32 0, i32 81089  %126 = load ptr, ptr %arrayidx457, align 41090  %call460 = invoke ptr @_ZN17btHingeConstraintC1ER11btRigidBodyS1_RK11btTransformS4_b(ptr %call453, ptr %125, ptr %126, ptr %localA, ptr %localB, i1 zeroext false)1091          to label %invoke.cont459 unwind label %lpad4581092 1093invoke.cont459:                                   ; preds = %invoke.cont4301094  store ptr %call453, ptr %hingeC, align 41095  %127 = load ptr, ptr %hingeC, align 41096  call void @_ZN17btHingeConstraint8setLimitEfffff(ptr %127, float 0xBFF921FB60000000, float 0.000000e+00, float 0x3FECCCCCC0000000, float 0x3FD3333340000000, float 1.000000e+00)1097  %128 = load ptr, ptr %hingeC, align 41098  %m_joints461 = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 41099  %arrayidx462 = getelementptr inbounds [10 x ptr], ptr %m_joints461, i32 0, i32 71100  store ptr %128, ptr %arrayidx462, align 41101  %m_ownerWorld463 = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 11102  %129 = load ptr, ptr %m_ownerWorld463, align 41103  %vtable464 = load ptr, ptr %1291104  %vfn465 = getelementptr inbounds ptr, ptr %vtable464, i64 101105  %130 = load ptr, ptr %vfn4651106  %m_joints466 = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 41107  %arrayidx467 = getelementptr inbounds [10 x ptr], ptr %m_joints466, i32 0, i32 71108  %131 = load ptr, ptr %arrayidx467, align 41109  call void %130(ptr %129, ptr %131, i1 zeroext true)1110  call void @_ZN11btTransform11setIdentityEv(ptr %localA)1111  call void @_ZN11btTransform11setIdentityEv(ptr %localB)1112  %call468 = call ptr @_ZN11btTransform8getBasisEv(ptr %localA)1113  call void @_ZN11btMatrix3x311setEulerZYXEfff(ptr %call468, float 0.000000e+00, float 0.000000e+00, float 0.000000e+00)1114  store float 0x3FC99999A0000000, ptr %ref.tmp471, align 41115  store float 0x3FC3333340000000, ptr %ref.tmp472, align 41116  store float 0.000000e+00, ptr %ref.tmp473, align 41117  %call474 = call ptr @_ZN9btVector3C1ERKfS1_S1_(ptr %ref.tmp470, ptr %ref.tmp471, ptr %ref.tmp472, ptr %ref.tmp473)1118  call void @_ZmlRKfRK9btVector3(ptr sret(%class.btVector3) %ref.tmp469, ptr %scale.addr, ptr %ref.tmp470)1119  call void @_ZN11btTransform9setOriginERK9btVector3(ptr %localA, ptr %ref.tmp469)1120  %call475 = call ptr @_ZN11btTransform8getBasisEv(ptr %localB)1121  call void @_ZN11btMatrix3x311setEulerZYXEfff(ptr %call475, float 0.000000e+00, float 0.000000e+00, float 0x3FF921FB60000000)1122  store float 0.000000e+00, ptr %ref.tmp478, align 41123  store float 0xBFC70A3D80000000, ptr %ref.tmp479, align 41124  store float 0.000000e+00, ptr %ref.tmp480, align 41125  %call481 = call ptr @_ZN9btVector3C1ERKfS1_S1_(ptr %ref.tmp477, ptr %ref.tmp478, ptr %ref.tmp479, ptr %ref.tmp480)1126  call void @_ZmlRKfRK9btVector3(ptr sret(%class.btVector3) %ref.tmp476, ptr %scale.addr, ptr %ref.tmp477)1127  call void @_ZN11btTransform9setOriginERK9btVector3(ptr %localB, ptr %ref.tmp476)1128  %call482 = call noalias ptr @_Znwm(i32 628)1129  %m_bodies483 = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 31130  %arrayidx484 = getelementptr inbounds [11 x ptr], ptr %m_bodies483, i32 0, i32 11131  %132 = load ptr, ptr %arrayidx484, align 41132  %m_bodies485 = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 31133  %arrayidx486 = getelementptr inbounds [11 x ptr], ptr %m_bodies485, i32 0, i32 91134  %133 = load ptr, ptr %arrayidx486, align 41135  %call489 = invoke ptr @_ZN21btConeTwistConstraintC1ER11btRigidBodyS1_RK11btTransformS4_(ptr %call482, ptr %132, ptr %133, ptr %localA, ptr %localB)1136          to label %invoke.cont488 unwind label %lpad4871137 1138invoke.cont488:                                   ; preds = %invoke.cont4591139  store ptr %call482, ptr %coneC, align 41140  %134 = load ptr, ptr %coneC, align 41141  call void @_ZN21btConeTwistConstraint8setLimitEffffff(ptr %134, float 0x3FF921FB60000000, float 0x3FF921FB60000000, float 0.000000e+00, float 1.000000e+00, float 0x3FD3333340000000, float 1.000000e+00)1142  %135 = load ptr, ptr %coneC, align 41143  %m_joints490 = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 41144  %arrayidx491 = getelementptr inbounds [10 x ptr], ptr %m_joints490, i32 0, i32 81145  store ptr %135, ptr %arrayidx491, align 41146  %m_ownerWorld492 = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 11147  %136 = load ptr, ptr %m_ownerWorld492, align 41148  %vtable493 = load ptr, ptr %1361149  %vfn494 = getelementptr inbounds ptr, ptr %vtable493, i64 101150  %137 = load ptr, ptr %vfn4941151  %m_joints495 = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 41152  %arrayidx496 = getelementptr inbounds [10 x ptr], ptr %m_joints495, i32 0, i32 81153  %138 = load ptr, ptr %arrayidx496, align 41154  call void %137(ptr %136, ptr %138, i1 zeroext true)1155  call void @_ZN11btTransform11setIdentityEv(ptr %localA)1156  call void @_ZN11btTransform11setIdentityEv(ptr %localB)1157  %call497 = call ptr @_ZN11btTransform8getBasisEv(ptr %localA)1158  call void @_ZN11btMatrix3x311setEulerZYXEfff(ptr %call497, float 0.000000e+00, float 0x3FF921FB60000000, float 0.000000e+00)1159  store float 0.000000e+00, ptr %ref.tmp500, align 41160  store float 0x3FC70A3D80000000, ptr %ref.tmp501, align 41161  store float 0.000000e+00, ptr %ref.tmp502, align 41162  %call503 = call ptr @_ZN9btVector3C1ERKfS1_S1_(ptr %ref.tmp499, ptr %ref.tmp500, ptr %ref.tmp501, ptr %ref.tmp502)1163  call void @_ZmlRKfRK9btVector3(ptr sret(%class.btVector3) %ref.tmp498, ptr %scale.addr, ptr %ref.tmp499)1164  call void @_ZN11btTransform9setOriginERK9btVector3(ptr %localA, ptr %ref.tmp498)1165  %call504 = call ptr @_ZN11btTransform8getBasisEv(ptr %localB)1166  call void @_ZN11btMatrix3x311setEulerZYXEfff(ptr %call504, float 0.000000e+00, float 0x3FF921FB60000000, float 0.000000e+00)1167  store float 0.000000e+00, ptr %ref.tmp507, align 41168  store float 0xBFC1EB8520000000, ptr %ref.tmp508, align 41169  store float 0.000000e+00, ptr %ref.tmp509, align 41170  %call510 = call ptr @_ZN9btVector3C1ERKfS1_S1_(ptr %ref.tmp506, ptr %ref.tmp507, ptr %ref.tmp508, ptr %ref.tmp509)1171  call void @_ZmlRKfRK9btVector3(ptr sret(%class.btVector3) %ref.tmp505, ptr %scale.addr, ptr %ref.tmp506)1172  call void @_ZN11btTransform9setOriginERK9btVector3(ptr %localB, ptr %ref.tmp505)1173  %call511 = call noalias ptr @_Znwm(i32 780)1174  %m_bodies512 = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 31175  %arrayidx513 = getelementptr inbounds [11 x ptr], ptr %m_bodies512, i32 0, i32 91176  %139 = load ptr, ptr %arrayidx513, align 41177  %m_bodies514 = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 31178  %arrayidx515 = getelementptr inbounds [11 x ptr], ptr %m_bodies514, i32 0, i32 101179  %140 = load ptr, ptr %arrayidx515, align 41180  %call518 = invoke ptr @_ZN17btHingeConstraintC1ER11btRigidBodyS1_RK11btTransformS4_b(ptr %call511, ptr %139, ptr %140, ptr %localA, ptr %localB, i1 zeroext false)1181          to label %invoke.cont517 unwind label %lpad5161182 1183invoke.cont517:                                   ; preds = %invoke.cont4881184  store ptr %call511, ptr %hingeC, align 41185  %141 = load ptr, ptr %hingeC, align 41186  call void @_ZN17btHingeConstraint8setLimitEfffff(ptr %141, float 0xBFF921FB60000000, float 0.000000e+00, float 0x3FECCCCCC0000000, float 0x3FD3333340000000, float 1.000000e+00)1187  %142 = load ptr, ptr %hingeC, align 41188  %m_joints519 = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 41189  %arrayidx520 = getelementptr inbounds [10 x ptr], ptr %m_joints519, i32 0, i32 91190  store ptr %142, ptr %arrayidx520, align 41191  %m_ownerWorld521 = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 11192  %143 = load ptr, ptr %m_ownerWorld521, align 41193  %vtable522 = load ptr, ptr %1431194  %vfn523 = getelementptr inbounds ptr, ptr %vtable522, i64 101195  %144 = load ptr, ptr %vfn5231196  %m_joints524 = getelementptr inbounds %class.RagDoll, ptr %this1, i32 0, i32 41197  %arrayidx525 = getelementptr inbounds [10 x ptr], ptr %m_joints524, i32 0, i32 91198  %145 = load ptr, ptr %arrayidx525, align 41199  call void %144(ptr %143, ptr %145, i1 zeroext true)1200  %146 = load ptr, ptr %retval1201  ret ptr %1461202 1203lpad258:                                          ; preds = %for.end1204  %147 = landingpad { ptr, i32 }1205          cleanup1206  %148 = extractvalue { ptr, i32 } %147, 01207  store ptr %148, ptr %exn.slot1208  %149 = extractvalue { ptr, i32 } %147, 11209  store i32 %149, ptr %ehselector.slot1210  call void @_ZdlPv(ptr %call253) nounwind1211  br label %eh.resume1212 1213lpad284:                                          ; preds = %invoke.cont2591214  %150 = landingpad { ptr, i32 }1215          cleanup1216  %151 = extractvalue { ptr, i32 } %150, 01217  store ptr %151, ptr %exn.slot1218  %152 = extractvalue { ptr, i32 } %150, 11219  store i32 %152, ptr %ehselector.slot1220  call void @_ZdlPv(ptr %call279) nounwind1221  br label %eh.resume1222 1223lpad313:                                          ; preds = %invoke.cont2851224  %153 = landingpad { ptr, i32 }1225          cleanup1226  %154 = extractvalue { ptr, i32 } %153, 01227  store ptr %154, ptr %exn.slot1228  %155 = extractvalue { ptr, i32 } %153, 11229  store i32 %155, ptr %ehselector.slot1230  call void @_ZdlPv(ptr %call308) nounwind1231  br label %eh.resume1232 1233lpad342:                                          ; preds = %invoke.cont3141234  %156 = landingpad { ptr, i32 }1235          cleanup1236  %157 = extractvalue { ptr, i32 } %156, 01237  store ptr %157, ptr %exn.slot1238  %158 = extractvalue { ptr, i32 } %156, 11239  store i32 %158, ptr %ehselector.slot1240  call void @_ZdlPv(ptr %call337) nounwind1241  br label %eh.resume1242 1243lpad371:                                          ; preds = %invoke.cont3431244  %159 = landingpad { ptr, i32 }1245          cleanup1246  %160 = extractvalue { ptr, i32 } %159, 01247  store ptr %160, ptr %exn.slot1248  %161 = extractvalue { ptr, i32 } %159, 11249  store i32 %161, ptr %ehselector.slot1250  call void @_ZdlPv(ptr %call366) nounwind1251  br label %eh.resume1252 1253lpad400:                                          ; preds = %invoke.cont3721254  %162 = landingpad { ptr, i32 }1255          cleanup1256  %163 = extractvalue { ptr, i32 } %162, 01257  store ptr %163, ptr %exn.slot1258  %164 = extractvalue { ptr, i32 } %162, 11259  store i32 %164, ptr %ehselector.slot1260  call void @_ZdlPv(ptr %call395) nounwind1261  br label %eh.resume1262 1263lpad429:                                          ; preds = %invoke.cont4011264  %165 = landingpad { ptr, i32 }1265          cleanup1266  %166 = extractvalue { ptr, i32 } %165, 01267  store ptr %166, ptr %exn.slot1268  %167 = extractvalue { ptr, i32 } %165, 11269  store i32 %167, ptr %ehselector.slot1270  call void @_ZdlPv(ptr %call424) nounwind1271  br label %eh.resume1272 1273lpad458:                                          ; preds = %invoke.cont4301274  %168 = landingpad { ptr, i32 }1275          cleanup1276  %169 = extractvalue { ptr, i32 } %168, 01277  store ptr %169, ptr %exn.slot1278  %170 = extractvalue { ptr, i32 } %168, 11279  store i32 %170, ptr %ehselector.slot1280  call void @_ZdlPv(ptr %call453) nounwind1281  br label %eh.resume1282 1283lpad487:                                          ; preds = %invoke.cont4591284  %171 = landingpad { ptr, i32 }1285          cleanup1286  %172 = extractvalue { ptr, i32 } %171, 01287  store ptr %172, ptr %exn.slot1288  %173 = extractvalue { ptr, i32 } %171, 11289  store i32 %173, ptr %ehselector.slot1290  call void @_ZdlPv(ptr %call482) nounwind1291  br label %eh.resume1292 1293lpad516:                                          ; preds = %invoke.cont4881294  %174 = landingpad { ptr, i32 }1295          cleanup1296  %175 = extractvalue { ptr, i32 } %174, 01297  store ptr %175, ptr %exn.slot1298  %176 = extractvalue { ptr, i32 } %174, 11299  store i32 %176, ptr %ehselector.slot1300  call void @_ZdlPv(ptr %call511) nounwind1301  br label %eh.resume1302 1303eh.resume:                                        ; preds = %lpad516, %lpad487, %lpad458, %lpad429, %lpad400, %lpad371, %lpad342, %lpad313, %lpad284, %lpad258, %invoke.cont92, %invoke.cont83, %invoke.cont74, %invoke.cont65, %invoke.cont56, %invoke.cont47, %invoke.cont38, %invoke.cont29, %invoke.cont20, %invoke.cont11, %invoke.cont41304  %exn = load ptr, ptr %exn.slot1305  %sel = load i32, ptr %ehselector.slot1306  %lpad.val = insertvalue { ptr, i32 } undef, ptr %exn, 01307  %lpad.val526 = insertvalue { ptr, i32 } %lpad.val, i32 %sel, 11308  resume { ptr, i32 } %lpad.val5261309 1310terminate.lpad:                                   ; preds = %lpad89, %lpad80, %lpad71, %lpad62, %lpad53, %lpad44, %lpad35, %lpad26, %lpad17, %lpad8, %lpad1311  %177 = landingpad { ptr, i32 }1312          catch ptr null1313  call void @_ZSt9terminatev() noreturn nounwind1314  unreachable1315}1316 1317declare void @_ZmlRKfRK9btVector3(ptr noalias sret(%class.btVector3), ptr, ptr) inlinehint ssp1318 1319declare ptr @_ZN7RagDoll20localCreateRigidBodyEfRK11btTransformP16btCollisionShape(ptr, float, ptr, ptr) ssp align 21320 1321declare void @_ZNK11btTransformmlERKS_(ptr noalias sret(%class.btTransform), ptr, ptr) inlinehint ssp align 21322 1323declare void @_ZN11btMatrix3x311setEulerZYXEfff(ptr, float, float, float) ssp align 21324 1325declare void @_ZN11btRigidBody10setDampingEff(ptr, float, float)1326 1327declare void @_ZN17btCollisionObject19setDeactivationTimeEf(ptr, float) nounwind ssp align 21328 1329declare void @_ZN11btRigidBody21setSleepingThresholdsEff(ptr, float, float) nounwind ssp align 21330 1331declare ptr @_ZN17btHingeConstraintC1ER11btRigidBodyS1_RK11btTransformS4_b(ptr, ptr, ptr, ptr, ptr, i1 zeroext)1332 1333declare void @_ZN17btHingeConstraint8setLimitEfffff(ptr, float, float, float, float, float) ssp align 21334 1335declare ptr @_ZN21btConeTwistConstraintC1ER11btRigidBodyS1_RK11btTransformS4_(ptr, ptr, ptr, ptr, ptr)1336 1337declare void @_ZN21btConeTwistConstraint8setLimitEffffff(ptr, float, float, float, float, float, float) nounwind ssp align 21338