From 4428e90efa31df7b288b170330dc7ec941ea72f8 Mon Sep 17 00:00:00 2001 From: Paul Robinson Date: Tue, 6 Mar 2018 22:37:45 +0000 Subject: Reapply "[DWARFv5] Emit file 0 to the line table." Fixes the bug found by asan. Also XFAIL the new test for Darwin, which is stuck on DWARF v2, and fix up other tests so they stop failing on Windows. llvm-svn: 326839 --- llvm/test/CodeGen/Generic/dwarf-source.ll | 39 ++++++++++++++----------------- 1 file changed, 18 insertions(+), 21 deletions(-) (limited to 'llvm/test/CodeGen/Generic/dwarf-source.ll') diff --git a/llvm/test/CodeGen/Generic/dwarf-source.ll b/llvm/test/CodeGen/Generic/dwarf-source.ll index 9c34fc5285b..e59193d0d8a 100644 --- a/llvm/test/CodeGen/Generic/dwarf-source.ll +++ b/llvm/test/CodeGen/Generic/dwarf-source.ll @@ -8,30 +8,27 @@ ; RUN: %llc_dwarf -dwarf-version 4 -filetype=asm -o - %s | FileCheck %s --check-prefix=ASM ; RUN: %llc_dwarf -dwarf-version 5 -filetype=asm -o - %s | FileCheck %s --check-prefix=ASM ; RUN: %llc_dwarf -dwarf-version 4 -filetype=obj -o %t4.o %s -; RUN: llvm-dwarfdump -debug-line %t4.o | FileCheck %s --check-prefix=OBJ-4 +; RUN: llvm-dwarfdump -debug-line %t4.o | FileCheck %s --check-prefixes=OBJ,OBJ-4 ; RUN: %llc_dwarf -dwarf-version 5 -filetype=obj -o %t5.o %s -; RUN: llvm-dwarfdump -debug-line %t5.o | FileCheck %s --check-prefix=OBJ-5 +; RUN: llvm-dwarfdump -debug-line %t5.o | FileCheck %s --check-prefixes=OBJ,OBJ-5 -; FIXME: Need to convey the source for the primary source file. -; ASM: .file 1 ".{{/|\\\\}}t1.h" source "11111111111111111111111111111111" -; ASM: .file 2 ".{{/|\\\\}}t2.h" source "22222222222222222222222222222222" - -; OBJ-4: file_names[ 1]: -; OBJ-4-NEXT: name: "t1.h" -; OBJ-4-NEXT: dir_index: 1 -; OBJ-4-NOT: 11111111111111111111111111111111 -; OBJ-4: file_names[ 2]: -; OBJ-4-NEXT: name: "t2.h" -; OBJ-4-NEXT: dir_index: 1 -; OBJ-4-NOT: 22222222222222222222222222222222 +; ASM: .file 0 "[[COMPDIR:.*]]{{[/\\]}}t.c" source "00000000000000000000000000000000" +; ASM: .file 1 "[[COMPDIR]]{{[/\\]}}t1.h" source "11111111111111111111111111111111" +; ASM: .file 2 "[[COMPDIR]]{{[/\\]}}t2.h" source "22222222222222222222222222222222" ; OBJ-5: file_names[ 0]: -; OBJ-5-NEXT: name: "t1.h" -; OBJ-5-NEXT: dir_index: 1 +; OBJ-5-NEXT: name: "t.c" +; OBJ-5-NEXT: dir_index: 0 +; OBJ-5-NEXT: source: "00000000000000000000000000000000" +; OBJ: file_names[ 1]: +; OBJ-NEXT: name: "t1.h" +; OBJ-NEXT: dir_index: 0 +; OBJ-4-NOT: 11111111111111111111111111111111 ; OBJ-5-NEXT: source: "11111111111111111111111111111111" -; OBJ-5: file_names[ 1]: -; OBJ-5-NEXT: name: "t2.h" -; OBJ-5-NEXT: dir_index: 1 +; OBJ: file_names[ 2]: +; OBJ-NEXT: name: "t2.h" +; OBJ-NEXT: dir_index: 0 +; OBJ-4-NOT: 22222222222222222222222222222222 ; OBJ-5-NEXT: source: "22222222222222222222222222222222" ; ModuleID = 't.c' @@ -52,9 +49,9 @@ source_filename = "t.c" !5 = !{!0, !6} !6 = !DIGlobalVariableExpression(var: !7, expr: !DIExpression()) !7 = distinct !DIGlobalVariable(name: "t2", scope: !2, file: !8, line: 1, type: !9, isLocal: false, isDefinition: true) -!8 = !DIFile(filename: "./t2.h", directory: "/test", source: "22222222222222222222222222222222") +!8 = !DIFile(filename: "t2.h", directory: "/test", source: "22222222222222222222222222222222") !9 = !DIBasicType(name: "int", size: 32, encoding: DW_ATE_signed) -!10 = !DIFile(filename: "./t1.h", directory: "/test", source: "11111111111111111111111111111111") +!10 = !DIFile(filename: "t1.h", directory: "/test", source: "11111111111111111111111111111111") !11 = !{i32 2, !"Dwarf Version", i32 4} !12 = !{i32 2, !"Debug Info Version", i32 3} !13 = !{i32 1, !"wchar_size", i32 4} -- cgit v1.2.3