DI: Require subprogram definitions to be distinct
[oota-llvm.git] / test / DebugInfo / 2010-10-01-crash.ll
1 ; RUN: llc -O0 %s -o /dev/null
2
3 define void @CGRectStandardize(i32* sret %agg.result, i32* byval %rect) nounwind ssp {
4 entry:
5   call void @llvm.dbg.declare(metadata i32* %rect, metadata !23, metadata !DIExpression()), !dbg !24
6   ret void
7 }
8
9 declare void @llvm.dbg.declare(metadata, metadata, metadata) nounwind readnone
10
11 declare void @llvm.memcpy.p0i8.p0i8.i32(i8* nocapture, i8* nocapture, i32, i32, i1) nounwind
12
13
14 !llvm.dbg.cu = !{!2}
15 !llvm.module.flags = !{!27}
16 !0 = distinct !DISubprogram(name: "CGRectStandardize", linkageName: "CGRectStandardize", line: 54, isLocal: false, isDefinition: true, virtualIndex: 6, isOptimized: false, file: !1, scope: null, function: void (i32*, i32*)* @CGRectStandardize)
17 !1 = !DIFile(filename: "GSFusedSilica.m", directory: "/Volumes/Data/Users/sabre/Desktop")
18 !2 = distinct !DICompileUnit(language: DW_LANG_ObjC, producer: "clang version 2.9 (trunk 115292)", isOptimized: true, runtimeVersion: 1, emissionKind: 0, file: !25, enums: !26, retainedTypes: !26)
19 !5 = !DIDerivedType(tag: DW_TAG_typedef, name: "CGRect", line: 49, file: !25, baseType: null)
20 !23 = !DILocalVariable(name: "rect", line: 53, arg: 2, scope: !0, file: !1, type: !5)
21 !24 = !DILocation(line: 53, column: 33, scope: !0)
22 !25 = !DIFile(filename: "GSFusedSilica.m", directory: "/Volumes/Data/Users/sabre/Desktop")
23 !26 = !{}
24 !27 = !{i32 1, !"Debug Info Version", i32 3}