Home | History | Annotate | Download | only in X86
      1 ; RUN: opt < %s -basicaa -slp-vectorizer -dce -S -mtriple=x86_64-apple-macosx10.8.0 -mcpu=corei7
      2 
      3 target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64-S128"
      4 target triple = "x86_64-apple-macosx10.8.0"
      5 
      6 %"struct.btTypedConstraint::btConstraintInfo1.17.157.357.417.477.960" = type { i32, i32 }
      7 
      8 define void @_ZN23btGeneric6DofConstraint8getInfo1EPN17btTypedConstraint17btConstraintInfo1E(%"struct.btTypedConstraint::btConstraintInfo1.17.157.357.417.477.960"* nocapture %info) {
      9 entry:
     10   br i1 undef, label %if.else, label %if.then
     11 
     12 if.then:                                          ; preds = %entry
     13   ret void
     14 
     15 if.else:                                          ; preds = %entry
     16   %m_numConstraintRows4 = getelementptr inbounds %"struct.btTypedConstraint::btConstraintInfo1.17.157.357.417.477.960"* %info, i64 0, i32 0
     17   %nub5 = getelementptr inbounds %"struct.btTypedConstraint::btConstraintInfo1.17.157.357.417.477.960"* %info, i64 0, i32 1
     18   br i1 undef, label %land.lhs.true.i.1, label %if.then7.1
     19 
     20 land.lhs.true.i.1:                                ; preds = %if.else
     21   br i1 undef, label %for.inc.1, label %if.then7.1
     22 
     23 if.then7.1:                                       ; preds = %land.lhs.true.i.1, %if.else
     24   %inc.1 = add nsw i32 0, 1
     25   store i32 %inc.1, i32* %m_numConstraintRows4, align 4
     26   %dec.1 = add nsw i32 6, -1
     27   store i32 %dec.1, i32* %nub5, align 4
     28   br label %for.inc.1
     29 
     30 for.inc.1:                                        ; preds = %if.then7.1, %land.lhs.true.i.1
     31   %0 = phi i32 [ %dec.1, %if.then7.1 ], [ 6, %land.lhs.true.i.1 ]
     32   %1 = phi i32 [ %inc.1, %if.then7.1 ], [ 0, %land.lhs.true.i.1 ]
     33   %inc.2 = add nsw i32 %1, 1
     34   store i32 %inc.2, i32* %m_numConstraintRows4, align 4
     35   %dec.2 = add nsw i32 %0, -1
     36   store i32 %dec.2, i32* %nub5, align 4
     37   unreachable
     38 }
     39 
     40 %class.GIM_TRIANGLE_CALCULATION_CACHE.9.34.69.94.119.144.179.189.264.284.332 = type { float, [3 x %class.btVector3.5.30.65.90.115.140.175.185.260.280.330], [3 x %class.btVector3.5.30.65.90.115.140.175.185.260.280.330], %class.btVector4.7.32.67.92.117.142.177.187.262.282.331, %class.btVector4.7.32.67.92.117.142.177.187.262.282.331, %class.btVector3.5.30.65.90.115.140.175.185.260.280.330, %class.btVector3.5.30.65.90.115.140.175.185.260.280.330, %class.btVector3.5.30.65.90.115.140.175.185.260.280.330, %class.btVector3.5.30.65.90.115.140.175.185.260.280.330, [4 x float], float, float, [4 x float], float, float, [16 x %class.btVector3.5.30.65.90.115.140.175.185.260.280.330], [16 x %class.btVector3.5.30.65.90.115.140.175.185.260.280.330], [16 x %class.btVector3.5.30.65.90.115.140.175.185.260.280.330] }
     41 %class.btVector3.5.30.65.90.115.140.175.185.260.280.330 = type { [4 x float] }
     42 %class.btVector4.7.32.67.92.117.142.177.187.262.282.331 = type { %class.btVector3.5.30.65.90.115.140.175.185.260.280.330 }
     43 
     44 define void @_ZN30GIM_TRIANGLE_CALCULATION_CACHE18triangle_collisionERK9btVector3S2_S2_fS2_S2_S2_fR25GIM_TRIANGLE_CONTACT_DATA(%class.GIM_TRIANGLE_CALCULATION_CACHE.9.34.69.94.119.144.179.189.264.284.332* %this) {
     45 entry:
     46   %arrayidx26 = getelementptr inbounds %class.GIM_TRIANGLE_CALCULATION_CACHE.9.34.69.94.119.144.179.189.264.284.332* %this, i64 0, i32 2, i64 0, i32 0, i64 1
     47   %arrayidx36 = getelementptr inbounds %class.GIM_TRIANGLE_CALCULATION_CACHE.9.34.69.94.119.144.179.189.264.284.332* %this, i64 0, i32 2, i64 0, i32 0, i64 2
     48   %0 = load float* %arrayidx36, align 4
     49   %add587 = fadd float undef, undef
     50   %sub600 = fsub float %add587, undef
     51   store float %sub600, float* undef, align 4
     52   %sub613 = fsub float %add587, %sub600
     53   store float %sub613, float* %arrayidx26, align 4
     54   %add626 = fadd float %0, undef
     55   %sub639 = fsub float %add626, undef
     56   %sub652 = fsub float %add626, %sub639
     57   store float %sub652, float* %arrayidx36, align 4
     58   br i1 undef, label %if.else1609, label %if.then1595
     59 
     60 if.then1595:                                      ; preds = %entry
     61   br i1 undef, label %return, label %for.body.lr.ph.i.i1702
     62 
     63 for.body.lr.ph.i.i1702:                           ; preds = %if.then1595
     64   unreachable
     65 
     66 if.else1609:                                      ; preds = %entry
     67   unreachable
     68 
     69 return:                                           ; preds = %if.then1595
     70   ret void
     71 }
     72 
     73 define void @_Z8dBoxBox2RK9btVector3PKfS1_S1_S3_S1_RS_PfPiiP12dContactGeomiRN36btDiscreteCollisionDetectorInterface6ResultE() {
     74 entry:
     75   %add8.i2343 = fadd float undef, undef
     76   %add8.i2381 = fadd float undef, undef
     77   br i1 undef, label %return, label %if.end
     78 
     79 if.end:                                           ; preds = %entry
     80   br i1 undef, label %return, label %if.end111
     81 
     82 if.end111:                                        ; preds = %if.end
     83   br i1 undef, label %return, label %if.end136
     84 
     85 if.end136:                                        ; preds = %if.end111
     86   br i1 undef, label %return, label %if.end162
     87 
     88 if.end162:                                        ; preds = %if.end136
     89   br i1 undef, label %return, label %if.end189
     90 
     91 if.end189:                                        ; preds = %if.end162
     92   br i1 undef, label %return, label %if.end216
     93 
     94 if.end216:                                        ; preds = %if.end189
     95   br i1 undef, label %if.then218, label %if.end225
     96 
     97 if.then218:                                       ; preds = %if.end216
     98   br label %if.end225
     99 
    100 if.end225:                                        ; preds = %if.then218, %if.end216
    101   br i1 undef, label %return, label %if.end248
    102 
    103 if.end248:                                        ; preds = %if.end225
    104   br i1 undef, label %return, label %if.end304
    105 
    106 if.end304:                                        ; preds = %if.end248
    107   %mul341 = fmul float undef, %add8.i2343
    108   %mul344 = fmul float undef, %add8.i2381
    109   %sub345 = fsub float %mul341, %mul344
    110   br i1 undef, label %return, label %if.end361
    111 
    112 if.end361:                                        ; preds = %if.end304
    113   %mul364 = fmul float %add8.i2381, %add8.i2381
    114   br i1 undef, label %if.then370, label %if.end395
    115 
    116 if.then370:                                       ; preds = %if.end361
    117   br i1 undef, label %if.then374, label %if.end395
    118 
    119 if.then374:                                       ; preds = %if.then370
    120   %cmp392 = fcmp olt float %sub345, 0.000000e+00
    121   br label %if.end395
    122 
    123 if.end395:                                        ; preds = %if.then374, %if.then370, %if.end361
    124   unreachable
    125 
    126 return:                                           ; preds = %if.end304, %if.end248, %if.end225, %if.end189, %if.end162, %if.end136, %if.end111, %if.end, %entry
    127   ret void
    128 }
    129