X-Git-Url: http://plrg.eecs.uci.edu/git/?a=blobdiff_plain;f=test%2FCodeGen%2FX86%2F2010-05-28-Crash.ll;h=7967d45c2ee86ed1af3cb6d3edfef93151533fd2;hb=f2640be5dfc41d11ca28ad60ab5e45bf4db7e36e;hp=7adacf5e017696649ddd77167d2b3a708e2bf3fa;hpb=37ac8d3622407cf5fd974407c5b8b301a2fdfcfd;p=oota-llvm.git diff --git a/test/CodeGen/X86/2010-05-28-Crash.ll b/test/CodeGen/X86/2010-05-28-Crash.ll index 7adacf5e017..7967d45c2ee 100644 --- a/test/CodeGen/X86/2010-05-28-Crash.ll +++ b/test/CodeGen/X86/2010-05-28-Crash.ll @@ -2,10 +2,10 @@ ; RUN: llc -mtriple=x86_64-apple-darwin -regalloc=basic < %s | FileCheck %s ; Test to check separate label for inlined function argument. -define i32 @foo(i32 %y) nounwind optsize ssp { +define i32 @foo(i32 %y) nounwind optsize ssp !dbg !1 { entry: - tail call void @llvm.dbg.value(metadata i32 %y, i64 0, metadata !0, metadata !{!"0x102"}) - %0 = tail call i32 (...)* @zoo(i32 %y) nounwind, !dbg !9 ; [#uses=1] + tail call void @llvm.dbg.value(metadata i32 %y, i64 0, metadata !0, metadata !DIExpression()), !dbg !DILocation(scope: !1) + %0 = tail call i32 (...) @zoo(i32 %y) nounwind, !dbg !9 ; [#uses=1] ret i32 %0, !dbg !9 } @@ -13,11 +13,11 @@ declare i32 @zoo(...) declare void @llvm.dbg.value(metadata, i64, metadata, metadata) nounwind readnone -define i32 @bar(i32 %x) nounwind optsize ssp { +define i32 @bar(i32 %x) nounwind optsize ssp !dbg !8 { entry: - tail call void @llvm.dbg.value(metadata i32 %x, i64 0, metadata !7, metadata !{!"0x102"}) - tail call void @llvm.dbg.value(metadata i32 1, i64 0, metadata !0, metadata !{!"0x102"}) nounwind - %0 = tail call i32 (...)* @zoo(i32 1) nounwind, !dbg !12 ; [#uses=1] + tail call void @llvm.dbg.value(metadata i32 %x, i64 0, metadata !7, metadata !DIExpression()), !dbg !DILocation(scope: !8) + tail call void @llvm.dbg.value(metadata i32 1, i64 0, metadata !0, metadata !DIExpression()) nounwind, !dbg !DILocation(scope: !1, inlinedAt: !DILocation(scope: !8)) + %0 = tail call i32 (...) @zoo(i32 1) nounwind, !dbg !12 ; [#uses=1] %1 = add nsw i32 %0, %x, !dbg !13 ; [#uses=1] ret i32 %1, !dbg !13 } @@ -25,28 +25,28 @@ entry: !llvm.dbg.cu = !{!3} !llvm.module.flags = !{!20} -!0 = !{!"0x101\00y\002\000", !1, !2, !6} ; [ DW_TAG_arg_variable ] -!1 = !{!"0x2e\00foo\00foo\00foo\002\000\001\000\006\000\001\002", !18, !2, !4, null, i32 (i32)* @foo, null, null, !15} ; [ DW_TAG_subprogram ] -!2 = !{!"0x29", !18} ; [ DW_TAG_file_type ] -!3 = !{!"0x11\001\004.2.1 (Based on Apple Inc. build 5658) (LLVM build)\001\00\000\00\001", !18, !19, !19, !17, null, null} ; [ DW_TAG_compile_unit ] -!4 = !{!"0x15\00\000\000\000\000\000\000", !18, !2, null, !5, null, null, null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset 0] [from ] +!0 = !DILocalVariable(name: "y", line: 2, arg: 1, scope: !1, file: !2, type: !6) +!1 = distinct !DISubprogram(name: "foo", linkageName: "foo", line: 2, isLocal: false, isDefinition: true, virtualIndex: 6, isOptimized: true, scopeLine: 2, file: !18, scope: !2, type: !4, variables: !15) +!2 = !DIFile(filename: "f.c", directory: "/tmp") +!3 = distinct !DICompileUnit(language: DW_LANG_C89, producer: "4.2.1 (Based on Apple Inc. build 5658) (LLVM build)", isOptimized: true, emissionKind: 1, file: !18, enums: !19, retainedTypes: !19, subprograms: !17, imports: null) +!4 = !DISubroutineType(types: !5) !5 = !{!6, !6} -!6 = !{!"0x24\00int\000\0032\0032\000\000\005", !18, !2} ; [ DW_TAG_base_type ] -!7 = !{!"0x101\00x\006\000", !8, !2, !6} ; [ DW_TAG_arg_variable ] -!8 = !{!"0x2e\00bar\00bar\00bar\006\000\001\000\006\000\001\006", !18, !2, !4, null, i32 (i32)* @bar, null, null, !16} ; [ DW_TAG_subprogram ] -!9 = !MDLocation(line: 3, scope: !10) -!10 = !{!"0xb\002\000\000", !18, !1} ; [ DW_TAG_lexical_block ] +!6 = !DIBasicType(tag: DW_TAG_base_type, name: "int", size: 32, align: 32, encoding: DW_ATE_signed) +!7 = !DILocalVariable(name: "x", line: 6, arg: 1, scope: !8, file: !2, type: !6) +!8 = distinct !DISubprogram(name: "bar", linkageName: "bar", line: 6, isLocal: false, isDefinition: true, virtualIndex: 6, isOptimized: true, scopeLine: 6, file: !18, scope: !2, type: !4, variables: !16) +!9 = !DILocation(line: 3, scope: !10) +!10 = distinct !DILexicalBlock(line: 2, column: 0, file: !18, scope: !1) !11 = !{i32 1} -!12 = !MDLocation(line: 3, scope: !10, inlinedAt: !13) -!13 = !MDLocation(line: 7, scope: !14) -!14 = !{!"0xb\006\000\000", !18, !8} ; [ DW_TAG_lexical_block ] +!12 = !DILocation(line: 3, scope: !10, inlinedAt: !13) +!13 = !DILocation(line: 7, scope: !14) +!14 = distinct !DILexicalBlock(line: 6, column: 0, file: !18, scope: !8) !15 = !{!0} !16 = !{!7} !17 = !{!1, !8} -!18 = !{!"f.c", !"/tmp"} -!19 = !{i32 0} +!18 = !DIFile(filename: "f.c", directory: "/tmp") +!19 = !{} -;CHECK: DEBUG_VALUE: bar:x <- E +;CHECK: DEBUG_VALUE: bar:x <- %E ;CHECK: Ltmp ;CHECK: DEBUG_VALUE: foo:y <- 1{{$}} -!20 = !{i32 1, !"Debug Info Version", i32 2} +!20 = !{i32 1, !"Debug Info Version", i32 3}