Chris Lattner | 34e9d17 | 2010-04-17 19:02:33 +0000 | [diff] [blame] | 1 | ; RUN: llc %s -o - |
| 2 | |
| 3 | ; PR6332 |
Chris Lattner | 1afcace | 2011-07-09 17:41:24 +0000 | [diff] [blame] | 4 | %struct.AVCodecTag = type {} |
Chris Lattner | 34e9d17 | 2010-04-17 19:02:33 +0000 | [diff] [blame] | 5 | @ff_codec_bmp_tags = external global [0 x %struct.AVCodecTag] |
| 6 | @tags = global [1 x %struct.AVCodecTag*] [%struct.AVCodecTag* getelementptr |
| 7 | inbounds ([0 x %struct.AVCodecTag]* @ff_codec_bmp_tags, i32 0, i32 0)] |
| 8 | |
Chris Lattner | 435b4d2 | 2011-01-18 20:53:04 +0000 | [diff] [blame] | 9 | |
| 10 | ; rdar://8878965 |
| 11 | |
| 12 | %struct.CAMERA = type { [3 x double], [3 x double], [3 x double], [3 x double], [3 x double], [3 x double], double, double, i32, double, double, i32, double, i32* } |
| 13 | |
| 14 | define void @Parse_Camera(%struct.CAMERA** nocapture %Camera_Ptr) nounwind { |
| 15 | entry: |
| 16 | %.pre = load %struct.CAMERA** %Camera_Ptr, align 4 |
| 17 | %0 = getelementptr inbounds %struct.CAMERA* %.pre, i32 0, i32 1, i32 0 |
| 18 | %1 = getelementptr inbounds %struct.CAMERA* %.pre, i32 0, i32 1, i32 2 |
| 19 | br label %bb32 |
| 20 | |
| 21 | bb32: ; preds = %bb6 |
| 22 | %2 = load double* %0, align 4 |
| 23 | %3 = load double* %1, align 4 |
| 24 | %4 = load double* %0, align 4 |
| 25 | call void @Parse_Vector(double* %0) nounwind |
Nuno Lopes | 23e75da | 2012-05-22 15:25:31 +0000 | [diff] [blame^] | 26 | %5 = call i32 @llvm.objectsize.i32(i8* undef, i1 false) |
Chris Lattner | 435b4d2 | 2011-01-18 20:53:04 +0000 | [diff] [blame] | 27 | %6 = icmp eq i32 %5, -1 |
| 28 | br i1 %6, label %bb34, label %bb33 |
| 29 | |
| 30 | bb33: ; preds = %bb32 |
| 31 | unreachable |
| 32 | |
| 33 | bb34: ; preds = %bb32 |
| 34 | unreachable |
| 35 | |
| 36 | } |
| 37 | |
| 38 | declare void @Parse_Vector(double*) |
Nuno Lopes | 23e75da | 2012-05-22 15:25:31 +0000 | [diff] [blame^] | 39 | declare i32 @llvm.objectsize.i32(i8*, i1) |
Chris Lattner | 435b4d2 | 2011-01-18 20:53:04 +0000 | [diff] [blame] | 40 | |
Chris Lattner | 0403b47 | 2011-04-09 07:05:44 +0000 | [diff] [blame] | 41 | |
| 42 | ; PR9578 |
| 43 | %struct.S0 = type { i32, i8, i32 } |
| 44 | |
| 45 | define void @func_82() nounwind optsize { |
| 46 | entry: |
| 47 | br label %for.body.i |
| 48 | |
| 49 | for.body.i: ; preds = %for.body.i, %entry |
| 50 | br i1 undef, label %func_74.exit.for.cond29.thread_crit_edge, label %for.body.i |
| 51 | |
| 52 | func_74.exit.for.cond29.thread_crit_edge: ; preds = %for.body.i |
| 53 | %f13576.pre = getelementptr inbounds %struct.S0* undef, i64 0, i32 1 |
| 54 | store i8 0, i8* %f13576.pre, align 4, !tbaa !0 |
| 55 | br label %lbl_468 |
| 56 | |
| 57 | lbl_468: ; preds = %lbl_468, %func_74.exit.for.cond29.thread_crit_edge |
| 58 | %f13577.ph = phi i8* [ %f13576.pre, %func_74.exit.for.cond29.thread_crit_edge ], [ %f135.pre, %lbl_468 ] |
| 59 | store i8 1, i8* %f13577.ph, align 1 |
| 60 | %f135.pre = getelementptr inbounds %struct.S0* undef, i64 0, i32 1 |
| 61 | br i1 undef, label %lbl_468, label %for.end74 |
| 62 | |
| 63 | for.end74: ; preds = %lbl_468 |
| 64 | ret void |
| 65 | } |
| 66 | |
| 67 | !0 = metadata !{metadata !"omnipotent char", metadata !1} |
| 68 | !1 = metadata !{metadata !"Simple C/C++ TBAA", null} |