brintos

brintos / llvm-project-archived public Read only

0
0
Text · 10.4 KiB · 291edbb Raw
207 lines · plain
1; NOTE: Assertions have been autogenerated by utils/update_test_checks.py2; RUN: opt < %s -passes=slp-vectorizer,dce -S -mtriple=x86_64-apple-macosx10.8.0 -mcpu=corei7 | FileCheck %s3 4target 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"5target triple = "x86_64-apple-macosx10.8.0"6 7%"struct.btTypedConstraint::btConstraintInfo1.17.157.357.417.477.960" = type { i32, i32 }8 9define void @_ZN23btGeneric6DofConstraint8getInfo1EPN17btTypedConstraint17btConstraintInfo1E(ptr nocapture %info, i1 %arg) {10; CHECK-LABEL: @_ZN23btGeneric6DofConstraint8getInfo1EPN17btTypedConstraint17btConstraintInfo1E(11; CHECK-NEXT:  entry:12; CHECK-NEXT:    br i1 %arg, label [[IF_ELSE:%.*]], label [[IF_THEN:%.*]]13; CHECK:       if.then:14; CHECK-NEXT:    ret void15; CHECK:       if.else:16; CHECK-NEXT:    [[NUB5:%.*]] = getelementptr inbounds %"struct.btTypedConstraint::btConstraintInfo1.17.157.357.417.477.960", ptr [[INFO:%.*]], i64 0, i32 117; CHECK-NEXT:    br i1 %arg, label [[LAND_LHS_TRUE_I_1:%.*]], label [[IF_THEN7_1:%.*]]18; CHECK:       land.lhs.true.i.1:19; CHECK-NEXT:    br i1 %arg, label [[FOR_INC_1:%.*]], label [[IF_THEN7_1]]20; CHECK:       if.then7.1:21; CHECK-NEXT:    store <2 x i32> <i32 1, i32 5>, ptr [[INFO]], align 422; CHECK-NEXT:    br label [[FOR_INC_1]]23; CHECK:       for.inc.1:24; CHECK-NEXT:    [[TMP0:%.*]] = phi i32 [ 5, [[IF_THEN7_1]] ], [ 6, [[LAND_LHS_TRUE_I_1]] ]25; CHECK-NEXT:    [[TMP1:%.*]] = phi i32 [ 1, [[IF_THEN7_1]] ], [ 0, [[LAND_LHS_TRUE_I_1]] ]26; CHECK-NEXT:    [[INC_2:%.*]] = add nsw i32 [[TMP1]], 127; CHECK-NEXT:    store i32 [[INC_2]], ptr [[INFO]], align 428; CHECK-NEXT:    [[DEC_2:%.*]] = add nsw i32 [[TMP0]], -129; CHECK-NEXT:    store i32 [[DEC_2]], ptr [[NUB5]], align 430; CHECK-NEXT:    unreachable31;32entry:33  br i1 %arg, label %if.else, label %if.then34 35if.then:                                          ; preds = %entry36  ret void37 38if.else:                                          ; preds = %entry39  %nub5 = getelementptr inbounds %"struct.btTypedConstraint::btConstraintInfo1.17.157.357.417.477.960", ptr %info, i64 0, i32 140  br i1 %arg, label %land.lhs.true.i.1, label %if.then7.141 42land.lhs.true.i.1:                                ; preds = %if.else43  br i1 %arg, label %for.inc.1, label %if.then7.144 45if.then7.1:                                       ; preds = %land.lhs.true.i.1, %if.else46  %inc.1 = add nsw i32 0, 147  store i32 %inc.1, ptr %info, align 448  %dec.1 = add nsw i32 6, -149  store i32 %dec.1, ptr %nub5, align 450  br label %for.inc.151 52for.inc.1:                                        ; preds = %if.then7.1, %land.lhs.true.i.153  %0 = phi i32 [ %dec.1, %if.then7.1 ], [ 6, %land.lhs.true.i.1 ]54  %1 = phi i32 [ %inc.1, %if.then7.1 ], [ 0, %land.lhs.true.i.1 ]55  %inc.2 = add nsw i32 %1, 156  store i32 %inc.2, ptr %info, align 457  %dec.2 = add nsw i32 %0, -158  store i32 %dec.2, ptr %nub5, align 459  unreachable60}61 62%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] }63%class.btVector3.5.30.65.90.115.140.175.185.260.280.330 = type { [4 x float] }64%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 }65 66define void @_ZN30GIM_TRIANGLE_CALCULATION_CACHE18triangle_collisionERK9btVector3S2_S2_fS2_S2_S2_fR25GIM_TRIANGLE_CONTACT_DATA(ptr %this, i1 %arg) {67; CHECK-LABEL: @_ZN30GIM_TRIANGLE_CALCULATION_CACHE18triangle_collisionERK9btVector3S2_S2_fS2_S2_S2_fR25GIM_TRIANGLE_CONTACT_DATA(68; CHECK-NEXT:  entry:69; CHECK-NEXT:    [[ARRAYIDX26:%.*]] = getelementptr inbounds [[CLASS_GIM_TRIANGLE_CALCULATION_CACHE_9_34_69_94_119_144_179_189_264_284_332:%.*]], ptr [[THIS:%.*]], i64 0, i32 2, i64 0, i32 0, i64 170; CHECK-NEXT:    [[ARRAYIDX36:%.*]] = getelementptr inbounds [[CLASS_GIM_TRIANGLE_CALCULATION_CACHE_9_34_69_94_119_144_179_189_264_284_332]], ptr [[THIS]], i64 0, i32 2, i64 0, i32 0, i64 271; CHECK-NEXT:    [[TMP0:%.*]] = load float, ptr [[ARRAYIDX36]], align 472; CHECK-NEXT:    [[TMP1:%.*]] = insertelement <2 x float> <float undef, float poison>, float [[TMP0]], i32 173; CHECK-NEXT:    [[TMP2:%.*]] = fadd <2 x float> [[TMP1]], undef74; CHECK-NEXT:    [[TMP3:%.*]] = fsub <2 x float> [[TMP2]], undef75; CHECK-NEXT:    [[TMP4:%.*]] = extractelement <2 x float> [[TMP3]], i32 076; CHECK-NEXT:    store float [[TMP4]], ptr undef, align 477; CHECK-NEXT:    [[TMP5:%.*]] = fsub <2 x float> [[TMP2]], [[TMP3]]78; CHECK-NEXT:    store <2 x float> [[TMP5]], ptr [[ARRAYIDX26]], align 479; CHECK-NEXT:    br i1 %arg, label [[IF_ELSE1609:%.*]], label [[IF_THEN1595:%.*]]80; CHECK:       if.then1595:81; CHECK-NEXT:    br i1 %arg, label [[RETURN:%.*]], label [[FOR_BODY_LR_PH_I_I1702:%.*]]82; CHECK:       for.body.lr.ph.i.i1702:83; CHECK-NEXT:    unreachable84; CHECK:       if.else1609:85; CHECK-NEXT:    unreachable86; CHECK:       return:87; CHECK-NEXT:    ret void88;89entry:90  %arrayidx26 = getelementptr inbounds %class.GIM_TRIANGLE_CALCULATION_CACHE.9.34.69.94.119.144.179.189.264.284.332, ptr %this, i64 0, i32 2, i64 0, i32 0, i64 191  %arrayidx36 = getelementptr inbounds %class.GIM_TRIANGLE_CALCULATION_CACHE.9.34.69.94.119.144.179.189.264.284.332, ptr %this, i64 0, i32 2, i64 0, i32 0, i64 292  %0 = load float, ptr %arrayidx36, align 493  %add587 = fadd float undef, undef94  %sub600 = fsub float %add587, undef95  store float %sub600, ptr undef, align 496  %sub613 = fsub float %add587, %sub60097  store float %sub613, ptr %arrayidx26, align 498  %add626 = fadd float %0, undef99  %sub639 = fsub float %add626, undef100  %sub652 = fsub float %add626, %sub639101  store float %sub652, ptr %arrayidx36, align 4102  br i1 %arg, label %if.else1609, label %if.then1595103 104if.then1595:                                      ; preds = %entry105  br i1 %arg, label %return, label %for.body.lr.ph.i.i1702106 107for.body.lr.ph.i.i1702:                           ; preds = %if.then1595108  unreachable109 110if.else1609:                                      ; preds = %entry111  unreachable112 113return:                                           ; preds = %if.then1595114  ret void115}116 117define void @_Z8dBoxBox2RK9btVector3PKfS1_S1_S3_S1_RS_PfPiiP12dContactGeomiRN36btDiscreteCollisionDetectorInterface6ResultE(i1 %arg) {118; CHECK-LABEL: @_Z8dBoxBox2RK9btVector3PKfS1_S1_S3_S1_RS_PfPiiP12dContactGeomiRN36btDiscreteCollisionDetectorInterface6ResultE(119; CHECK-NEXT:  entry:120; CHECK-NEXT:    br i1 %arg, label [[RETURN:%.*]], label [[IF_END:%.*]]121; CHECK:       if.end:122; CHECK-NEXT:    br i1 %arg, label [[RETURN]], label [[IF_END111:%.*]]123; CHECK:       if.end111:124; CHECK-NEXT:    br i1 %arg, label [[RETURN]], label [[IF_END136:%.*]]125; CHECK:       if.end136:126; CHECK-NEXT:    br i1 %arg, label [[RETURN]], label [[IF_END162:%.*]]127; CHECK:       if.end162:128; CHECK-NEXT:    br i1 %arg, label [[RETURN]], label [[IF_END189:%.*]]129; CHECK:       if.end189:130; CHECK-NEXT:    br i1 %arg, label [[RETURN]], label [[IF_END216:%.*]]131; CHECK:       if.end216:132; CHECK-NEXT:    br i1 %arg, label [[IF_THEN218:%.*]], label [[IF_END225:%.*]]133; CHECK:       if.then218:134; CHECK-NEXT:    br label [[IF_END225]]135; CHECK:       if.end225:136; CHECK-NEXT:    br i1 %arg, label [[RETURN]], label [[IF_END248:%.*]]137; CHECK:       if.end248:138; CHECK-NEXT:    br i1 %arg, label [[RETURN]], label [[IF_END304:%.*]]139; CHECK:       if.end304:140; CHECK-NEXT:    br i1 %arg, label [[RETURN]], label [[IF_END361:%.*]]141; CHECK:       if.end361:142; CHECK-NEXT:    br i1 %arg, label [[IF_THEN370:%.*]], label [[IF_END395:%.*]]143; CHECK:       if.then370:144; CHECK-NEXT:    br i1 %arg, label [[IF_THEN374:%.*]], label [[IF_END395]]145; CHECK:       if.then374:146; CHECK-NEXT:    br label [[IF_END395]]147; CHECK:       if.end395:148; CHECK-NEXT:    unreachable149; CHECK:       return:150; CHECK-NEXT:    ret void151;152entry:153  %add8.i2343 = fadd float undef, undef154  %add8.i2381 = fadd float undef, undef155  br i1 %arg, label %return, label %if.end156 157if.end:                                           ; preds = %entry158  br i1 %arg, label %return, label %if.end111159 160if.end111:                                        ; preds = %if.end161  br i1 %arg, label %return, label %if.end136162 163if.end136:                                        ; preds = %if.end111164  br i1 %arg, label %return, label %if.end162165 166if.end162:                                        ; preds = %if.end136167  br i1 %arg, label %return, label %if.end189168 169if.end189:                                        ; preds = %if.end162170  br i1 %arg, label %return, label %if.end216171 172if.end216:                                        ; preds = %if.end189173  br i1 %arg, label %if.then218, label %if.end225174 175if.then218:                                       ; preds = %if.end216176  br label %if.end225177 178if.end225:                                        ; preds = %if.then218, %if.end216179  br i1 %arg, label %return, label %if.end248180 181if.end248:                                        ; preds = %if.end225182  br i1 %arg, label %return, label %if.end304183 184if.end304:                                        ; preds = %if.end248185  %mul341 = fmul float undef, %add8.i2343186  %mul344 = fmul float undef, %add8.i2381187  %sub345 = fsub float %mul341, %mul344188  br i1 %arg, label %return, label %if.end361189 190if.end361:                                        ; preds = %if.end304191  %mul364 = fmul float %add8.i2381, %add8.i2381192  br i1 %arg, label %if.then370, label %if.end395193 194if.then370:                                       ; preds = %if.end361195  br i1 %arg, label %if.then374, label %if.end395196 197if.then374:                                       ; preds = %if.then370198  %cmp392 = fcmp olt float %sub345, 0.000000e+00199  br label %if.end395200 201if.end395:                                        ; preds = %if.then374, %if.then370, %if.end361202  unreachable203 204return:                                           ; preds = %if.end304, %if.end248, %if.end225, %if.end189, %if.end162, %if.end136, %if.end111, %if.end, %entry205  ret void206}207